diff --git a/.gitmodules b/.gitmodules
index 7656774ae89..940c650d3a4 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -5,7 +5,7 @@
[submodule "external/mono"]
path = external/mono
url = https://github.com/mono/mono.git
- branch = 2017-12
+ branch = 2018-02
[submodule "external/mxe"]
path = external/mxe
url = https://github.com/xamarin/mxe.git
diff --git a/Configuration.props b/Configuration.props
index 4663af89922..1eb8737c1c9 100644
--- a/Configuration.props
+++ b/Configuration.props
@@ -62,10 +62,10 @@
$(MSBuildThisFileDirectory)external\Java.Interop
$(MSBuildThisFileDirectory)external\llvm
$(MSBuildThisFileDirectory)external\mono
- 5.10.0
- 5.11.0
+ 5.12.0
+ 5.13.0
True
- $(MonoRequiredMinimumVersion).22
+ $(MonoRequiredMinimumVersion).0
$(MSBuildThisFileDirectory)external\mono\external\linker
$(MSBuildThisFileDirectory)external\opentk
$(MSBuildThisFileDirectory)external\libzip
diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems
index a3046d44919..ab1ed36ad08 100644
--- a/build-tools/dependencies/dependencies.projitems
+++ b/build-tools/dependencies/dependencies.projitems
@@ -1,7 +1,7 @@
- <_DarwinMonoFramework>MonoFramework-MDK-5.10.0.47.macos10.xamarin.universal.pkg
+ <_DarwinMonoFramework>MonoFramework-MDK-5.12.0.210.macos10.xamarin.universal.pkg
<_AptGetInstall>apt-get -f -u install
@@ -59,7 +59,7 @@
$(MonoRequiredMaximumVersion)
$(MonoRequiredDarwinMinimumVersion)
$(MSBuildThisFileDirectory)..\scripts\mono-version
- https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2017-12/41/$(_DarwinMonoFramework)
+ https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-02/177/9bbc930d620487446f537e729f018eb965523fcd/$(_DarwinMonoFramework)
installer -pkg "$(AndroidToolchainCacheDirectory)\$(_DarwinMonoFramework)" -target /
diff --git a/external/mono b/external/mono
index 8eb8f7d5e74..638a7ed3b0e 160000
--- a/external/mono
+++ b/external/mono
@@ -1 +1 @@
-Subproject commit 8eb8f7d5e74787049316fef1f4d09f2e9e2d6968
+Subproject commit 638a7ed3b0efa8d526859d89f0eba842f575ce52
diff --git a/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs b/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs
index 352cda31492..89b7b408171 100644
--- a/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs
+++ b/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs
@@ -43,7 +43,7 @@ static LinkContext CreateLinkContext (LinkerOptions options, Pipeline pipeline,
if (prepareDependenciesDump != null)
prepareDependenciesDump.Invoke (context.Annotations, null);
}
- context.LogInternalExceptions = true;
+ context.LogMessages = true;
context.Logger = logger;
context.CoreAction = AssemblyAction.Link;
context.UserAction = AssemblyAction.Link;
diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj
index 7cc4d7018ed..6eadfa2e28b 100644
--- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj
+++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj
@@ -324,103 +324,103 @@
- Linker\Mono.Linker\Annotations.cs
+ Linker\Linker\Annotations.cs
- Linker\Mono.Linker\AssemblyAction.cs
+ Linker\Linker\AssemblyAction.cs
- Linker\Mono.Linker\AssemblyResolver.cs
+ Linker\Linker\AssemblyResolver.cs
- Linker\Mono.Linker\I18nAssemblies.cs
+ Linker\Linker\I18nAssemblies.cs
- Linker\Mono.Linker\IXApiVisitor.cs
+ Linker\Linker\IXApiVisitor.cs
- Linker\Mono.Linker\LinkContext.cs
+ Linker\Linker\LinkContext.cs
- Linker\Mono.Linker\MethodAction.cs
+ Linker\Linker\MethodAction.cs
- Linker\Mono.Linker\MethodReferenceExtensions.cs
+ Linker\Linker\MethodReferenceExtensions.cs
- Linker\Mono.Linker\Pipeline.cs
+ Linker\Linker\Pipeline.cs
- Linker\Mono.Linker\TypePreserve.cs
+ Linker\Linker\TypePreserve.cs
- Linker\Mono.Linker\TypeReferenceExtensions.cs
+ Linker\Linker\TypeReferenceExtensions.cs
- Linker\Mono.Linker\XApiReader.cs
+ Linker\Linker\XApiReader.cs
- Linker\Mono.Linker.Steps\BlacklistStep.cs
+ Linker\Linker.Steps\BlacklistStep.cs
- Linker\Mono.Linker.Steps\BaseStep.cs
+ Linker\Linker.Steps\BaseStep.cs
- Linker\Mono.Linker.Steps\CleanStep.cs
+ Linker\Linker.Steps\CleanStep.cs
- Linker\Mono.Linker.Steps\IStep.cs
+ Linker\Linker.Steps\IStep.cs
- Linker\Mono.Linker.Steps\LoadI18nAssemblies.cs
+ Linker\Linker.Steps\LoadI18nAssemblies.cs
- Linker\Mono.Linker.Steps\LoadReferencesStep.cs
+ Linker\Linker.Steps\LoadReferencesStep.cs
- Linker\Mono.Linker.Steps\OutputStep.cs
+ Linker\Linker.Steps\OutputStep.cs
- Linker\Mono.Linker.Steps\RegenerateGuidStep.cs
+ Linker\Linker.Steps\RegenerateGuidStep.cs
- Linker\Mono.Linker.Steps\ResolveFromAssemblyStep.cs
+ Linker\Linker.Steps\ResolveFromAssemblyStep.cs
- Linker\Mono.Linker.Steps\ResolveFromXApiStep.cs
+ Linker\Linker.Steps\ResolveFromXApiStep.cs
- Linker\Mono.Linker.Steps\ResolveFromXmlStep.cs
+ Linker\Linker.Steps\ResolveFromXmlStep.cs
- Linker\Mono.Linker.Steps\ResolveStep.cs
+ Linker\Linker.Steps\ResolveStep.cs
- Linker\Mono.Linker.Steps\TypeMapStep.cs
+ Linker\Linker.Steps\TypeMapStep.cs
- Linker\Mono.Linker.Steps\SweepStep.cs
+ Linker\Linker.Steps\SweepStep.cs
- Linker\Mono.Linker.Steps\MarkStep.cs
+ Linker\Linker.Stepsq\MarkStep.cs
- Linker\Mono.Linker\LoadException.cs
+ Linker\Linker\LoadException.cs
- Linker\Mono.Linker\MarkException.cs
+ Linker\Linker\MarkException.cs
- Linker\Mono.Linker\ConsoleLogger.cs
+ Linker\Linker\ConsoleLogger.cs
- Linker\Mono.Linker\ILogger.cs
-
-
- Linker\Mono.Linker\MarkingHelpers.cs
+ Linker\Linker\ILogger.cs
- Linker\Mono.Linker\Tracer.cs
+ Linker\Linker\Tracer.cs
+
+
+ Linker\Linker\MarkingHelpers.cs
@@ -712,7 +712,7 @@
-
+
diff --git a/src/mono-runtimes/mono-runtimes.projitems b/src/mono-runtimes/mono-runtimes.projitems
index 09ee3163909..9cd0418a1cc 100644
--- a/src/mono-runtimes/mono-runtimes.projitems
+++ b/src/mono-runtimes/mono-runtimes.projitems
@@ -15,7 +15,7 @@
<_MonoRuntime Include="armeabi" Condition=" '$(_ArmeabiRuntimeConfigure)' == 'true' ">
- $(_ArmStrip)
+ $(AndroidToolchainDirectory)\toolchains\armeabi-clang\bin\arm-linux-androideabi-strip
libmonosgen-2.0
so
libmono-profiler-log
@@ -29,7 +29,7 @@
<_MonoRuntime Include="armeabi-v7a" Condition="$(AndroidSupportedTargetJitAbisForConditionalChecks.Contains (':armeabi-v7a:'))">
- $(_ArmStrip)
+ $(AndroidToolchainDirectory)\toolchains\armeabi-v7a-clang\bin\arm-linux-androideabi-strip
libmonosgen-2.0
so
libmono-profiler-log
@@ -46,7 +46,7 @@
<_MonoRuntime Include="arm64-v8a" Condition=" '$(_Arm64RuntimeConfigure)' == 'true' ">
- $(_Arm64Strip)
+ $(AndroidToolchainDirectory)\toolchains\arm64-v8a-clang\bin\aarch64-linux-android-strip
libmonosgen-2.0
so
libmono-profiler-log
@@ -63,7 +63,7 @@
<_MonoRuntime Include="x86" Condition=" '$(_X86RuntimeConfigure)' == 'true' ">
- $(_X86Strip)
+ $(AndroidToolchainDirectory)\toolchains\x86-clang\bin\i686-linux-android-strip
libmonosgen-2.0
so
libmono-btls-shared
@@ -80,7 +80,7 @@
<_MonoRuntime Include="x86_64" Condition=" '$(_X8664RuntimeConfigure)' == 'true' ">
- $(_X86_64Strip)
+ $(AndroidToolchainDirectory)\toolchains\x86_64-clang\bin\x86_64-linux-android-strip
libmonosgen-2.0
so
libmono-profiler-log
diff --git a/src/mono-runtimes/mono-runtimes.props b/src/mono-runtimes/mono-runtimes.props
index 4776551bf72..61ca9cdb823 100644
--- a/src/mono-runtimes/mono-runtimes.props
+++ b/src/mono-runtimes/mono-runtimes.props
@@ -73,18 +73,6 @@
-
- <_ArmStrip>$(AndroidToolchainDirectory)\toolchains\arm-linux-androideabi-clang\bin\arm-linux-androideabi-strip
-
-
- <_Arm64Strip>$(AndroidToolchainDirectory)\toolchains\aarch64-linux-android-clang\bin\aarch64-linux-android-strip
-
-
- <_X86Strip>$(AndroidToolchainDirectory)\toolchains\i686-linux-android-clang\bin\i686-linux-android-strip
-
-
- <_X86_64Strip>$(AndroidToolchainDirectory)\toolchains\x86_64-linux-android-clang\bin\x86_64-linux-android-strip
-
<_HostWin64CFlags>$(_HostWinCFlags)
diff --git a/src/mono-runtimes/mono-runtimes.targets b/src/mono-runtimes/mono-runtimes.targets
index 6b2f4bcfd8f..6321fc8b73b 100644
--- a/src/mono-runtimes/mono-runtimes.targets
+++ b/src/mono-runtimes/mono-runtimes.targets
@@ -110,7 +110,7 @@
/>
- <_MonoUtility Include="linkeranalyzer.exe" />
+ <_MonoUtility Include="illinkanalyzer.exe" />
<_MonoUtility Include="mono-symbolicate.exe" />
<_MonoUtility Include="mkbundle.exe" />
diff --git a/tools/scripts/illinkanalyzer b/tools/scripts/illinkanalyzer
index ad4934ff411..b84c7fb0f7a 100755
--- a/tools/scripts/illinkanalyzer
+++ b/tools/scripts/illinkanalyzer
@@ -3,4 +3,4 @@ BINDIR=`dirname "$0"`
MANDROID_DIR="$BINDIR/.."
unset MONO_PATH
-exec mono $MONO_OPTIONS "$MANDROID_DIR/linkeranalyzer.exe" "$@"
+exec mono $MONO_OPTIONS "$MANDROID_DIR/illinkanalyzer.exe" "$@"