diff --git a/Xamarin.Android.sln b/Xamarin.Android.sln index de4d20d7a6f..6b3c16e7815 100644 --- a/Xamarin.Android.sln +++ b/Xamarin.Android.sln @@ -81,8 +81,6 @@ Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|AnyCPU = Debug|AnyCPU Release|AnyCPU = Release|AnyCPU - XAIntegrationDebug|Any CPU = XAIntegrationDebug|Any CPU - XAIntegrationRelease|Any CPU = XAIntegrationRelease|Any CPU XAIntegrationDebug|AnyCPU = XAIntegrationDebug|AnyCPU XAIntegrationRelease|AnyCPU = XAIntegrationRelease|AnyCPU EndGlobalSection diff --git a/src/Mono.Android.Export/Mono.Android.Export.csproj b/src/Mono.Android.Export/Mono.Android.Export.csproj index c02368d4c27..3d34a232afd 100644 --- a/src/Mono.Android.Export/Mono.Android.Export.csproj +++ b/src/Mono.Android.Export/Mono.Android.Export.csproj @@ -36,15 +36,15 @@ $(OutputPath)..\v1.0\mscorlib.dll False - + $(OutputPath)..\v1.0\System.dll False - + $(OutputPath)..\v1.0\System.Core.dll False - + $(OutputPath)..\v1.0\System.Xml.dll False diff --git a/src/Mono.Android/Mono.Android.csproj b/src/Mono.Android/Mono.Android.csproj index 450fd1befbc..a6dc65ffc36 100644 --- a/src/Mono.Android/Mono.Android.csproj +++ b/src/Mono.Android/Mono.Android.csproj @@ -39,23 +39,23 @@ $(OutputPath)..\v1.0\mscorlib.dll False - + $(OutputPath)..\v1.0\System.dll False - + $(OutputPath)..\v1.0\System.Core.dll False - + $(OutputPath)..\v1.0\System.Net.Http.dll False - + $(OutputPath)..\v1.0\System.Runtime.Serialization.dll False - + $(OutputPath)..\v1.0\System.Xml.dll False diff --git a/src/Xamarin.Android.Tools.BootstrapTasks/Xamarin.Android.Tools.BootstrapTasks.csproj b/src/Xamarin.Android.Tools.BootstrapTasks/Xamarin.Android.Tools.BootstrapTasks.csproj index d5fbe87b4f1..01f024b2734 100644 --- a/src/Xamarin.Android.Tools.BootstrapTasks/Xamarin.Android.Tools.BootstrapTasks.csproj +++ b/src/Xamarin.Android.Tools.BootstrapTasks/Xamarin.Android.Tools.BootstrapTasks.csproj @@ -39,6 +39,7 @@ + diff --git a/src/Xamarin.Android.Tools.BootstrapTasks/Xamarin.Android.Tools.BootstrapTasks/ValueToItems.cs b/src/Xamarin.Android.Tools.BootstrapTasks/Xamarin.Android.Tools.BootstrapTasks/ValueToItems.cs new file mode 100644 index 00000000000..933ba18678f --- /dev/null +++ b/src/Xamarin.Android.Tools.BootstrapTasks/Xamarin.Android.Tools.BootstrapTasks/ValueToItems.cs @@ -0,0 +1,55 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; + +namespace Xamarin.Android.Tools.BootstrapTasks +{ + public class ValueToItems : Task + { + [Required] + public string Value { get; set; } + + public string Split { get; set; } + + public ITaskItem[] Exclude { get; set; } + + [Output] + public ITaskItem[] Items { get; set; } + + [Output] + public ITaskItem Location { get; set; } + + public override bool Execute () + { + Log.LogMessage (MessageImportance.Low, $"Task {nameof (ValueToItems)}"); + Log.LogMessage (MessageImportance.Low, $" {nameof (Value)}: {Value}"); + Log.LogMessage (MessageImportance.Low, $" {nameof (Split)}: '{Split}'"); + Log.LogMessage (MessageImportance.Low, $" {nameof (Exclude)}:'"); + foreach (var e in (Exclude ?? new ITaskItem[0])) { + Log.LogMessage (MessageImportance.Low, $" {e}"); + } + + var items = new List (); + var excludes = Exclude?.Select (e => e.ItemSpec)?.ToList (); + + var values = Value.Split (new [] { Split }, StringSplitOptions.RemoveEmptyEntries); + foreach (var v in values) { + if (excludes != null && excludes.Any (e => string.Equals (e, v, StringComparison.OrdinalIgnoreCase))) + continue; + items.Add (new TaskItem (v)); + } + + Items = items.ToArray (); + + Log.LogMessage (MessageImportance.Low, $" [Output] {nameof (Items)}:"); + foreach (var e in Items) { + Log.LogMessage (MessageImportance.Low, $" {e}"); + } + + return !Log.HasLoggedErrors; + } + } +} + diff --git a/src/monodroid/monodroid.projitems b/src/monodroid/monodroid.projitems index 9c7e0040e0c..7378aba4c2b 100644 --- a/src/monodroid/monodroid.projitems +++ b/src/monodroid/monodroid.projitems @@ -1,11 +1,5 @@ - - <_SupportedAbis>$(AndroidSupportedAbis.Replace(':', ';')) - - - <_MonoRuntime Include="$(_SupportedAbis)" Exclude="@(HostOSName)" /> - <_RequiredProgram Include="xxd" /> diff --git a/src/monodroid/monodroid.targets b/src/monodroid/monodroid.targets index 5e3a057f0ae..a66fd00aa24 100644 --- a/src/monodroid/monodroid.targets +++ b/src/monodroid/monodroid.targets @@ -1,5 +1,6 @@ + @@ -8,7 +9,16 @@ + + + + +