Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion build-tools/automation/azure-pipelines-nightly.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ variables:
InstallerArtifactName: installers-unsigned
TestAssembliesArtifactName: test-assemblies
DotNetCoreVersion: 3.1.405
DotNet5Version: 5.0.100
DotNet5Version: 5.0.201
HostedMacImage: macOS-10.15
GitHub.Token: $(github--pat--vs-mobiletools-engineering-service2)
NUnit.NumberOfTestWorkers: 4
Expand Down
50 changes: 21 additions & 29 deletions build-tools/automation/azure-pipelines-oss.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ variables:
EXTRA_MSBUILD_ARGS: /p:AutoProvision=True /p:AutoProvisionUsesSudo=True /p:IgnoreMaxMonoVersion=False
PREPARE_FLAGS: PREPARE_CI=1 PREPARE_CI_PR=1
DotNetCoreVersion: 3.1.405
DotNet5Version: 5.0.100
DotNet5Version: 5.0.201
GitHub.Token: $(github--pat--vs-mobiletools-engineering-service2)

stages:
Expand Down Expand Up @@ -110,17 +110,11 @@ stages:
displayName: make jenkins

- script: >
echo "make create-pkg create-vsix V=1 CONFIGURATION=$(XA.Build.Configuration)" &&
make create-pkg create-vsix V=1 CONFIGURATION=$(XA.Build.Configuration)
echo "make create-installers V=1 CONFIGURATION=$(XA.Build.Configuration)" &&
make create-installers V=1 CONFIGURATION=$(XA.Build.Configuration)
workingDirectory: $(Build.SourcesDirectory)
displayName: create installers

- script: >
echo "make package-oss CONFIGURATION=$(XA.Build.Configuration) V=1" &&
make package-oss CONFIGURATION=$(XA.Build.Configuration) V=1
workingDirectory: $(Build.SourcesDirectory)
displayName: package oss

- script: >
mkdir -p bin/Build$(XA.Build.Configuration)/$(InstallerArtifactName) &&
cp bin/Build$(XA.Build.Configuration)/*.vsix bin/Build$(XA.Build.Configuration)/$(InstallerArtifactName) &&
Expand All @@ -134,6 +128,12 @@ stages:
artifactName: $(InstallerArtifactName) - macOS and Windows
targetPath: $(Build.SourcesDirectory)/bin/Build$(XA.Build.Configuration)/$(InstallerArtifactName)

- task: PublishPipelineArtifact@1
displayName: upload nupkgs
inputs:
artifactName: $(NuGetArtifactName) - macOS
targetPath: $(Build.SourcesDirectory)/bin/Build$(XA.Build.Configuration)/$(NuGetArtifactName)

- script: >
echo "all-tests CONFIGURATION=$(XA.Build.Configuration) V=1" &&
make all-tests CONFIGURATION=$(XA.Build.Configuration) V=1
Expand All @@ -146,19 +146,6 @@ stages:
workingDirectory: $(Build.SourcesDirectory)
displayName: package build status

- task: MSBuild@1
displayName: pack all nupkgs
inputs:
solution: $(Build.SourcesDirectory)/build-tools/create-packs/Microsoft.Android.Sdk.proj
configuration: $(XA.Build.Configuration)
msbuildArguments: /t:CreateAllPacks /restore /bl:$(Build.SourcesDirectory)/bin/Build$(XA.Build.Configuration)/create-all-packs.binlog

- task: PublishPipelineArtifact@1
displayName: upload nupkgs
inputs:
artifactName: $(NuGetArtifactName) - macOS
targetPath: $(Build.SourcesDirectory)/bin/Build$(XA.Build.Configuration)/$(NuGetArtifactName)

- script: >
echo "make run-performance-tests CONFIGURATION=$(XA.Build.Configuration) V=1" &&
make run-performance-tests CONFIGURATION=$(XA.Build.Configuration) V=1
Expand Down Expand Up @@ -186,6 +173,15 @@ stages:
- checkout: self
submodules: recursive

- template: yaml-templates/use-dot-net.yaml
parameters:
version: $(DotNet5Version)
remove_dotnet: true

- template: yaml-templates/use-dot-net.yaml
parameters:
version: $(DotNetCoreVersion)

- task: NuGetToolInstaller@1
displayName: 'Use NuGet 5.x'
inputs:
Expand Down Expand Up @@ -214,16 +210,12 @@ stages:
- script: make jenkins V=1 PREPARE_CI_PR=1 PREPARE_AUTOPROVISION=1 CONFIGURATION=$(XA.Build.Configuration)
displayName: make jenkins

- script: make create-nupkgs V=1 CONFIGURATION=$(XA.Build.Configuration)
displayName: make create-nupkgs

- script: make package-deb V=1 CONFIGURATION=$(XA.Build.Configuration)
displayName: make package-deb

- task: MSBuild@1
displayName: pack all nupkgs
inputs:
solution: $(System.DefaultWorkingDirectory)/build-tools/create-packs/Microsoft.Android.Sdk.proj
configuration: $(XA.Build.Configuration)
msbuildArguments: /t:CreateAllPacks /restore /bl:$(System.DefaultWorkingDirectory)/bin/Build$(XA.Build.Configuration)/create-all-packs.binlog

- script: >
mkdir -p $(System.DefaultWorkingDirectory)/bin/Build$(XA.Build.Configuration)/linux-artifacts &&
cp $(System.DefaultWorkingDirectory)/*xamarin.android*.tar.bz2 $(System.DefaultWorkingDirectory)/bin/Build$(XA.Build.Configuration)/linux-artifacts &&
Expand Down
37 changes: 13 additions & 24 deletions build-tools/automation/azure-pipelines.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ variables:
TestAssembliesArtifactName: test-assemblies
NUnitConsoleVersion: 3.11.1
DotNetCoreVersion: 3.1.405
DotNet5Version: 5.0.103
DotNet5Version: 5.0.201
HostedMacImage: macOS-10.15
HostedWinVS2019: Hosted Windows 2019 with VS2019
VSEngWinVS2019: Xamarin-Android-Win2019
Expand Down Expand Up @@ -158,7 +158,7 @@ stages:
- template: yaml-templates/upload-results.yaml
parameters:
solution: $(System.DefaultWorkingDirectory)/xamarin-android/build-tools/Xamarin.Android.Tools.BootstrapTasks/Xamarin.Android.Tools.BootstrapTasks.csproj
artifactName: Build Results - Nightly macOS
artifactName: Build Results - macOS

- script: mono $(System.DefaultWorkingDirectory)/xamarin-android/build-tools/xaprepare/xaprepare/bin/$(XA.Build.Configuration)/xaprepare.exe --s=DetermineApplicableTests --no-emoji --run-mode=CI
displayName: determine which test stages to run
Expand Down Expand Up @@ -357,11 +357,12 @@ stages:
projects: Xamarin.Android.sln
arguments: '-c $(XA.Build.Configuration) -target:Prepare -m:1 -p:AutoProvision=true -bl:$(System.DefaultWorkingDirectory)\bin\Build$(XA.Build.Configuration)\dotnet-build-prepare.binlog'

# Build, pack .nupkgs, and extract workload packs to dotnet preview test directory
- task: DotNetCoreCLI@2
displayName: Build Solution
inputs:
projects: Xamarin.Android.sln
arguments: '-c $(XA.Build.Configuration) -m:1 -bl:$(System.DefaultWorkingDirectory)\bin\Build$(XA.Build.Configuration)\dotnet-build.binlog'
arguments: '-t:PackDotNet -c $(XA.Build.Configuration) -m:1 -bl:$(System.DefaultWorkingDirectory)\bin\Build$(XA.Build.Configuration)\dotnet-build.binlog'

- task: MSBuild@1
displayName: msbuild create-vsix
Expand All @@ -370,14 +371,6 @@ stages:
configuration: $(XA.Build.Configuration)
msbuildArguments: /p:CreateVsixContainer=True /p:ZipPackageCompressionLevel=Normal /bl:$(System.DefaultWorkingDirectory)\bin\Build$(XA.Build.Configuration)\dotnet-create-vsix.binlog

# Pack .nupkgs and extract workload packs to dotnet preview test directory
- task: MSBuild@1
displayName: PackDotNet
inputs:
solution: Xamarin.Android.sln
configuration: $(XA.Build.Configuration)
msbuildArguments: /t:PackDotNet /bl:$(System.DefaultWorkingDirectory)\bin\Build$(XA.Build.Configuration)\dotnet-packdotnet.binlog

- task: MSBuild@1
displayName: msbuild xabuild
inputs:
Expand Down Expand Up @@ -414,15 +407,13 @@ stages:
displayName: install apkdiff dotnet tool
continueOnError: true

# Limit the amount of worker threads used to run these tests in parallel to half of what is currently available (8) on the Windows pool.
# Using all available cores seems to occasionally bog down our machines and cause parallel test execution to slow down dramatically.
# Only run a subset of the Xamarin.Android.Build.Tests against the local Windows build tree.
- template: yaml-templates\run-nunit-tests.yaml
parameters:
useDotNet: true
testRunTitle: Smoke MSBuild Tests - Windows Dotnet Build
testAssembly: $(System.DefaultWorkingDirectory)\bin\Test$(XA.Build.Configuration)\net472\Xamarin.Android.Build.Tests.dll
testAssembly: $(System.DefaultWorkingDirectory)\bin\Test$(XA.Build.Configuration)\netcoreapp3.1\Xamarin.Android.Build.Tests.dll
testResultsFile: TestResult-SmokeMSBuildTests-WinDotnetBuildTree-$(XA.Build.Configuration).xml
nunitConsoleExtraArgs: --where "cat == SmokeTests"
dotNetTestExtraArgs: --filter "TestCategory = SmokeTests $(DotNetNUnitCategories)"

- template: yaml-templates\upload-results.yaml
parameters:
Expand Down Expand Up @@ -489,15 +480,13 @@ stages:
workingDirectory: $(System.DefaultWorkingDirectory)/xamarin-android
displayName: make jenkins

- task: MSBuild@1
displayName: pack all nupkgs
- task: DotNetCoreCLI@2
displayName: extract workload packs
inputs:
solution: $(System.DefaultWorkingDirectory)/xamarin-android/build-tools/create-packs/Microsoft.Android.Sdk.proj
configuration: $(XA.Build.Configuration)
msbuildArguments: >-
/t:CreateAllPacks,ExtractWorkloadPacks /restore
/p:NuGetLicense=$(System.DefaultWorkingDirectory)/xamarin-android/external/monodroid/tools/scripts/License.txt
/bl:$(System.DefaultWorkingDirectory)/xamarin-android/bin/Build$(XA.Build.Configuration)/create-all-packs.binlog
projects: $(System.DefaultWorkingDirectory)/xamarin-android/build-tools/create-packs/Microsoft.Android.Sdk.proj
arguments: >-
-t:CreateAllPacks,ExtractWorkloadPacks -c $(XA.Build.Configuration)
-bl:$(System.DefaultWorkingDirectory)/xamarin-android/bin/Build$(XA.Build.Configuration)/create-all-packs.binlog

- script: >
mkdir -p $(System.DefaultWorkingDirectory)/xamarin-android/bin/Build$(XA.Build.Configuration)/nuget-linux &&
Expand Down
18 changes: 3 additions & 15 deletions build-tools/automation/yaml-templates/commercial-build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -86,28 +86,16 @@ steps:
/p:MicroBuildOverridePluginDirectory=$(Build.StagingDirectory)/MicroBuild/Plugins
/bl:${{ parameters.xaSourcePath }}/bin/Build$(XA.Build.Configuration)/restore-sign-pkg-content.binlog

# Create and upload .nupkgs
- task: MSBuild@1
displayName: pack all nupkgs
inputs:
solution: ${{ parameters.xaSourcePath }}/build-tools/create-packs/Microsoft.Android.Sdk.proj
configuration: $(XA.Build.Configuration)
msbuildArguments: >-
/t:CreateAllPacks
/restore
/p:NuGetLicense=${{ parameters.xaSourcePath }}/external/monodroid/tools/scripts/License.txt
/bl:${{ parameters.xaSourcePath }}/bin/Build$(XA.Build.Configuration)/create-all-packs.binlog
- script: make create-installers V=1 CONFIGURATION=$(XA.Build.Configuration)
workingDirectory: ${{ parameters.xaSourcePath }}
displayName: make create-installers

- task: PublishPipelineArtifact@1
displayName: upload nupkgs
inputs:
artifactName: $(NuGetArtifactName)
targetPath: ${{ parameters.xaSourcePath }}/bin/Build$(XA.Build.Configuration)/$(NuGetArtifactName)

- script: make create-installers V=1 CONFIGURATION=$(XA.Build.Configuration)
workingDirectory: ${{ parameters.xaSourcePath }}
displayName: make create-installers

- script: >
mkdir -p bin/Build$(XA.Build.Configuration)/$(InstallerArtifactName) &&
cp bin/Build$(XA.Build.Configuration)/*.vsix bin/Build$(XA.Build.Configuration)/$(InstallerArtifactName) &&
Expand Down
25 changes: 13 additions & 12 deletions build-tools/create-packs/Directory.Build.targets
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@

<!-- LICENSE setup -->
<PropertyGroup>
<NuGetLicense Condition="Exists('$(XamarinAndroidSourcePath)external\monodroid\tools\scripts\License.txt')">$(XamarinAndroidSourcePath)external\monodroid\tools\scripts\License.txt</NuGetLicense>
<NuGetLicense Condition=" '$(NuGetLicense)' == '' ">$(XamarinAndroidSourcePath)LICENSE</NuGetLicense>
<PackageLicenseFile>LICENSE</PackageLicenseFile>
</PropertyGroup>
Expand Down Expand Up @@ -71,23 +72,23 @@
</Target>

<Target Name="BuildILLinkCustomStep">
<Exec Command="$(DotNetPreviewTool) build -p:Configuration=$(Configuration) &quot;$(XamarinAndroidSourcePath)src\Microsoft.Android.Sdk.ILLink\Microsoft.Android.Sdk.ILLink.csproj&quot;" />
<Exec Command="dotnet build -p:Configuration=$(Configuration) &quot;$(XamarinAndroidSourcePath)src\Microsoft.Android.Sdk.ILLink\Microsoft.Android.Sdk.ILLink.csproj&quot;" />
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we put a note, we could potentially build this project normally when we get #5806? Then msbuild on Mac could build net5.0, and we could put it in Xamarin.Android.sln like a normal project?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I dropped a note on the other PR, we can potentially include these changes there 👍

</Target>

<Target Name="CreateAllPacks"
DependsOnTargets="BuildILLinkCustomStep;DeleteExtractedWorkloadPacks;_SetGlobalProperties">
<RemoveDir Directories="$(XamarinAndroidSourcePath)bin\Build$(Configuration)\nuget-unsigned" />
<Exec Command="$(DotNetPreviewTool) pack @(_GlobalProperties, ' ') -p:AndroidRID=android-arm -p:AndroidABI=armeabi-v7a-net6 &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Runtime.proj&quot;" />
<Exec Command="$(DotNetPreviewTool) pack @(_GlobalProperties, ' ') -p:AndroidRID=android-arm64 -p:AndroidABI=arm64-v8a-net6 &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Runtime.proj&quot;" />
<Exec Command="$(DotNetPreviewTool) pack @(_GlobalProperties, ' ') -p:AndroidRID=android-x86 -p:AndroidABI=x86-net6 &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Runtime.proj&quot;" />
<Exec Command="$(DotNetPreviewTool) pack @(_GlobalProperties, ' ') -p:AndroidRID=android-x64 -p:AndroidABI=x86_64-net6 &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Runtime.proj&quot;" />
<Exec Command="$(DotNetPreviewTool) pack @(_GlobalProperties, ' ') &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Ref.proj&quot;" />
<Exec Command="$(DotNetPreviewTool) pack @(_GlobalProperties, ' ') -p:HostOS=Linux &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Sdk.proj&quot;" Condition=" '$(HostOS)' == 'Linux' " />
<Exec Command="$(DotNetPreviewTool) pack @(_GlobalProperties, ' ') -p:HostOS=Darwin &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Sdk.proj&quot;" Condition=" '$(HostOS)' == 'Darwin' " />
<Exec Command="$(DotNetPreviewTool) pack @(_GlobalProperties, ' ') -p:HostOS=Windows &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Sdk.proj&quot;" Condition=" '$(HostOS)' != 'Linux' " /> <!-- Windows pack should be built both Windows and macOS -->
<Exec Command="$(DotNetPreviewTool) pack @(_GlobalProperties, ' ') &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Sdk.BundleTool.proj&quot;" />
<Exec Command="$(DotNetPreviewTool) pack @(_GlobalProperties, ' ') &quot;$(MSBuildThisFileDirectory)Microsoft.NET.Workload.Android.proj&quot;" />
<Exec Command="$(DotNetPreviewTool) pack @(_GlobalProperties, ' ') &quot;$(XamarinAndroidSourcePath)src\Microsoft.Android.Templates\Microsoft.Android.Templates.csproj&quot;" />
<Exec Command="dotnet pack @(_GlobalProperties, ' ') -p:AndroidRID=android-arm -p:AndroidABI=armeabi-v7a-net6 &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Runtime.proj&quot;" />
<Exec Command="dotnet pack @(_GlobalProperties, ' ') -p:AndroidRID=android-arm64 -p:AndroidABI=arm64-v8a-net6 &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Runtime.proj&quot;" />
<Exec Command="dotnet pack @(_GlobalProperties, ' ') -p:AndroidRID=android-x86 -p:AndroidABI=x86-net6 &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Runtime.proj&quot;" />
<Exec Command="dotnet pack @(_GlobalProperties, ' ') -p:AndroidRID=android-x64 -p:AndroidABI=x86_64-net6 &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Runtime.proj&quot;" />
<Exec Command="dotnet pack @(_GlobalProperties, ' ') &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Ref.proj&quot;" />
<Exec Command="dotnet pack @(_GlobalProperties, ' ') -p:HostOS=Linux &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Sdk.proj&quot;" Condition=" '$(HostOS)' == 'Linux' " />
<Exec Command="dotnet pack @(_GlobalProperties, ' ') -p:HostOS=Darwin &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Sdk.proj&quot;" Condition=" '$(HostOS)' == 'Darwin' " />
<Exec Command="dotnet pack @(_GlobalProperties, ' ') -p:HostOS=Windows &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Sdk.proj&quot;" Condition=" '$(HostOS)' != 'Linux' " /> <!-- Windows pack should be built both Windows and macOS -->
<Exec Command="dotnet pack @(_GlobalProperties, ' ') &quot;$(MSBuildThisFileDirectory)Microsoft.Android.Sdk.BundleTool.proj&quot;" />
<Exec Command="dotnet pack @(_GlobalProperties, ' ') &quot;$(MSBuildThisFileDirectory)Microsoft.NET.Workload.Android.proj&quot;" />
<Exec Command="dotnet pack @(_GlobalProperties, ' ') &quot;$(XamarinAndroidSourcePath)src\Microsoft.Android.Templates\Microsoft.Android.Templates.csproj&quot;" />
</Target>

<Target Name="ExtractWorkloadPacks"
Expand Down
1 change: 0 additions & 1 deletion build-tools/create-packs/Microsoft.Android.Sdk.proj
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,6 @@ core workload sdk packs imported by Microsoft.NET.Workload.Android.
<_PackageFiles Include="$(ToolsSourceDir)**" PackagePath="tools" />
<_PackageFiles Include="$(NetCoreAppToolsSourceDir)generator.dll" PackagePath="tools" />
<_PackageFiles Include="$(NetCoreAppToolsSourceDir)generator.runtimeconfig.json" PackagePath="tools" />
<_PackageFiles Include="$(NetCoreAppToolsSourceDir)Java.Interop.Tools.Generator.dll" PackagePath="tools" />
<_PackageFiles Include="$(NetCoreAppToolsSourceDir)javadoc-to-mdoc.dll" PackagePath="tools" />
<_PackageFiles Include="$(NetCoreAppToolsSourceDir)javadoc-to-mdoc.runtimeconfig.json" PackagePath="tools" />
<_PackageFiles Include="$(XAInstallPrefix)xbuild-frameworks\Microsoft.Android\Version*" PackagePath="tools" />
Expand Down
5 changes: 4 additions & 1 deletion build-tools/scripts/Packaging.mk
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,10 @@ USE_COMMERCIAL_INSTALLER_NAME=true
EXPERIMENTAL=false
endif

create-installers: create-pkg create-vsix
create-installers: create-nupkgs create-pkg create-vsix

create-nupkgs:
$(call DOTNET_BINLOG,create-all-packs) -t:CreateAllPacks $(topdir)/build-tools/create-packs/Microsoft.Android.Sdk.proj

create-pkg:
MONO_IOMAP=all MONO_OPTIONS="$(MONO_OPTIONS)" $(call MSBUILD_BINLOG,create-pkg) /p:Configuration=$(CONFIGURATION) /t:CreatePkg \
Expand Down
8 changes: 8 additions & 0 deletions build-tools/scripts/msbuild.mk
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@
# $(MSBUILD_FLAGS): Additional MSBuild flags; contains $(CONFIGURATION), $(V), $(MSBUILD_ARGS).

MSBUILD = msbuild
DOTNET_TOOL = dotnet
DOTNET_VERB = build
MSBUILD_FLAGS = /p:Configuration=$(CONFIGURATION) $(MSBUILD_ARGS)

ifeq ($(OS_NAME),Darwin)
Expand All @@ -43,6 +45,12 @@ define MSBUILD_BINLOG
/binaryLogger:"$(dir $(realpath $(firstword $(MAKEFILE_LIST))))/bin/$(if $(3),$(3),Build)$(CONFIGURATION)/msbuild-`date +%Y%m%dT%H%M%S`-$(1).binlog"
endef

# $(call DOTNET_BINLOG,name,dotnet=$(DOTNET_TOOL)) build=$(DOTNET_VERB)
define DOTNET_BINLOG
$(if $(2),$(2),$(DOTNET_TOOL)) $(DOTNET_VERB) -c $(CONFIGURATION) -v:n \
-bl:"$(dir $(realpath $(firstword $(MAKEFILE_LIST))))/bin/Build$(CONFIGURATION)/msbuild-`date +%Y%m%dT%H%M%S`-$(1).binlog"
endef

else # $(MSBUILD) != 1
_CSC_EMITS_PDB := $(shell if $(_PKG_CONFIG) --atleast-version=4.9 mono ; then echo Pdb; fi )
ifeq ($(_CSC_EMITS_PDB),Pdb)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\Configuration.props" />
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<TargetFramework>net5.0</TargetFramework>
<DefineConstants>NET5_LINKER</DefineConstants>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<OutputPath>$(XAInstallPrefix)xbuild\Xamarin\Android\</OutputPath>
Expand Down