diff --git a/images/macos/provision/configuration/environment/bashrc b/images/macos/provision/configuration/environment/bashrc
index 2ffdeb0bc..65895e7b6 100644
--- a/images/macos/provision/configuration/environment/bashrc
+++ b/images/macos/provision/configuration/environment/bashrc
@@ -4,8 +4,6 @@ export LANG=en_US.UTF-8
export ANDROID_HOME=${HOME}/Library/Android/sdk
export ANDROID_SDK_ROOT=${HOME}/Library/Android/sdk
-export ANDROID_NDK_HOME=${ANDROID_HOME}/ndk-bundle
-export ANDROID_NDK_ROOT=${ANDROID_HOME}/ndk-bundle
export VM_ASSETS=/usr/local/opt/$USER/scripts
@@ -16,7 +14,7 @@ export AGENT_TOOLSDIRECTORY=$HOME/hostedtoolcache
export RUNNER_TOOL_CACHE=$HOME/hostedtoolcache
export PATH=/Library/Frameworks/Mono.framework/Versions/Current/Commands:$PATH
-export PATH=$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_NDK_HOME:$PATH
+export PATH=$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$PATH
export PATH=/usr/local/bin:/usr/local/sbin:~/bin:~/.yarn/bin:$PATH
export PATH="/usr/local/opt/curl/bin:$PATH"
export PATH=$HOME/.cargo/bin:$PATH
diff --git a/images/macos/provision/core/android-toolsets.sh b/images/macos/provision/core/android-toolsets.sh
index 3507a4a6b..c20dc7d77 100755
--- a/images/macos/provision/core/android-toolsets.sh
+++ b/images/macos/provision/core/android-toolsets.sh
@@ -32,7 +32,6 @@ ANDROID_EXTRA_LIST=($(get_toolset_value '.android."extra-list"[]'))
ANDROID_ADDON_LIST=($(get_toolset_value '.android."addon-list"[]'))
ANDROID_ADDITIONAL_TOOLS=($(get_toolset_value '.android."additional-tools"[]'))
ANDROID_NDK_MAJOR_VERSIONS=($(get_toolset_value '.android.ndk."versions"[]'))
-ANDROID_NDK_MAJOR_DEFAULT=$(get_toolset_value '.android.ndk.default')
ANDROID_NDK_MAJOR_LATEST=$(get_toolset_value '.android.ndk."versions"[-1]')
# Get the latest command line tools from https://developer.android.com/studio#cmdline-tools
cmdlineToolsVersion=$(get_toolset_value '.android."cmdline-tools"')
@@ -81,12 +80,8 @@ do
ndk_full_version=$(get_full_ndk_version $ndk_version)
echo y | $SDKMANAGER "ndk;$ndk_full_version"
done
-# This changes were added due to incompatibility with android ndk-bundle (ndk;22.0.7026061).
-# Link issue virtual-environments: https://github.com/actions/virtual-environments/issues/2481
-# Link issue xamarin-android: https://github.com/xamarin/xamarin-android/issues/5526
-ndkDefault=$(get_full_ndk_version $ANDROID_NDK_MAJOR_DEFAULT)
+
ndkLatest=$(get_full_ndk_version $ANDROID_NDK_MAJOR_LATEST)
-ln -s $ANDROID_HOME/ndk/$ndkDefault $ANDROID_HOME/ndk-bundle
ANDROID_NDK_LATEST_HOME=$ANDROID_HOME/ndk/$ndkLatest
echo "export ANDROID_NDK_LATEST_HOME=$ANDROID_NDK_LATEST_HOME" >> "${HOME}/.bashrc"
@@ -126,17 +121,4 @@ do
echo y | $SDKMANAGER "$tool_name"
done
-popd
-
-echo "Installing ProGuard-5..."
-PROGUARD_LOCATION="https://github.com/Guardsquare/proguard/archive/proguard5.3.3.tar.gz"
-pushd $ANDROID_HOME
-cd tools
-mv proguard proguard4
-mkdir proguard && cd proguard
-curl -L -o proguard5.tgz $PROGUARD_LOCATION
-tar xzf proguard5.tgz --strip 1 && rm -f proguard5.tgz
-cp ../proguard4/proguard-*.txt . # Copy the Proguard Android definitions from the previous version
-popd
-
invoke_tests "Android"
diff --git a/images/macos/provision/core/xamarin-android-ndk.sh b/images/macos/provision/core/xamarin-android-ndk.sh
deleted file mode 100644
index 82896b46c..000000000
--- a/images/macos/provision/core/xamarin-android-ndk.sh
+++ /dev/null
@@ -1,66 +0,0 @@
-#!/bin/bash -e -o pipefail
-source ~/utils/utils.sh
-
-ANDROID_HOME=$HOME/Library/Android/sdk
-ANDROID_NDK_HOME=$ANDROID_HOME/ndk-bundle
-SDKMANAGER=$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager
-
-# Android NDK v16 is not compatible with old Xamarin.Android SDK
-# and fails builds with BundleAssemblies enabled
-ANDROID_NDK_15_HOME=$HOME/Library/Android/sdk/android-ndk-r15c
-ANDROID_NDK_PACKAGE="android-ndk-r15c-darwin-x86_64.zip"
-ANDROID_NDK_URL="https://dl.google.com/android/repository/${ANDROID_NDK_PACKAGE}"
-
-echo "Install and setup Android NDK v15..."
-cd $HOME
-
-download_with_retries $ANDROID_NDK_URL
-
-echo "Unzipping $ANDROID_NDK_URL..."
-unzip -q $ANDROID_NDK_PACKAGE -d ${ANDROID_HOME}
-
-echo "Removing $ANDROID_NDK_URL..."
-rm -rf "$ANDROID_NDK_PACKAGE"
-
-XAMARIN_ANDROID_NDK_PATH=$HOME/Library/Developer/Xamarin
-mkdir -p $XAMARIN_ANDROID_NDK_PATH
-
-echo "Preparing symlink for $ANDROID_NDK_15_HOME ..."
-ln -s $ANDROID_NDK_15_HOME $XAMARIN_ANDROID_NDK_PATH/android-ndk
-
-# NDK r17 does not include MIPS/MIPS64 toolchains anymore, NDK r16b still provides this a supplement
-echo "Checking NDK installation contains required MIPS toolchains…"
-NDK_BUNDLE_TOOLCHAINS=$ANDROID_NDK_HOME/toolchains
-ANDROID_NDK_R16B_PATH=$ANDROID_HOME/ndk/16.1.4479499
-MIPS64_TOOLCHAIN=$NDK_BUNDLE_TOOLCHAINS/mips64el-linux-android-4.9/prebuilt/darwin-x86_64/bin
-MIPS_TOOLCHAIN=$NDK_BUNDLE_TOOLCHAINS/mipsel-linux-android-4.9/prebuilt/darwin-x86_64/bin
-
-if [ -d $MIPS64_TOOLCHAIN ] && [ -d $MIPS_TOOLCHAIN ]; then
- echo "MIPS64 and MIPS toolchain already installed for NDK bundle - not reinstalling."
-else
- pushd $ANDROID_HOME
-
- echo "Installing ndk r16b..."
- echo y | $SDKMANAGER "ndk;16.1.4479499"
-
- echo "Cleaning potential pre-existing MIPS toolchain directories"
- rm -rf ndk-bundle/toolchains/mips*
-
- echo "Moving MIPS toolchains to $ANDROID_NDK_HOME/toolchains"
- mv $ANDROID_NDK_R16B_PATH/toolchains/mips** ndk-bundle/toolchains/
-
- echo "Delete ndk r16b..."
- rm -rf $ANDROID_NDK_R16B_PATH
-
- if [ ! -d $MIPS64_TOOLCHAIN ] || [ ! -d $MIPS_TOOLCHAIN ]; then
- echo "MIPS toolchains not installed correctly! Check whether $ANDROID_NDK_HOME/toolchains/mips* does not exist."
- fi
- popd
-fi
-
-# Latest versions of NDK doesn't include GCC, NDK r18 does
-echo "Installing ndk r18B..."
-echo y | $SDKMANAGER "ndk;18.1.5063045"
-echo "export ANDROID_NDK_18R_PATH=${ANDROID_HOME}/ndk/18.1.5063045" >> "${HOME}/.bashrc"
-
-invoke_tests "XamarinNDK"
diff --git a/images/macos/software-report/SoftwareReport.Android.psm1 b/images/macos/software-report/SoftwareReport.Android.psm1
index 919733322..97b961483 100644
--- a/images/macos/software-report/SoftwareReport.Android.psm1
+++ b/images/macos/software-report/SoftwareReport.Android.psm1
@@ -94,13 +94,13 @@ function Build-AndroidTable {
}
function Build-AndroidEnvironmentTable {
- $androidVersions = Get-Item env:ANDROID_*
+ $androidVersions = Get-Item env:ANDROID_*
- $shoulddResolveLink = 'ANDROID_NDK_PATH', 'ANDROID_NDK_HOME', 'ANDROID_NDK_ROOT', 'ANDROID_NDK_LATEST_HOME'
+ $shoulddResolveLink = 'ANDROID_NDK_LATEST_HOME'
return $androidVersions | Sort-Object -Property Name | ForEach-Object {
[PSCustomObject] @{
"Name" = $_.Name
- "Value" = if ($shoulddResolveLink.Contains($_.Name )) { Get-PathWithLink($_.Value) } else {$_.Value}
+ "Value" = if ($shoulddResolveLink.Contains($_.Name )) { Get-PathWithLink($_.Value) } else { $_.Value }
}
}
}
@@ -175,23 +175,9 @@ function Get-AndroidGoogleAPIsVersions {
}
function Get-AndroidNDKVersions {
- $os = Get-OSVersion
-
- if ($os.IsCatalina) {
- # Hardcode NDK 15 as a separate case since it is installed manually without sdk-manager (to none default location)
- $versions = @()
- $versions += "15.2.4203891"
- }
-
$ndkFolderPath = Join-Path (Get-AndroidSDKRoot) "ndk"
$versions += Get-ChildItem -Path $ndkFolderPath -Name
- $ndkDefaultVersion = Get-ToolsetValue "android.ndk.default"
- $ndkDefaultFullVersion = Get-ChildItem "$env:ANDROID_HOME/ndk/$ndkDefaultVersion.*" -Name | Select-Object -Last 1
-
- return ($versions | ForEach-Object {
- $defaultPostfix = ( $_ -eq $ndkDefaultFullVersion ) ? " (default)" : ""
- $_ + $defaultPostfix
- } | Join-String -Separator "
")
+ return ($versions | Join-String -Separator "
")
}
function Get-IntelHaxmVersion {
diff --git a/images/macos/templates/macOS-10.15.json b/images/macos/templates/macOS-10.15.json
index 201bb31d3..b876d53e9 100644
--- a/images/macos/templates/macOS-10.15.json
+++ b/images/macos/templates/macOS-10.15.json
@@ -186,7 +186,6 @@
"./provision/core/cocoapods.sh",
"./provision/core/android-toolsets.sh",
"./provision/core/xamarin.sh",
- "./provision/core/xamarin-android-ndk.sh",
"./provision/core/vsmac.sh",
"./provision/core/nvm.sh",
"./provision/core/apache.sh",
diff --git a/images/macos/tests/Android.Tests.ps1 b/images/macos/tests/Android.Tests.ps1
index 8c9f97fab..df1484e4c 100644
--- a/images/macos/tests/Android.Tests.ps1
+++ b/images/macos/tests/Android.Tests.ps1
@@ -9,9 +9,7 @@ Describe "Android" {
[int]$platformMinVersion = Get-ToolsetValue "android.platform_min_version"
[version]$buildToolsMinVersion = Get-ToolsetValue "android.build_tools_min_version"
[array]$ndkVersions = Get-ToolsetValue "android.ndk.versions"
- [string]$ndkDefaultVersion = Get-ToolsetValue "android.ndk.default"
$ndkFullVersions = $ndkVersions | ForEach-Object { Get-ChildItem "$env:ANDROID_HOME/ndk/${_}.*" -Name | Select-Object -Last 1} | ForEach-Object { "ndk/${_}" }
- $ndkDefaultFullVersion = Get-ChildItem "$env:ANDROID_HOME/ndk/$ndkDefaultVersion.*" -Name | Select-Object -Last 1
# Platforms starting with a letter are the preview versions, which is not installed on the image
$platformVersionsList = ($androidSdkManagerPackages | Where-Object { "$_".StartsWith("platforms;") }) -replace 'platforms;android-', '' | Where-Object { $_ -match "^\d+$" } | Sort-Object -Unique
$platformsInstalled = $platformVersionsList | Where-Object { [int]$_ -ge $platformMinVersion } | ForEach-Object { "platforms/android-${_}" }
@@ -23,8 +21,6 @@ Describe "Android" {
$androidPackages = @(
"tools",
"platform-tools",
- "tools/proguard",
- "ndk-bundle",
"cmake",
$platformsInstalled,
$buildTools,
@@ -73,18 +69,11 @@ Describe "Android" {
Context "Packages" {
$testCases = $androidPackages | ForEach-Object { @{ PackageName = $_ } }
- $defaultNdkTestCase = @{ NdkDefaultFullVersion = $ndkDefaultFullVersion }
It "" -TestCases $testCases {
param ([string] $PackageName)
Validate-AndroidPackage $PackageName
}
-
- It "ndk-bundle points to the default NDK version" -TestCases $defaultNdkTestCase {
- $ndkLinkTarget = (Get-Item $env:ANDROID_NDK_HOME).Target
- $ndkVersion = Split-Path -Path $ndkLinkTarget -Leaf
- $ndkVersion | Should -BeExactly $NdkDefaultFullVersion
- }
}
It "HAXM is installed" -Skip:($os.IsHigherThanCatalina) {
diff --git a/images/macos/tests/XamarinNDK.Tests.ps1 b/images/macos/tests/XamarinNDK.Tests.ps1
deleted file mode 100644
index 05e87af52..000000000
--- a/images/macos/tests/XamarinNDK.Tests.ps1
+++ /dev/null
@@ -1,32 +0,0 @@
-
-Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1"
-Import-Module "$PSScriptRoot/../helpers/Tests.Helpers.psm1" -DisableNameChecking
-Import-Module "$PSScriptRoot/../software-report/SoftwareReport.Android.psm1" -DisableNameChecking
-
-$os = Get-OSVersion
-
-Describe "Xamarin NDK" {
- BeforeAll {
- $androidNdkToolchains = @("mips64el-linux-android-4.9", "mipsel-linux-android-4.9")
- $ANDROID_SDK_DIR = Join-Path $env:HOME "Library" "Android" "sdk"
- }
-
- Context "Xamarin NDK toolchains" -Skip:($os.IsHigherThanCatalina) {
- $testCases = $androidNdkToolchains | ForEach-Object { @{AndroidNdkToolchain = $_} }
-
- It "" -TestCases $testCases {
- param ([string] $AndroidNdkToolchain)
-
- $toolchainPath = Join-Path $ANDROID_SDK_DIR "ndk-bundle" "toolchains" $AndroidNdkToolchain
- $toolchainPath | Should -Exist
- }
- }
-
- Context "Xamarin Legacy NDK versions" -Skip:($os.IsHigherThanCatalina) {
- It "Android NDK version r18b is installed" {
- $ndk18BundlePath = Join-Path $ANDROID_SDK_DIR "ndk" "18.1.5063045" "source.properties"
- $rawContent = Get-Content $ndk18BundlePath -Raw
- $rawContent | Should -BeLikeExactly "*Revision = 18.*"
- }
- }
-}
\ No newline at end of file
diff --git a/images/macos/toolsets/toolset-10.15.json b/images/macos/toolsets/toolset-10.15.json
index 05874c59a..51a1ff980 100644
--- a/images/macos/toolsets/toolset-10.15.json
+++ b/images/macos/toolsets/toolset-10.15.json
@@ -179,7 +179,6 @@
"cmake;3.18.1"
],
"ndk": {
- "default": "23",
"versions": [
"21", "23", "24"
]
diff --git a/images/macos/toolsets/toolset-11.json b/images/macos/toolsets/toolset-11.json
index 1306b902b..1bd55f84d 100644
--- a/images/macos/toolsets/toolset-11.json
+++ b/images/macos/toolsets/toolset-11.json
@@ -177,7 +177,6 @@
"cmake;3.18.1"
],
"ndk": {
- "default": "23",
"versions": [
"21", "23", "24"
]
diff --git a/images/macos/toolsets/toolset-12.json b/images/macos/toolsets/toolset-12.json
index f8357ce22..381291df2 100644
--- a/images/macos/toolsets/toolset-12.json
+++ b/images/macos/toolsets/toolset-12.json
@@ -112,7 +112,6 @@
"cmake;3.18.1"
],
"ndk": {
- "default": "23",
"versions": [
"21", "23", "24"
]