Skip to content
Closed
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: 2 additions & 0 deletions Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,7 @@
<RepositoryType>git</RepositoryType>
<RepositoryBranch>$(BUILD_SOURCEBRANCH)</RepositoryBranch>
<RepositoryCommit>$(BUILD_SOURCEVERSION)</RepositoryCommit>
<PackageVersionSuffix>-net6preview03</PackageVersionSuffix>
<PackageVersionSuffix Condition=" '$(BUILD_BUILDID)' != '' ">$(PackageVersionSuffix).$(BUILD_BUILDID)</PackageVersionSuffix>
</PropertyGroup>
</Project>
45 changes: 40 additions & 5 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,14 @@ variables:
BUILD_NUMBER: $(Build.BuildNumber)
BUILD_COMMIT: $(Build.SourceVersion)
PRE_RESTORE_PROJECTS: true # Windows is having an issue on CI right now
DotNetCoreVersion: 3.1.x
DotNet6Version: 6.0.100-preview.3.21202.5
DotNet6AndroidMsi: https://dl.internalx.com/vsts-devdiv/Xamarin.Android/public/net6/4624420/6.0.1xx-preview3/7d6cd1cde4182d7db2cfc5d0b55364c972b6d34f/Microsoft.NET.Workload.Android.11.0.200.196.msi
DotNet6AndroidPkg: https://dl.internalx.com/vsts-devdiv/Xamarin.Android/public/net6/4624420/6.0.1xx-preview3/7d6cd1cde4182d7db2cfc5d0b55364c972b6d34f/Microsoft.NET.Workload.Android-11.0.200-preview.3.196.pkg
XamarinAndroidVsix: https://dl.internalx.com/vsts-devdiv/Xamarin.Android/public/4624420/6.0.1xx-preview3/7d6cd1cde4182d7db2cfc5d0b55364c972b6d34f/signed/Xamarin.Android.Sdk-11.2.99.196.vsix
XamarinAndroidPkg: https://dl.internalx.com/vsts-devdiv/Xamarin.Android/public/4624420/6.0.1xx-preview3/7d6cd1cde4182d7db2cfc5d0b55364c972b6d34f/xamarin.android-11.2.99.196.pkg
# TODO: remove before merging
NugetSecurityAnalysisWarningLevel: warn
# XAMARIN_ANDROID_PATH: <path to Xamarin.Android>

resources:
Expand All @@ -29,19 +37,46 @@ jobs:
timeoutInMinutes: 120
validPackagePrefixes: [ 'Xamarin' ]
areaPath: 'DevDiv\Xamarin SDK\Android'
dotnet: ''
initSteps:
- task: UseDotNet@2
displayName: install .NET $(DotNetCoreVersion)
inputs:
version: $(DotNetCoreVersion)
installationPath: /usr/local/share/dotnet/
condition: eq(variables['System.JobName'], 'macos')
- bash: >
export DOTNET_ROOT=/usr/local/share/dotnet/ &&
export PATH="$DOTNET_ROOT:~/.dotnet/tools:$PATH" &&
curl -L https://dot.net/v1/dotnet-install.sh > dotnet-install.sh &&
sh dotnet-install.sh --version $(DotNet6Version) --install-dir $DOTNET_ROOT --verbose &&
dotnet --list-sdks &&
echo "##vso[task.setvariable variable=PATH]$PATH"
displayName: install .NET $(DotNet6Version)
condition: eq(variables['System.JobName'], 'macos')
- pwsh: |
$ProgressPreference = 'SilentlyContinue'
Invoke-WebRequest -Uri "https://dot.net/v1/dotnet-install.ps1" -OutFile dotnet-install.ps1
& .\dotnet-install.ps1 -Version $(DotNet6Version) -InstallDir "$env:ProgramFiles\dotnet\" -Verbose
& dotnet --list-sdks
displayName: install .NET $(DotNet6Version)
condition: eq(variables['System.JobName'], 'windows')
preBuildSteps:
- pwsh: |
dotnet tool uninstall --global Cake.Tool
dotnet tool install --global Cake.Tool
dotnet tool install --global boots
boots https://aka.ms/xamarin-android-commercial-d16-9-macos
displayName: install .NET global tools
- pwsh: |
boots $(DotNet6AndroidPkg)
boots $(XamarinAndroidPkg)
condition: eq(variables['System.JobName'], 'macos')
displayName: install Xamarin.Android
- pwsh: |
dotnet tool uninstall --global Cake.Tool
dotnet tool install --global Cake.Tool
dotnet tool install --global boots
boots https://aka.ms/xamarin-android-commercial-d16-9-windows
boots $(DotNet6AndroidMsi)
boots $(XamarinAndroidVsix)
condition: eq(variables['System.JobName'], 'windows')
displayName: install Xamarin.Android
tools:
- 'xamarin.androidbinderator.tool': '0.4.2'
- 'xamarin.androidx.migration.tool': '1.0.7.1'
Expand Down
26 changes: 10 additions & 16 deletions build.cake
Original file line number Diff line number Diff line change
Expand Up @@ -604,23 +604,21 @@ Task("libs")
.IsDependentOn("libs-native")
.Does(() =>
{
var settings = new MSBuildSettings()
var settings = new DotNetCoreMSBuildSettings()
.SetConfiguration(CONFIGURATION)
.SetVerbosity(VERBOSITY)
.SetMaxCpuCount(0)
.EnableBinaryLogger($"./output/libs.{CONFIGURATION}.binlog")
.WithRestore()
.WithProperty("MigrationPackageVersion", MIGRATION_PACKAGE_VERSION)
.WithProperty("DesignTimeBuild", "false")
.WithProperty("AndroidSdkBuildToolsVersion", $"{AndroidSdkBuildTools}");

if (!string.IsNullOrEmpty(ANDROID_HOME))
settings.WithProperty("AndroidSdkDirectory", $"{ANDROID_HOME}");

if (!string.IsNullOrEmpty(MSBUILD_PATH))
settings.ToolPath = MSBUILD_PATH;

MSBuild("./generated/AndroidX.sln", settings);
DotNetCoreRestore("./generated/AndroidX.sln", new DotNetCoreRestoreSettings
{
MSBuildSettings = settings.EnableBinaryLogger("./output/restore.binlog")
});
DotNetCoreMSBuild("./generated/AndroidX.sln", settings.EnableBinaryLogger($"./output/libs.{CONFIGURATION}.binlog"));
});

Task("libs-native")
Expand All @@ -642,9 +640,8 @@ Task("nuget")
.IsDependentOn("libs")
.Does(() =>
{
var settings = new MSBuildSettings()
var settings = new DotNetCoreMSBuildSettings()
.SetConfiguration(CONFIGURATION)
.SetVerbosity(VERBOSITY)
.SetMaxCpuCount(0)
.EnableBinaryLogger($"./output/nuget.{CONFIGURATION}.binlog")
.WithProperty("MigrationPackageVersion", MIGRATION_PACKAGE_VERSION)
Expand All @@ -656,10 +653,7 @@ Task("nuget")
if (!string.IsNullOrEmpty(ANDROID_HOME))
settings.WithProperty("AndroidSdkDirectory", $"{ANDROID_HOME}");

if (!string.IsNullOrEmpty(MSBUILD_PATH))
settings.ToolPath = MSBUILD_PATH;

MSBuild("./generated/AndroidX.sln", settings);
DotNetCoreMSBuild("./generated/AndroidX.sln", settings);
});

Task("samples-generate-all-targets")
Expand Down Expand Up @@ -931,7 +925,7 @@ Task("migration-libs")
.SetMaxCpuCount(0)
.EnableBinaryLogger($"./output/migration-libs.{CONFIGURATION}.binlog")
.WithRestore()
.WithProperty("PackageVersion", MIGRATION_PACKAGE_VERSION);
.WithProperty("MigrationPackageVersion", MIGRATION_PACKAGE_VERSION);

if (!string.IsNullOrEmpty(ANDROID_HOME))
settings.WithProperty("AndroidSdkDirectory", $"{ANDROID_HOME}");
Expand All @@ -953,7 +947,7 @@ Task("migration-nuget")
.EnableBinaryLogger($"./output/migration-nuget.{CONFIGURATION}.binlog")
.WithProperty("NoBuild", "true")
.WithRestore()
.WithProperty("PackageVersion", MIGRATION_PACKAGE_VERSION)
.WithProperty("MigrationPackageVersion", MIGRATION_PACKAGE_VERSION)
.WithProperty("MultiDexVersion", MULTIDEX_PACKAGE_VERSION)
.WithProperty("PackageRequireLicenseAcceptance", "true")
.WithProperty("PackageOutputPath", MakeAbsolute((DirectoryPath)"./output/").FullPath)
Expand Down
6 changes: 3 additions & 3 deletions config.json
Original file line number Diff line number Diff line change
Expand Up @@ -901,23 +901,23 @@
"groupId": "com.google.guava",
"artifactId": "guava",
"version": "28.2.0",
"nugetVersion": "28.2.0",
"nugetVersion": "28.2.0-net6preview02.4534767",
"nugetId": "Xamarin.Google.Guava",
"dependencyOnly": true
},
{
"groupId": "com.google.guava",
"artifactId": "failureaccess",
"version": "1.0.1",
"nugetVersion": "1.0.1.2",
"nugetVersion": "1.0.1.2-net6preview02.4534767",
"nugetId": "Xamarin.Google.Guava.FailureAccess",
"dependencyOnly": true
},
{
"groupId": "com.google.guava",
"artifactId": "listenablefuture",
"version": "1.0",
"nugetVersion": "1.0.0.2",
"nugetVersion": "1.0.0.2-net6preview02.4534767",
"nugetId": "Xamarin.Google.Guava.ListenableFuture",
"dependencyOnly": true
},
Expand Down
11 changes: 11 additions & 0 deletions generated/global.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"sdk": {
"version": "6.0.100-preview.3.21202.5",
"rollForward": "disable",
"allowPrerelease": true
},
"msbuild-sdks": {
"Microsoft.Build.Traversal": "2.1.1",
"Xamarin.Legacy.Sdk": "0.1.0-alpha2"
}
}
3 changes: 2 additions & 1 deletion global.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"msbuild-sdks":
{
"Microsoft.Build.Traversal": "2.1.1"
"Microsoft.Build.Traversal": "2.1.1",
"Xamarin.Legacy.Sdk": "0.1.0-alpha2"
}
}
13 changes: 13 additions & 0 deletions nuget.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<!-- ensure only the sources defined below are used -->
<add key="dotnet6" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet6/nuget/v3/index.json" />
<add key="xamarin" value="https://pkgs.dev.azure.com/azure-public/vside/_packaging/xamarin-impl/nuget/v3/index.json" />
<add key="nuget" value="https://api.nuget.org/v3/index.json" />
</packageSources>
<config>
<add key="globalPackagesFolder" value="packages" />
</config>
</configuration>
21 changes: 7 additions & 14 deletions source/AndroidXProject.cshtml
Original file line number Diff line number Diff line change
@@ -1,24 +1,15 @@
@using System.Linq
<Project Sdk="MSBuild.Sdk.Extras/2.0.54">
<Project Sdk="Xamarin.Legacy.Sdk">
<PropertyGroup>
<TargetFramework>MonoAndroid9.0</TargetFramework>
<TargetFrameworks>MonoAndroid9.0;net6.0-android</TargetFrameworks>
<IsBindingProject>true</IsBindingProject>
@if (!string.IsNullOrEmpty(Model.AssemblyName)) {
<AssemblyName>@(Model.AssemblyName)</AssemblyName>
} else {
<AssemblyName>@(Model.NuGetPackageId)</AssemblyName>
}
<MonoAndroidResourcePrefix>Resources</MonoAndroidResourcePrefix>
<MonoAndroidAssetsPrefix>Assets</MonoAndroidAssetsPrefix>
<AndroidUseLatestPlatformSdk>False</AndroidUseLatestPlatformSdk>
<AndroidUseIntermediateDesignerFile>True</AndroidUseIntermediateDesignerFile>
<AndroidResgenFile>Resources\Resource.designer.cs</AndroidResgenFile>
<AndroidUseIntermediateDesignerFile>false</AndroidUseIntermediateDesignerFile>
<RootNamespace>@(Model.NuGetPackageId.Replace("Xamarin.", ""))</RootNamespace>
<EnableProguard>true</EnableProguard>
<AndroidEnableMultiDex>true</AndroidEnableMultiDex>
<AndroidUseAapt2>true</AndroidUseAapt2>
<AndroidDexTool>d8</AndroidDexTool>
<AndroidLinkTool>r8</AndroidLinkTool>
<!--
No warnings for:
- CS0618: 'member' is obsolete: 'text'
Expand Down Expand Up @@ -75,8 +66,10 @@
</ItemGroup>

<ItemGroup>
<None Include="@(Model.NuGetPackageId).targets" Pack="True" PackagePath="build\$(TargetFramework)" />
<None Include="@(Model.NuGetPackageId).targets" Pack="True" PackagePath="buildTransitive\$(TargetFramework)" />
<None Include="@(Model.NuGetPackageId).targets" Pack="True" PackagePath="build\monoandroid90" />
<None Include="@(Model.NuGetPackageId).targets" Pack="True" PackagePath="build\net6.0-android30.0" />
<None Include="@(Model.NuGetPackageId).targets" Pack="True" PackagePath="buildTransitive\monoandroid90" />
<None Include="@(Model.NuGetPackageId).targets" Pack="True" PackagePath="buildTransitive\net6.0-android30.0" />
<None Include="..\..\LICENSE.md" Pack="True" PackagePath="LICENSE.md" />
</ItemGroup>

Expand Down
1 change: 1 addition & 0 deletions source/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,4 @@
[assembly: AssemblyMetadata ("BUILD_TIMESTAMP", "{BUILD_TIMESTAMP}")]

[assembly: Android.LinkerSafe]
[assembly: AssemblyMetadata ("IsTrimmable", "True")]
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<Project Sdk="MSBuild.Sdk.Extras/2.0.54">
<Project Sdk="Xamarin.Legacy.Sdk">
<PropertyGroup>
<TargetFramework>MonoAndroid90</TargetFramework>
<TargetFrameworks>MonoAndroid90;net6.0-android</TargetFrameworks>
<AssemblyName>Xamarin.AndroidX.AppCompat.Resources</AssemblyName>
<MonoAndroidResourcePrefix>Resources</MonoAndroidResourcePrefix>
<MonoAndroidAssetsPrefix>Assets</MonoAndroidAssetsPrefix>
Expand Down Expand Up @@ -37,7 +37,7 @@
<PackageProjectUrl>https://go.microsoft.com/fwlink/?linkid=2113238</PackageProjectUrl>
<PackageLicenseFile>LICENSE.md</PackageLicenseFile>
<PackageIconUrl>https://go.microsoft.com/fwlink/?linkid=2099392</PackageIconUrl>
<PackageVersion>1.1.0.1</PackageVersion>
<PackageVersion>1.1.0.1$(PackageVersionSuffix)</PackageVersion>
<PackageRequireLicenseAcceptance>true</PackageRequireLicenseAcceptance>
<!-- Include symbol files (*.pdb) in the built .nupkg -->
<AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<Project Sdk="MSBuild.Sdk.Extras/2.0.54">
<Project Sdk="Xamarin.Legacy.Sdk">
<PropertyGroup>
<TargetFramework>MonoAndroid90</TargetFramework>
<TargetFrameworks>MonoAndroid90;net6.0-android</TargetFrameworks>
<IsBindingProject>true</IsBindingProject>
<AssemblyName>Xamarin.Google.Android.Material.Extensions</AssemblyName>
<MonoAndroidResourcePrefix>Resources</MonoAndroidResourcePrefix>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
<TargetFramework>netstandard2.0</TargetFramework>
<LangVersion>latest</LangVersion>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
<PackageVersion Condition=" '$(MigrationPackageVersion)' != '' ">$(MigrationPackageVersion)$(PackageVersionSuffix)</PackageVersion>
</PropertyGroup>

<PropertyGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
<Title>Migration Tools for Xamarin AndroidX</Title>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
<AssemblyFileVersion>1.0.0.0</AssemblyFileVersion>
<PackageVersion Condition=" '$(MigrationPackageVersion)' != '' ">$(MigrationPackageVersion)$(PackageVersionSuffix)</PackageVersion>
<Description>This package provides a set of tools and MSBuild tasks to aid in the migration from Android Support to Android X.</Description>
<Summary>This package provides a set of tools and MSBuild tasks to aid in the migration from Android Support to Android X.</Summary>
<PackageProjectUrl>https://go.microsoft.com/fwlink/?linkid=2099353</PackageProjectUrl>
Expand Down