diff --git a/Xamarin.Android.sln b/Xamarin.Android.sln
index 8894b7957b9..5decb2b9bb5 100644
--- a/Xamarin.Android.sln
+++ b/Xamarin.Android.sln
@@ -51,11 +51,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Java.Interop.Tools.Cecil",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "monodroid", "src\monodroid\monodroid.csproj", "{53EE4C57-1C03-405A-8243-8DA539546C88}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Xamarin.Android.NUnitLite", "src\Xamarin.Android.NUnitLite\Xamarin.Android.NUnitLite.csproj", "{4D603AA3-3BFD-43C8-8050-0CD6C2601126}"
- ProjectSection(ProjectDependencies) = postProject
- {3F1F2F50-AF1A-4A5A-BEDB-193372F068D7} = {3F1F2F50-AF1A-4A5A-BEDB-193372F068D7}
- EndProjectSection
-EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{CAB438D8-B0F5-4AF0-BEBD-9E2ADBD7B483}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Xamarin.ProjectTools", "src\Xamarin.Android.Build.Tasks\Tests\Xamarin.ProjectTools\Xamarin.ProjectTools.csproj", "{2DD1EE75-6D8D-4653-A800-0A24367F7F38}"
@@ -228,10 +223,6 @@ Global
{53EE4C57-1C03-405A-8243-8DA539546C88}.Debug|AnyCPU.Build.0 = Debug|Any CPU
{53EE4C57-1C03-405A-8243-8DA539546C88}.Release|AnyCPU.ActiveCfg = Release|Any CPU
{53EE4C57-1C03-405A-8243-8DA539546C88}.Release|AnyCPU.Build.0 = Release|Any CPU
- {4D603AA3-3BFD-43C8-8050-0CD6C2601126}.Debug|AnyCPU.ActiveCfg = Debug|Any CPU
- {4D603AA3-3BFD-43C8-8050-0CD6C2601126}.Debug|AnyCPU.Build.0 = Debug|Any CPU
- {4D603AA3-3BFD-43C8-8050-0CD6C2601126}.Release|AnyCPU.ActiveCfg = Release|Any CPU
- {4D603AA3-3BFD-43C8-8050-0CD6C2601126}.Release|AnyCPU.Build.0 = Release|Any CPU
{2DD1EE75-6D8D-4653-A800-0A24367F7F38}.Debug|AnyCPU.ActiveCfg = Debug|Any CPU
{2DD1EE75-6D8D-4653-A800-0A24367F7F38}.Debug|AnyCPU.Build.0 = Debug|Any CPU
{2DD1EE75-6D8D-4653-A800-0A24367F7F38}.Release|AnyCPU.ActiveCfg = Release|Any CPU
@@ -429,7 +420,6 @@ Global
{64CC4E44-CE3A-4319-BF3F-6CF8BD513870} = {864062D3-A415-4A6F-9324-5820237BA058}
{D48EE8D0-0A0A-4493-AEF5-DAF5F8CF86AD} = {864062D3-A415-4A6F-9324-5820237BA058}
{53EE4C57-1C03-405A-8243-8DA539546C88} = {04E3E11E-B47D-4599-8AFC-50515A95E715}
- {4D603AA3-3BFD-43C8-8050-0CD6C2601126} = {04E3E11E-B47D-4599-8AFC-50515A95E715}
{2DD1EE75-6D8D-4653-A800-0A24367F7F38} = {CAB438D8-B0F5-4AF0-BEBD-9E2ADBD7B483}
{53E4ABF0-1085-45F9-B964-DCAE4B819998} = {CAB438D8-B0F5-4AF0-BEBD-9E2ADBD7B483}
{38C762AB-8FD1-44DE-9855-26AAE7129DC3} = {864062D3-A415-4A6F-9324-5820237BA058}
diff --git a/build-tools/installers/create-installers.targets b/build-tools/installers/create-installers.targets
index 7a75176ef34..89431e47d39 100644
--- a/build-tools/installers/create-installers.targets
+++ b/build-tools/installers/create-installers.targets
@@ -270,7 +270,6 @@
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)System.Collections.Immutable.dll" />
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)System.Buffers.dll" />
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)System.IO.Hashing.dll" />
- <_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Android.Aapt.targets" ExcludeFromAndroidNETSdk="true" />
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Android.Aapt2.targets" />
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Android.Analysis.targets" />
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Android.Application.targets" />
@@ -300,7 +299,6 @@
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Android.EmbeddedResource.targets" />
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Android.FSharp.targets" ExcludeFromAndroidNETSdk="true" />
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Android.Javac.targets" />
- <_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Android.Legacy.targets" ExcludeFromAndroidNETSdk="true" />
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Android.PCLSupport.props" ExcludeFromAndroidNETSdk="true" />
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Android.PCLSupport.targets" ExcludeFromAndroidNETSdk="true" />
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Android.SkipCases.projitems" />
@@ -311,7 +309,6 @@
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Android.Tools.AndroidSdk.pdb" />
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Android.Tools.Versions.props" />
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Android.VisualBasic.targets" ExcludeFromAndroidNETSdk="true" />
- <_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Android.Wear.targets" ExcludeFromAndroidNETSdk="true" />
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Build.AsyncTask.dll" />
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)Xamarin.Build.AsyncTask.pdb" />
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)K4os.Compression.LZ4.dll" />
diff --git a/build-tools/xaprepare/xaprepare/Application/GeneratedMakeRulesFile.cs b/build-tools/xaprepare/xaprepare/Application/GeneratedMakeRulesFile.cs
index f2145cba480..06d382b66ea 100644
--- a/build-tools/xaprepare/xaprepare/Application/GeneratedMakeRulesFile.cs
+++ b/build-tools/xaprepare/xaprepare/Application/GeneratedMakeRulesFile.cs
@@ -142,11 +142,6 @@ void Generate (Context context, StreamWriter sw)
string firstFramework = frameworks [0];
string latestStableFramework = stableFrameworks [stableFrameworks.Count - 1];
- WriteMSBuildCall (
- fileToRemovePath: Path.Combine (monoFrameworksRoot, "v1.0", "Xamarin.Android.NUnitLite.dll"),
- projectPath: "src/Xamarin.Android.NUnitLite/Xamarin.Android.NUnitLite.csproj"
- );
-
WriteMSBuildCall (
fileToRemovePath: $"{monoFrameworksRoot}/{latestStableFramework}/Mono.Android.Export.*",
projectPath: "src/Mono.Android.Export/Mono.Android.Export.csproj"
diff --git a/src/Xamarin.Android.Build.Tasks/MSBuild/Xamarin/Android/Xamarin.Android.Aapt.targets b/src/Xamarin.Android.Build.Tasks/MSBuild/Xamarin/Android/Xamarin.Android.Aapt.targets
deleted file mode 100644
index 82cde492f4b..00000000000
--- a/src/Xamarin.Android.Build.Tasks/MSBuild/Xamarin/Android/Xamarin.Android.Aapt.targets
+++ /dev/null
@@ -1,98 +0,0 @@
-
-
-
-
-
-
-
-
- <_UpdateAndroidResgenInputs>
- $(_UpdateAndroidResgenInputs);
- @(_LibraryResourceDirectoryStamps);
-
- <_CreateBaseApkInputs>
- $(_CreateBaseApkInputs);
- @(_LibraryResourceDirectoryStamps);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Xamarin.Android.Build.Tasks/MSBuild/Xamarin/Android/Xamarin.Android.Wear.targets b/src/Xamarin.Android.Build.Tasks/MSBuild/Xamarin/Android/Xamarin.Android.Wear.targets
deleted file mode 100644
index 0556dbe5f12..00000000000
--- a/src/Xamarin.Android.Build.Tasks/MSBuild/Xamarin/Android/Xamarin.Android.Wear.targets
+++ /dev/null
@@ -1,66 +0,0 @@
-
-
-
-
-
-
-
- SignAndroidPackage
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.Aot.targets b/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.Aot.targets
index e547f11a8dc..db621d58ecf 100644
--- a/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.Aot.targets
+++ b/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.Aot.targets
@@ -2,8 +2,7 @@
***********************************************************************************************
Microsoft.Android.Sdk.Aot.targets
-.NET 6 AOT support. You can find "legacy" Xamarin.Android AOT support
-in Xamarin.Android.Legacy.targets.
+MSBuild targets for .NET 6+ AOT support.
For usage, see:
* https://github.com/dotnet/runtime/blob/15dec9a2aa5a4236d6ba70de2e9c146867b9d2e0/src/tasks/AotCompilerTask/MonoAOTCompiler.cs
diff --git a/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.BuildOrder.targets b/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.BuildOrder.targets
index 59836b76789..4a4a3432258 100644
--- a/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.BuildOrder.targets
+++ b/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.BuildOrder.targets
@@ -2,9 +2,8 @@
***********************************************************************************************
Microsoft.Android.Sdk.BuildOrder.targets
-This file contains the .NET 5-specific setup for any $(FooDependsOn)
-properties that determine build ordering. For "legacy" Xamarin.Android
-projects, these properties are set in Xamarin.Android.Legacy.targets.
+This file contains the .NET 6+ setup for any $(FooDependsOn)
+properties that determine build ordering.
***********************************************************************************************
-->
diff --git a/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.Tooling.targets b/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.Tooling.targets
index 0fe2466756d..00607808065 100644
--- a/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.Tooling.targets
+++ b/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.Tooling.targets
@@ -2,9 +2,8 @@
***********************************************************************************************
Microsoft.Android.Sdk.Tooling.targets
-This file contains .NET 5-specific calls to the
-and MSBuild tasks. These MSBuild tasks are
-called for "legacy" projects in Xamarin.Android.Legacy.targets.
+This file contains .NET 6+ calls to the and
+ MSBuild tasks.
***********************************************************************************************
-->
diff --git a/src/Xamarin.Android.Build.Tasks/Tasks/CreateLibraryResourceArchive.cs b/src/Xamarin.Android.Build.Tasks/Tasks/CreateLibraryResourceArchive.cs
deleted file mode 100644
index abd30c5e108..00000000000
--- a/src/Xamarin.Android.Build.Tasks/Tasks/CreateLibraryResourceArchive.cs
+++ /dev/null
@@ -1,207 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.IO;
-using System.Linq;
-using System.Xml;
-using System.Xml.Linq;
-using Microsoft.Build.Utilities;
-using Microsoft.Build.Framework;
-using System.Text.RegularExpressions;
-using Xamarin.Tools.Zip;
-
-using Xamarin.Android.Tools;
-using Microsoft.Android.Build.Tasks;
-
-namespace Xamarin.Android.Tasks
-{
- public class CreateLibraryResourceArchive : AndroidTask
- {
- public override string TaskPrefix => "CLR";
-
- [Required]
- public string OutputDirectory { get; set; }
-
- [Required]
- public string OutputJarsDirectory { get; set; }
-
- [Required]
- public string OutputAnnotationsDirectory { get; set; }
-
- [Required]
- public ITaskItem[] LibraryProjectPropertiesFiles { get; set; }
-
- [Required]
- public ITaskItem[] LibraryProjectZipFiles { get; set; }
-
- public CreateLibraryResourceArchive ()
- {
- }
-
- public override bool RunTask ()
- {
- if (LibraryProjectPropertiesFiles.Length == 0 && LibraryProjectZipFiles.Length == 0)
- return true;
-
- var outDirInfo = new DirectoryInfo (OutputDirectory);
-
- // Copy files into _LibraryProjectImportsDirectoryName (library_project_imports) dir.
- if (!outDirInfo.Exists)
- outDirInfo.Create ();
-
- var projectsResolved = ResolveLibraryProjectReferences (LibraryProjectPropertiesFiles.Select (p => Path.GetFullPath (p.ItemSpec)));
- var imports = projectsResolved.Concat (LibraryProjectZipFiles.Select (p => p.ItemSpec));
-
- foreach (var p in imports) {
- // note that imports could contain file name that neither of build items contains
- // (it may be one of those resolved references in project.properties).
- // Also non-zip files are now specified in full path.
- if (!LibraryProjectZipFiles.Any (l => l.ItemSpec == p)) {
- // project.properties
-
- var fileInfo = new FileInfo (p);
- if (!fileInfo.Exists)
- throw new InvalidOperationException (String.Format ("Library project properties file '{0}' does not exist.", p));
- var bindir = fileInfo.Directory.FullName;
-
- CopyLibraryContent (bindir, false);
- } else {
- // zip
- string tmpname = Path.Combine (Path.GetTempPath (), "monodroid_import_" + Guid.NewGuid ().ToString ());
- try {
- Directory.CreateDirectory (tmpname);
- bool isAar = p.EndsWith (".aar", StringComparison.OrdinalIgnoreCase);
- using (var archive = ZipArchive.Open (p, FileMode.Open)) {
- var skipCallback = isAar ? Files.ShouldSkipEntryInAar : default (Func);
- Files.ExtractAll (archive, tmpname, skipCallback: skipCallback);
- }
-
- if (!CopyLibraryContent (tmpname, isAar))
- return false;
- } finally {
- Directory.Delete (tmpname, true);
- }
- }
- }
-
- var outpath = Path.Combine (outDirInfo.Parent.FullName, "__AndroidLibraryProjects__.zip");
-
- if (Files.ArchiveZip (outpath, f => {
- using (var zip = new ZipArchiveEx (f)) {
- zip.AddDirectory (OutputDirectory, "library_project_imports");
- }
- })) {
- Log.LogDebugMessage ("Saving contents to " + outpath);
- }
- return true;
- }
-
- bool CopyLibraryContent (string projdir, bool isAar)
- {
- if (Path.GetFullPath (OutputDirectory).StartsWith (Path.GetFullPath (projdir), StringComparison.InvariantCultureIgnoreCase)) {
- Log.LogCodedError ("XA1019", Properties.Resources.XA1019, Path.GetFullPath (projdir));
- return false;
- }
- foreach (var subdir in Directory.GetDirectories (projdir)) {
- var dinfo = new DirectoryInfo (subdir);
- switch (dinfo.Name.ToLowerInvariant ()) {
- case "gen":
- case "src":
- continue;
- }
- CopyDirectory (dinfo, OutputDirectory, true);
- CopyFiles (subdir);
- }
- if (isAar) {
- CopyFiles (projdir);
- // for .aar, copy top-level files (*.jar, AndroidManifest.xml etc.) into bin too.
- var dstdir = Path.Combine (OutputDirectory, "bin");
- foreach (var file in Directory.GetFiles (projdir)) {
- string dstpath = Path.Combine (dstdir, Path.GetFileName (file));
- if (!File.Exists (dstpath))
- Files.CopyIfChanged (file, dstpath);
- }
- }
- return true;
- }
-
- void CopyFiles (string srcdir)
- {
- foreach (var file in Directory.GetFiles (srcdir)) {
- if (file.EndsWith (".jar", StringComparison.OrdinalIgnoreCase)) {
- var dstpath = Path.Combine (OutputJarsDirectory, Path.GetFileName (file));
- if (!File.Exists (dstpath))
- Files.CopyIfChanged (file, dstpath);
- } else if (file.EndsWith ("annotations.zip", StringComparison.OrdinalIgnoreCase)) {
- var dstpath = Path.Combine (OutputAnnotationsDirectory, Path.GetFileName (file));
- if (!File.Exists (dstpath))
- Files.CopyIfChanged (file, dstpath);
- } else {
- var dstpath = Path.Combine (OutputDirectory, Path.GetFileName (file));
- if (!File.Exists (dstpath))
- Files.CopyIfChanged (file, dstpath);
- }
- }
- }
-
- static void CopyDirectory (DirectoryInfo srcSubdirInfo, string dst, bool top)
- {
- string dstsub = Path.Combine (dst, srcSubdirInfo.Name);
- if (!Directory.Exists (dstsub))
- Directory.CreateDirectory (dstsub);
- foreach (var subsub in srcSubdirInfo.GetDirectories ()) {
- // Skip "classes" dir.
- if (top && subsub.Name.ToLowerInvariant () == "classes")
- continue;
- CopyDirectory (subsub, dstsub, false);
- }
- foreach (var file in srcSubdirInfo.GetFiles ())
- Files.CopyIfChanged (file.FullName, Path.Combine (dstsub, file.Name));
- }
-
- IEnumerable ResolveLibraryProjectReferences (IEnumerable inputs)
- {
- var l = new List ();
- foreach (var input in inputs)
- foreach (var s in ResolveLibraryProjectReferences (input, new List ()))
- if (!l.Contains (s))
- l.Add (s);
- return l;
- }
-
- const string librefspec = "android.library.reference.";
-
- IEnumerable ResolveLibraryProjectReferences (string singleFile, List recurse)
- {
- if (recurse.Contains (singleFile))
- throw new InvalidOperationException (String.Format ("The library project '{0}' contains invalid recursive references.", singleFile));
- recurse.Add (singleFile);
- var l = new List ();
- l.Add (singleFile);
- var ordered = new SortedList ();
- foreach (var line in File.ReadAllLines (singleFile)) {
- var s = line.Trim ();
- if (s.StartsWith ("#", StringComparison.Ordinal))
- continue;
- if (!s.StartsWith (librefspec, StringComparison.Ordinal))
- continue;
- int eqpos = s.IndexOf ('=');
- if (eqpos < 0)
- throw new InvalidOperationException (String.Format ("Wrong project reference description in '{0}': '=' is missing", singleFile));
- string numspec = s.Substring (librefspec.Length, eqpos - librefspec.Length);
- int num;
- if (!int.TryParse (numspec, out num))
- throw new InvalidOperationException (String.Format ("Wrong project reference description in '{0}': wrong number format for reference priority", singleFile));
- string path = s.Substring (eqpos + 1);
- string refpath = Path.GetFullPath (Path.Combine (Path.GetDirectoryName (singleFile), path, "project.properties"));
- ordered.Add (num, refpath);
- }
- foreach (var refpath in ordered.Values)
- foreach (var sub in ResolveLibraryProjectReferences (refpath, recurse))
- l.Add (sub);
- recurse.Remove (singleFile);
- return l;
- }
- }
-}
-
diff --git a/src/Xamarin.Android.Build.Tasks/Tasks/CreateManagedLibraryResourceArchive.cs b/src/Xamarin.Android.Build.Tasks/Tasks/CreateManagedLibraryResourceArchive.cs
deleted file mode 100644
index 9c993463cc0..00000000000
--- a/src/Xamarin.Android.Build.Tasks/Tasks/CreateManagedLibraryResourceArchive.cs
+++ /dev/null
@@ -1,127 +0,0 @@
-using System;
-using System.IO;
-using System.Linq;
-using Microsoft.Build.Utilities;
-using Microsoft.Build.Framework;
-
-using Xamarin.Android.Tools;
-using Microsoft.Android.Build.Tasks;
-
-namespace Xamarin.Android.Tasks
-{
- ///
- /// Creates __AndroidLibraryProjects__.zip, $(AndroidApplication) should be False!
- ///
- public class CreateManagedLibraryResourceArchive : AndroidTask
- {
- public override string TaskPrefix => "CML";
-
- [Required]
- public string OutputDirectory { get; set; }
-
- public ITaskItem[] AndroidAssets { get; set; }
-
- public string MonoAndroidAssetsPrefix { get; set; }
-
- public ITaskItem[] AndroidJavaSources { get; set; }
-
- public ITaskItem[] AndroidJavaLibraries { get; set; }
-
- public ITaskItem[] AndroidResourcesInThisExactProject { get; set; }
-
- public ITaskItem [] RemovedAndroidResourceFiles { get; set; }
-
- public string FlatArchivesDirectory { get; set; }
-
- [Required]
- public string ResourceDirectory { get; set; }
-
- public CreateManagedLibraryResourceArchive ()
- {
- }
-
- public override bool RunTask ()
- {
- var outDirInfo = new DirectoryInfo (OutputDirectory);
-
- // Copy files into _LibraryProjectImportsDirectoryName (library_project_imports) dir.
- if (!outDirInfo.Exists)
- outDirInfo.Create ();
- foreach (var sub in new string [] {"assets", "res", "java", "bin"}) {
- var subdirInfo = new DirectoryInfo (Path.Combine (outDirInfo.FullName, sub));
- if (!subdirInfo.Exists)
- subdirInfo.Create ();
- }
-
- var compiledArchive = Path.Combine (FlatArchivesDirectory, "compiled.flata");
- if (File.Exists (compiledArchive)) {
- Log.LogDebugMessage ($"Coping: {compiledArchive} to {outDirInfo.FullName}");
- Files.CopyIfChanged (compiledArchive, Path.Combine (outDirInfo.FullName, "compiled.flata"));
- }
-
- if (AndroidAssets != null) {
- var dstsub = Path.Combine (outDirInfo.FullName, "assets");
- if (!Directory.Exists (dstsub))
- Directory.CreateDirectory (dstsub);
- foreach (var item in AndroidAssets) {
- var path = MonoAndroidHelper.GetRelativePathForAndroidAsset (MonoAndroidAssetsPrefix, item);
- Files.CopyIfChanged (item.ItemSpec, Path.Combine (dstsub, path));
- }
- }
- // resources folders are converted to the structure that aapt accepts.
- foreach (var srcsub in Directory.GetDirectories (ResourceDirectory)) {
- var dstsub = Path.Combine (outDirInfo.FullName, "res", Path.GetFileName (srcsub));
- if (!Directory.Exists (dstsub))
- Directory.CreateDirectory (dstsub);
- foreach (var file in Directory.GetFiles (srcsub)) {
- var filename = Path.GetFileName (file);
- Files.CopyIfChanged (file, Path.Combine (dstsub, Path.GetFileName (file)));
- }
- }
- if (RemovedAndroidResourceFiles != null) {
- foreach (var removedFile in RemovedAndroidResourceFiles) {
- var removed = Path.Combine (outDirInfo.FullName, removedFile.ItemSpec);
- if (File.Exists (removed)) {
- File.Delete (removed);
- Log.LogDebugMessage ($"Removed: {removed}");
- }
-
- }
- }
- if (AndroidJavaSources != null)
- foreach (var item in AndroidJavaSources)
- Files.CopyIfChanged (item.ItemSpec, Path.Combine (outDirInfo.FullName, item.ItemSpec));
- if (AndroidJavaLibraries != null)
- foreach (var item in AndroidJavaLibraries)
- Files.CopyIfChanged (item.ItemSpec, Path.Combine (outDirInfo.FullName, item.ItemSpec));
-
- var nameCaseMap = new StringWriter ();
-
- // add resource case mapping descriptor to the archive.
- if (AndroidResourcesInThisExactProject != null && AndroidResourcesInThisExactProject.Any ()) {
- Log.LogMessage ("writing __res_name_case_map.txt...");
- foreach (var res in AndroidResourcesInThisExactProject)
- nameCaseMap.WriteLine ("{0};{1}", res.GetMetadata ("LogicalName").Replace ('\\', '/'), Path.Combine (Path.GetFileName (Path.GetDirectoryName (res.ItemSpec)), Path.GetFileName (res.ItemSpec)).Replace ('\\', '/'));
- File.WriteAllText (Path.Combine (outDirInfo.FullName, "__res_name_case_map.txt"), nameCaseMap.ToString ());
- }
-
- var outpath = Path.Combine (outDirInfo.Parent.FullName, "__AndroidLibraryProjects__.zip");
- var fileMode = File.Exists (outpath) ? FileMode.Open : FileMode.CreateNew;
- if (Files.ArchiveZipUpdate (outpath, f => {
- using (var zip = new ZipArchiveEx (f, fileMode)) {
- zip.AddDirectory (outDirInfo.FullName, "library_project_imports");
- if (RemovedAndroidResourceFiles != null) {
- foreach (var r in RemovedAndroidResourceFiles) {
- Log.LogDebugMessage ($"Removed {r.ItemSpec} from {outpath}");
- zip.RemoveFile ("library_project_imports", r.ItemSpec);
- }
- }
- }
- })) {
- Log.LogDebugMessage ("Saving contents to " + outpath);
- }
-
- return !Log.HasLoggedErrors ;
- }
- }
-}
diff --git a/src/Xamarin.Android.Build.Tasks/Tasks/CreateNativeLibraryArchive.cs b/src/Xamarin.Android.Build.Tasks/Tasks/CreateNativeLibraryArchive.cs
deleted file mode 100644
index 6c89c01f0d5..00000000000
--- a/src/Xamarin.Android.Build.Tasks/Tasks/CreateNativeLibraryArchive.cs
+++ /dev/null
@@ -1,75 +0,0 @@
-using System;
-using System.IO;
-using System.Linq;
-using Microsoft.Build.Utilities;
-using Microsoft.Build.Framework;
-
-using Xamarin.Android.Tools;
-using Microsoft.Android.Build.Tasks;
-
-namespace Xamarin.Android.Tasks
-{
- ///
- /// Creates __AndroidNativeLibraries__.zip, $(AndroidApplication) should be False!
- ///
- public class CreateNativeLibraryArchive : AndroidTask
- {
- public override string TaskPrefix => "CNL";
-
- [Required]
- public string OutputDirectory { get; set; }
-
- [Required]
- public ITaskItem[] EmbeddedNativeLibraries { get; set; }
-
- public CreateNativeLibraryArchive ()
- {
- }
-
- public override bool RunTask ()
- {
- var outDirInfo = new DirectoryInfo (OutputDirectory);
-
- // Copy files into _NativeLibraryImportsDirectoryName (native_library_imports) dir.
- if (!outDirInfo.Exists)
- outDirInfo.Create ();
- foreach (var lib in EmbeddedNativeLibraries) {
- // seealso bug #3477 to find out why we use this method.
- var abi = AndroidRidAbiHelper.GetNativeLibraryAbi (lib);
- if (abi == null) {
- Log.LogWarning (
- subcategory: string.Empty,
- warningCode: "XA4300",
- helpKeyword: string.Empty,
- file: lib.ItemSpec,
- lineNumber: 0,
- columnNumber: 0,
- endLineNumber: 0,
- endColumnNumber: 0,
- message: Properties.Resources.XA4300,
- messageArgs: new []{
- lib.ItemSpec,
- }
- );
- continue;
- }
- if (!outDirInfo.GetDirectories (abi).Any ())
- outDirInfo.CreateSubdirectory (abi);
- Files.CopyIfChanged (lib.ItemSpec, Path.Combine (OutputDirectory, abi, Path.GetFileName (lib.ItemSpec)));
- }
-
- var outpath = Path.Combine (outDirInfo.Parent.FullName, "__AndroidNativeLibraries__.zip");
-
- if (Files.ArchiveZip (outpath, f => {
- using (var zip = new ZipArchiveEx (f)) {
- zip.AddDirectory (OutputDirectory, "native_library_imports");
- }
- })) {
- Log.LogDebugMessage ("Saving contents to " + outpath);
- }
-
- return !Log.HasLoggedErrors;
- }
- }
-}
-
diff --git a/src/Xamarin.Android.Build.Tasks/Tasks/LinkAssemblies.cs b/src/Xamarin.Android.Build.Tasks/Tasks/LinkAssemblies.cs
deleted file mode 100644
index 67c72c382da..00000000000
--- a/src/Xamarin.Android.Build.Tasks/Tasks/LinkAssemblies.cs
+++ /dev/null
@@ -1,160 +0,0 @@
-// Copyright (C) 2011, Xamarin Inc.
-// Copyright (C) 2010, Novell Inc.
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using Microsoft.Build.Framework;
-using MBF = Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using Mono.Cecil;
-using System.IO;
-using MonoDroid.Tuner;
-using Mono.Linker;
-using ML = Mono.Linker;
-
-using Java.Interop.Tools.Cecil;
-using Java.Interop.Tools.Diagnostics;
-using Microsoft.Android.Build.Tasks;
-
-namespace Xamarin.Android.Tasks
-{
- ///
- /// This task is for Release builds, LinkMode=None now uses LinkAssembliesNoShrink
- ///
- public class LinkAssemblies : AndroidTask, ML.ILogger
- {
- public override string TaskPrefix => "LNK";
-
- [Required]
- public string MainAssembly { get; set; }
-
- [Required]
- public string OutputDirectory { get; set; }
-
- [Required]
- public ITaskItem[] ResolvedAssemblies { get; set; }
-
- [Required]
- public ITaskItem[] LinkDescriptions { get; set; }
-
- public string I18nAssemblies { get; set; }
- public string LinkMode { get; set; }
- public string LinkSkip { get; set; }
-
- public bool EnableProguard { get; set; }
- public string ProguardConfiguration { get; set; }
- public bool DumpDependencies { get; set; }
-
- public string HttpClientHandlerType { get; set; }
-
- public string TlsProvider { get; set; }
-
- public bool AddKeepAlives { get; set; }
-
- public bool PreserveJniMarshalMethods { get; set; }
-
- public bool Deterministic { get; set; }
-
- public bool LinkResources { get; set; }
-
- public bool UseDesignerAssembly { get; set; }
-
- IEnumerable GetRetainAssemblies (DirectoryAssemblyResolver res)
- {
- List retainList = null;
- foreach (var assembly in ResolvedAssemblies) {
- var filename = Path.GetFileName (assembly.ItemSpec);
- if (!MonoAndroidHelper.IsForceRetainedAssembly (filename))
- continue;
- if (retainList == null)
- retainList = new List ();
- retainList.Add (res.GetAssembly (assembly.ItemSpec));
- }
- return retainList;
- }
-
- public override bool RunTask ()
- {
- var rp = new ReaderParameters {
- InMemory = true,
- };
- using (var res = new DirectoryAssemblyResolver (this.CreateTaskLogger (), loadDebugSymbols: false, loadReaderParameters: rp)) {
- return Execute (res);
- }
- }
-
- bool Execute (DirectoryAssemblyResolver res)
- {
- // Put every assembly we'll need in the resolver
- foreach (var assembly in ResolvedAssemblies) {
- res.Load (Path.GetFullPath (assembly.ItemSpec));
- }
-
- var resolver = new AssemblyResolver (res.ToResolverCache ());
-
- // Set up for linking
- var options = new LinkerOptions ();
- options.MainAssembly = res.GetAssembly (MainAssembly);
- options.OutputDirectory = Path.GetFullPath (OutputDirectory);
- options.LinkSdkOnly = string.Compare (LinkMode, "SdkOnly", StringComparison.OrdinalIgnoreCase) == 0;
- options.LinkNone = false;
- options.Resolver = resolver;
- options.LinkDescriptions = LinkDescriptions.Select (item => Path.GetFullPath (item.ItemSpec)).ToArray ();
- options.I18nAssemblies = Linker.ParseI18nAssemblies (I18nAssemblies);
- if (!options.LinkSdkOnly)
- options.RetainAssemblies = GetRetainAssemblies (res);
- options.DumpDependencies = DumpDependencies;
- options.HttpClientHandlerType = HttpClientHandlerType;
- options.TlsProvider = TlsProvider;
- options.AddKeepAlives = AddKeepAlives;
- options.PreserveJniMarshalMethods = PreserveJniMarshalMethods;
- options.DeterministicOutput = Deterministic;
- options.LinkResources = LinkResources;
- options.UseDesignerAssembly = UseDesignerAssembly;
-
- var skiplist = new List ();
-
- // Add LinkSkip options
- if (!string.IsNullOrWhiteSpace (LinkSkip))
- skiplist.AddRange (LinkSkip.Split (',', ';'));
-
- options.SkippedAssemblies = skiplist;
-
- if (EnableProguard)
- options.ProguardConfiguration = ProguardConfiguration;
-
- // Link!
- try {
- LinkContext link_context;
- Linker.Process (options, this, out link_context);
-
- foreach (var assembly in ResolvedAssemblies) {
- var copysrc = assembly.ItemSpec;
- var filename = Path.GetFileName (assembly.ItemSpec);
- var assemblyDestination = Path.Combine (OutputDirectory, filename);
-
- if (!MonoAndroidHelper.IsForceRetainedAssembly (filename))
- continue;
-
- MonoAndroidHelper.CopyAssemblyAndSymbols (copysrc, assemblyDestination);
- }
- } catch (ResolutionException ex) {
- Diagnostic.Error (2006, ex, Properties.Resources.XA2006, ex.Member, ex.Member.Module.Assembly, ex.Scope);
- }
-
- return true;
- }
-
- public void LogMessage (ML.MessageImportance importance, string message, params object [] values)
- {
- var mbfImportance = MBF.MessageImportance.Low;
-
- if (importance == ML.MessageImportance.High)
- mbfImportance = MBF.MessageImportance.High;
-
- Log.LogMessageFromText (string.Format (message, values), mbfImportance);
- }
- }
-}
-
diff --git a/src/Xamarin.Android.Build.Tasks/Tasks/ParseAndroidWearProjectAndManifest.cs b/src/Xamarin.Android.Build.Tasks/Tasks/ParseAndroidWearProjectAndManifest.cs
deleted file mode 100644
index 11453afa119..00000000000
--- a/src/Xamarin.Android.Build.Tasks/Tasks/ParseAndroidWearProjectAndManifest.cs
+++ /dev/null
@@ -1,51 +0,0 @@
-using System;
-using System.IO;
-using System.Linq;
-using Microsoft.Build.Utilities;
-using Microsoft.Build.Framework;
-using System.Xml.Linq;
-
-using Xamarin.Android.Tools;
-using Xamarin.Android.Tools.Aidl;
-using Microsoft.Android.Build.Tasks;
-
-namespace Xamarin.Android.Tasks
-{
- public class ParseAndroidWearProjectAndManifest : AndroidTask
- {
- public override string TaskPrefix => "PAW";
-
- static readonly XNamespace msbuildNS = XNamespace.Get ("http://schemas.microsoft.com/developer/msbuild/2003");
-
- public ITaskItem [] ProjectFiles { get; set; }
- [Output]
- public string ApplicationManifestFile { get; set; }
- [Output]
- public string ApplicationPackageName { get; set; }
-
- public override bool RunTask ()
- {
- if (ProjectFiles.Length != 1)
- Log.LogCodedError ("XA1015", Properties.Resources.XA1015);
-
- var wearProj = ProjectFiles.First ();
- var manifestXml = XDocument.Load (wearProj.ItemSpec)
- .Root.Elements (msbuildNS + "PropertyGroup").Elements (msbuildNS + "AndroidManifest").Select (e => e.Value).FirstOrDefault ();
- if (string.IsNullOrEmpty (manifestXml))
- Log.LogCodedError ("XA1016", Properties.Resources.XA1016, wearProj);
- manifestXml = Path.Combine (Path.GetDirectoryName (wearProj.ItemSpec), manifestXml.Replace ('\\', Path.DirectorySeparatorChar));
-
- ApplicationManifestFile = manifestXml;
-
- Log.LogDebugMessage (" [Output] ApplicationManifestFile: " + ApplicationManifestFile);
-
- ApplicationPackageName = AndroidAppManifest.CanonicalizePackageName (XDocument.Load (manifestXml).Root.Attributes ("package").Select (a => a.Value).FirstOrDefault ());
- if (string.IsNullOrEmpty (ApplicationPackageName))
- Log.LogCodedError ("XA1017", Properties.Resources.XA1017);
-
- Log.LogDebugMessage (" [Output] ApplicationPackageName: " + ApplicationPackageName);
- return true;
- }
- }
-}
-
diff --git a/src/Xamarin.Android.Build.Tasks/Tasks/PrepareWearApplicationFiles.cs b/src/Xamarin.Android.Build.Tasks/Tasks/PrepareWearApplicationFiles.cs
deleted file mode 100644
index 62d60299c53..00000000000
--- a/src/Xamarin.Android.Build.Tasks/Tasks/PrepareWearApplicationFiles.cs
+++ /dev/null
@@ -1,79 +0,0 @@
-using Microsoft.Build.Utilities;
-using Microsoft.Build.Framework;
-using System.IO;
-using System.Xml.Linq;
-using Xamarin.Android.Tools;
-using System.Collections.Generic;
-using Microsoft.Android.Build.Tasks;
-
-namespace Xamarin.Android.Tasks
-{
- public class PrepareWearApplicationFiles : AndroidTask
- {
- public override string TaskPrefix => "PWA";
-
- static readonly XNamespace androidNs = XNamespace.Get ("http://schemas.android.com/apk/res/android");
-
- [Required]
- public string PackageName { get; set; }
- public string WearAndroidManifestFile { get; set; }
- public string IntermediateOutputPath { get; set; }
- public string AndroidLibraryFlatFilesDirectory { get; set; }
- public string WearApplicationApkPath { get; set; }
- [Output]
- public ITaskItem WearableApplicationDescriptionFile { get; set; }
- [Output]
- public ITaskItem BundledWearApplicationApkResourceFile { get; set; }
- [Output]
- public string [] ModifiedFiles { get; set; }
-
- public override bool RunTask ()
- {
- string rawapk = "wearable_app.apk";
- string intermediateApkPath = Path.Combine (IntermediateOutputPath, "res", "raw", rawapk);
- string intermediateXmlFile = Path.Combine (IntermediateOutputPath, "res", "xml", "wearable_app_desc.xml");
-
- var doc = XDocument.Load (WearAndroidManifestFile);
- var wearPackageName = AndroidAppManifest.CanonicalizePackageName (doc.Root.Attribute ("package").Value);
- var modified = new List ();
-
- if (PackageName != wearPackageName)
- Log.LogCodedError ("XA5211", Properties.Resources.XA5211, wearPackageName, PackageName);
-
- if (!File.Exists (WearApplicationApkPath)) {
- Log.LogCodedWarning ("XA4311", Properties.Resources.XA4311);
- return true;
- }
-
- var xml = string.Format (@"
- {1}
- {2}
- {3}
-
-", wearPackageName, doc.Root.Attribute (androidNs + "versionCode").Value, doc.Root.Attribute (androidNs + "versionName").Value, Path.GetFileNameWithoutExtension (rawapk));
-
- if (Files.CopyIfChanged (WearApplicationApkPath, intermediateApkPath)) {
- Log.LogDebugMessage (" Copied APK to {0}", intermediateApkPath);
- modified.Add (intermediateApkPath);
- }
-
- Directory.CreateDirectory (Path.GetDirectoryName (intermediateXmlFile));
- if (!File.Exists (intermediateXmlFile) || !XDocument.DeepEquals (XDocument.Load (intermediateXmlFile), XDocument.Parse (xml))) {
- File.WriteAllText (intermediateXmlFile, xml);
- Log.LogDebugMessage (" Created additional resource as {0}", intermediateXmlFile);
- modified.Add (intermediateXmlFile);
- }
- WearableApplicationDescriptionFile = new TaskItem (intermediateXmlFile);
- WearableApplicationDescriptionFile.SetMetadata ("_FlatFile", Monodroid.AndroidResource.CalculateAapt2FlatArchiveFileName (intermediateXmlFile));
- WearableApplicationDescriptionFile.SetMetadata ("_ArchiveDirectory", AndroidLibraryFlatFilesDirectory);
- WearableApplicationDescriptionFile.SetMetadata ("IsWearApplicationResource", "True");
- BundledWearApplicationApkResourceFile = new TaskItem (intermediateApkPath);
- BundledWearApplicationApkResourceFile.SetMetadata ("_FlatFile", Monodroid.AndroidResource.CalculateAapt2FlatArchiveFileName (intermediateApkPath));
- BundledWearApplicationApkResourceFile.SetMetadata ("_ArchiveDirectory", AndroidLibraryFlatFilesDirectory);
- BundledWearApplicationApkResourceFile.SetMetadata ("IsWearApplicationResource", "True");
- ModifiedFiles = modified.ToArray ();
-
- return true;
- }
- }
-}
diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.targets b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.targets
index d29d385d6d0..67d48e67bb6 100644
--- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.targets
+++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.targets
@@ -54,11 +54,6 @@
PreserveNewest
Xamarin.Android.Bindings.JarToXml.targets
-
- PreserveNewest
- Xamarin.Android.Wear.targets
-
PreserveNewest
@@ -92,10 +87,6 @@
PreserveNewest
Xamarin.Android.Resource.Designer.targets
-
- PreserveNewest
- Xamarin.Android.Aapt.targets
-
PreserveNewest
Xamarin.Android.Aapt2.targets
@@ -140,9 +131,6 @@
PreserveNewest
-
- PreserveNewest
-
PreserveNewest
diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets
index 6259e2b3341..9826b4d533d 100644
--- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets
+++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets
@@ -371,16 +371,13 @@ Copyright (C) 2011-2012 Xamarin. All rights reserved.
-->
-
-
+
-
-
@@ -1480,7 +1477,7 @@ because xbuild doesn't support framework reference assemblies.
-
+
-
-
-
-
- Java
- True
-
-
-
- <_PostBuildTargets>
- _CopyPackage;
- _Sign
-
-
-
-
-
-
-
- _ValidateLinkMode;
- _CheckNonIdealConfigurations;
- _SetupMSBuildAllProjects;
- _SetupDesignTimeBuildForBuild;
- _CategorizeAndroidLibraries;
- _CreatePropertiesCache;
- _CleanIntermediateIfNeeded;
- _CheckProjectItems;
- _CheckForContent;
- _CheckTargetFramework;
- _CheckForObsoleteFrameworkAssemblies;
- _RemoveLegacyDesigner;
- _ValidateAndroidPackageProperties;
- $(BuildDependsOn);
- _CompileDex;
- $(_AfterCompileDex);
- $(_PostBuildTargets)
-
- <_BeforeIncrementalClean>
- _PrepareAssemblies;
- _CompileDex;
- $(_AfterCompileDex);
- _AddFilesToFileWrites;
-
- <_PackageForAndroidDependsOn>
- SetWearAppTargetToPackageForAndroid;
- Build;
- _CopyPackage;
-
-
-
-
-
-
-
- _ValidateLinkMode;
- _SetupMSBuildAllProjects;
- _SetupDesignTimeBuildForBuild;
- _CategorizeAndroidLibraries;
- _CreatePropertiesCache;
- _CleanIntermediateIfNeeded;
- _AddAndroidDefines;
- _CreateNativeLibraryArchive;
- _AddAndroidEnvironmentToCompile;
- _CheckForContent;
- _CheckTargetFramework;
- _CheckForObsoleteFrameworkAssemblies;
- _RemoveLegacyDesigner;
- _ValidateAndroidPackageProperties;
- $(BuildDependsOn);
-
- <_BeforeIncrementalClean>
- _AddFilesToFileWrites;
-
-
-
-
-
-
-
- $([MSBuild]::Unescape($(CoreBuildDependsOn.Replace('IncrementalClean;', '$(_BeforeIncrementalClean);IncrementalClean;'))))
-
-
- _SetupMSBuildAllProjects;
- _SetupDesignTimeBuildForCompile;
- _AddAndroidDefines;
- _IncludeLayoutBindingSources;
- $(CompileDependsOn);
- _CheckAndroidHttpClientHandlerType;
-
-
- UpdateGeneratedFiles;
- $(CoreCompileDependsOn)
-
-
- _SeparateAppExtensionReferences;
- _PrepareWearApplication;
- $(ResolveReferencesDependsOn);
- _AddAndroidCustomMetaData;
-
-
- $(CoreResolveReferencesDependsOn);
- UpdateAndroidResources;
- UpdateAndroidInterfaceProxies;
-
-
- $(DeferredBuildDependsOn);
- UpdateAndroidResources;
-
-
- $(PrepareForRunDependsOn);
- _CollectMonoAndroidOutputs;
-
-
- $(CleanDependsOn);
- _CleanMonoAndroidIntermediateDir;
- _CleanAndroidBuildPropertiesCache;
-
- <_PrepareBuildApkDependsOnTargets>
- _SetLatestTargetFrameworkVersion;
- _GetLibraryImports;
- _RemoveRegisterAttribute;
- _ResolveAssemblies;
- _ResolveSatellitePaths;
- _CreatePackageWorkspace;
- _CopyConfigFiles;
- _ConvertPdbFiles;
- _LinkAssemblies;
- _GenerateJavaStubs;
- _ManifestMerger;
- _ConvertCustomView;
- $(_AfterConvertCustomView);
- $(AfterGenerateAndroidManifest);
- _GenerateEnvironmentFiles;
- _CompileJava;
- _CreateApplicationSharedLibraries;
- _CompileDex;
- $(_AfterCompileDex);
- _CreateBaseApk;
- _PrepareAssemblies;
- _ResolveSatellitePaths;
- _CheckApkPerAbiFlag;
- _LintChecks;
- _IncludeNativeSystemLibraries;
- _CheckGoogleSdkRequirements;
- _AndroidAot;
-
- <_UpdateAndroidResourcesDependsOn>
- $(CoreResolveReferencesDependsOn);
- _CreatePropertiesCache;
- _CheckForDeletedResourceFile;
- _ComputeAndroidResourcePaths;
- _UpdateAndroidResgen;
- _CreateManagedLibraryResourceArchive;
-
-
- _BeforeGetAndroidDependencies;
- _SetLatestTargetFrameworkVersion;
- $(GetAndroidDependenciesDependsOn);
-
-
-
-
-
-
-
- _SetupMSBuildAllProjects;
- _SetupDesignTimeBuildForBuild;
- _CategorizeAndroidLibraries;
- AddLibraryJarsToBind;
- $(BuildDependsOn);
- BuildDocumentation;
-
-
-
- _SetupMSBuildAllProjects;
- _SetupDesignTimeBuildForCompile;
- AddLibraryJarsToBind;
- $(CompileDependsOn);
-
-
-
- $(ResolveReferencesDependsOn);
- _SetAndroidGenerateManagedBindings;
- AddBindingsToCompile;
- AddEmbeddedJarsAsResources;
- AddEmbeddedReferenceJarsAsResources;
- _CreateNativeLibraryArchive;
-
-
-
- $(CleanDependsOn);
- CleanBindingsOutput;
- CleanLibraryProjectIntermediaries;
- CleanNativeLibraryIntermediaries;
-
-
-
- _ResolveMonoAndroidSdks;
- _ExtractLibraryProjectImports;
- _GetLibraryImports;
- _ExtractJavaDocJars;
- _GenerateJavaDocFromSourceJars;
- _ExportJarToXml;
-
-
- <_ResolveLibraryProjectsDependsOn>
- _CreateBindingResourceArchive;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- <_DeprecatedSymbols Include="@(_ResolvedMdbFiles);@(_ResolvedPdbFiles)" />
-
-
-
-
-
-
-
-
-
- __AndroidEnvironment__%(Filename)%(Extension)
-
-
-
-
-
-
-
- %(Filename)%(Extension)
-
-
-
-
-
-
-
- __reference__%(Filename)%(Extension)
-
-
-
-
-
-
-
-
-
-
- __AndroidNativeLibraries__.zip
-
-
-
-
-
-
-
-
-
-
- __AndroidLibraryProjects__.zip
-
-
-
-
-
-
-
-
-
- __AndroidLibraryProjects__.zip
-
-
-
-
-
-
- <_Assemblies>@(_ResolvedFrameworkAssemblies)
- <_TargetInterpreterPrefix Condition=" '$(AndroidUseInterpreter)' != 'False' ">interpreter-
- <_AndroidDebugNativeLibraries Condition=" '$(_AndroidDebugNativeLibraries)' == '' ">False
-
-
-
-
-
- <_TargetArchitecture Include="$(_Android32bitArchitectures);$(_Android64bitArchitectures)" />
- <_TargetLibDir Include="$(MSBuildThisFileDirectory)lib\%(_TargetArchitecture.Identity)" Condition=" Exists('$(MSBuildThisFileDirectory)lib\%(_TargetArchitecture.Identity)') "/>
- <_TargetLibInterpreterDir Include="$(MSBuildThisFileDirectory)lib\$(_TargetInterpreterPrefix)%(_TargetArchitecture.Identity)" Condition=" Exists('$(MSBuildThisFileDirectory)lib\$(_TargetInterpreterPrefix)%(_TargetArchitecture.Identity)') "/>
-
-
-
-
-
-
- <_AndroidNativeLibraryForFastDev Condition=" '$(_InstantRunEnabled)' == 'True' And '$(AndroidUseDebugRuntime)' == 'True' " Include="%(_TargetLibInterpreterDir.Identity)\libmono-native.so" />
- <_AndroidNativeLibraryForFastDev Condition=" '$(_InstantRunEnabled)' == 'True' And '$(AndroidUseDebugRuntime)' == 'True' And '$(_AndroidCheckedBuild)' == '' " Include="%(_TargetLibDir.Identity)\libxamarin-debug-app-helper.so" />
- <_AndroidNativeLibraryForFastDev Condition=" '$(_InstantRunEnabled)' == 'True' And '$(AndroidUseDebugRuntime)' == 'True' And '$(_AndroidCheckedBuild)' != '' " Include="%(_TargetLibDir.Identity)\libxamarin-debug-app-helper-checked+$(_AndroidCheckedBuild).so" ArchiveFileName="libxamarin-debug-app-helper.so" />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- <_PrepareAssembliesDependsOnTargets>
- _ResolveAssemblies;
- _ResolveSatellitePaths;
- _CreatePackageWorkspace;
- _CopyConfigFiles;
- _ConvertPdbFiles;
- _LinkAssemblies;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- <_ResolvedAssemblies Include="@(ResolvedAssemblies->'$(MonoAndroidIntermediateAssemblyDir)%(Filename)%(Extension)')" />
- <_ResolvedSymbols Include="@(ResolvedSymbols->'$(MonoAndroidIntermediateAssemblyDir)%(Filename)%(Extension)')" />
- <_ResolvedUserAssemblies Include="@(ResolvedUserAssemblies->'$(MonoAndroidIntermediateAssemblyDir)%(Filename)%(Extension)')" />
- <_ResolvedFrameworkAssemblies Include="@(ResolvedFrameworkAssemblies->'$(MonoAndroidIntermediateAssemblyDir)%(Filename)%(Extension)')" />
-
-
- <_ShrunkAssemblies Include="@(_ResolvedAssemblies)" />
- <_ShrunkUserAssemblies Include="@(_ResolvedUserAssemblies)" />
- <_ShrunkFrameworkAssemblies Include="@(_ResolvedFrameworkAssemblies)" />
-
-
- <_ShrunkAssemblies Include="@(_ResolvedAssemblies->'$(MonoAndroidIntermediateAssemblyDir)shrunk\%(Filename)%(Extension)')" />
- <_ShrunkUserAssemblies Include="@(_ResolvedUserAssemblies->'$(MonoAndroidIntermediateAssemblyDir)shrunk\%(Filename)%(Extension)')" />
- <_ShrunkFrameworkAssemblies Include="@(_ResolvedFrameworkAssemblies->'$(MonoAndroidIntermediateAssemblyDir)shrunk\%(Filename)%(Extension)')" />
-
-
- <_ResolvedUserMonoAndroidAssemblies
- Include="@(_ResolvedUserAssemblies)"
- Condition=" '%(_ResolvedUserAssemblies.TargetFrameworkIdentifier)' == 'MonoAndroid' Or '%(_ResolvedUserAssemblies.HasMonoAndroidReference)' == 'true' "
- />
-
-
-
-
-
-
-
-
- <_MainAssembly Condition=" '$(AndroidGenerateJniMarshalMethods)' != 'True' ">$(TargetPath)
- <_MainAssembly Condition=" '$(AndroidGenerateJniMarshalMethods)' == 'True' ">$(_JniMarshalMethodsOutputDir)$(TargetFileName)
-
-
- <_AssembliesToLink Include="@(ResolvedAssemblies)" />
-
-
- <_PossibleAssembliesToLink Include="@(ResolvedAssemblies)">
- $(_JniMarshalMethodsOutputDir)%(Filename)%(Extension)
-
- <_AssembliesToLink Condition="Exists(%(_PossibleAssembliesToLink.JniAssembly))" Include="%(_PossibleAssembliesToLink.JniAssembly)" />
- <_AssembliesToLink Condition="!Exists(%(_PossibleAssembliesToLink.JniAssembly))" Include="%(_PossibleAssembliesToLink.Identity)" />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- <_StartupAotProfile Condition="'%(ResolvedAssemblies.Filename)' == 'Xamarin.Forms.Platform.Android'">startup-xf.aotprofile
- <_StartupAotProfile Condition="'$(_StartupAotProfile)' == ''">startup.aotprofile
-
-
-
-
-
-
-
-
- <_AotProfiles Include="@(AndroidAotProfile)" />
-
-
-
-
-
-
- <_CilStripAssemblies Include="@(_ShrunkAssemblies)" Condition=" '%(FileName)' != 'Mono.Android' " />
-
-
-
-
-
-
-
-
-
-
-
-
-
-