From 77dfaa7c15f613223e00a56440040c537bdf206b Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev <48208649+miketimofeev@users.noreply.github.com> Date: Fri, 29 Jul 2022 13:08:30 +0400 Subject: [PATCH] Add ndk-related environment variables to windows (#5985) --- images/win/scripts/Installers/Install-AndroidSDK.ps1 | 7 +++++++ .../scripts/SoftwareReport/SoftwareReport.Android.psm1 | 10 ++++++++-- images/win/toolsets/toolset-2019.json | 1 + images/win/toolsets/toolset-2022.json | 1 + 4 files changed, 17 insertions(+), 2 deletions(-) diff --git a/images/win/scripts/Installers/Install-AndroidSDK.ps1 b/images/win/scripts/Installers/Install-AndroidSDK.ps1 index 0401f4768..dbf2508f3 100644 --- a/images/win/scripts/Installers/Install-AndroidSDK.ps1 +++ b/images/win/scripts/Installers/Install-AndroidSDK.ps1 @@ -109,6 +109,7 @@ Install-AndroidSDKPackages -AndroidSDKManagerPath $sdkManager ` # NDKs $ndkMajorVersions = $androidToolset.ndk.versions +$ndkDefaultMajorVersion = $androidToolset.ndk.default $ndkLatestMajorVersion = $ndkMajorVersions | Select-Object -Last 1 $androidNDKs = $ndkMajorVersions | Foreach-Object { @@ -120,10 +121,16 @@ Install-AndroidSDKPackages -AndroidSDKManagerPath $sdkManager ` -AndroidPackages $androidNDKs $ndkLatestVersion = ($androidNDKs | Where-Object { $_ -match "ndk;$ndkLatestMajorVersion" }).Split(';')[1] +$ndkDefaultVersion = ($androidNDKs | Where-Object { $_ -match "ndk;$ndkDefaultMajorVersion" }).Split(';')[1] +$ndkRoot = "$sdkRoot\ndk\$ndkDefaultVersion" # Create env variables setx ANDROID_HOME $sdkRoot /M setx ANDROID_SDK_ROOT $sdkRoot /M +# ANDROID_NDK, ANDROID_NDK_HOME, and ANDROID_NDK_LATEST_HOME variables should be set as many customer builds depend on them https://github.com/actions/virtual-environments/issues/5879 +setx ANDROID_NDK $ndkRoot /M +setx ANDROID_NDK_HOME $ndkRoot /M +setx ANDROID_NDK_ROOT $ndkRoot /M $ndkLatestPath = "$sdkRoot\ndk\$ndkLatestVersion" if (Test-Path $ndkLatestPath) { diff --git a/images/win/scripts/SoftwareReport/SoftwareReport.Android.psm1 b/images/win/scripts/SoftwareReport/SoftwareReport.Android.psm1 index 404929c46..ac614dd07 100644 --- a/images/win/scripts/SoftwareReport/SoftwareReport.Android.psm1 +++ b/images/win/scripts/SoftwareReport/SoftwareReport.Android.psm1 @@ -164,8 +164,14 @@ function Get-AndroidNdkVersions { [object] $PackageInfo ) + $ndkDefaultFullVersion = Get-ChildItem $env:ANDROID_NDK_HOME -Name + $versions = $packageInfo | Where-Object { $_ -Match "ndk;" } | ForEach-Object { - (Split-TableRowByColumns $_)[1] + $version = (Split-TableRowByColumns $_)[1] + if ($version -eq $ndkDefaultFullVersion) { + $version += " (default)" + } + $version } return ($versions -Join "
") } @@ -173,7 +179,7 @@ function Get-AndroidNdkVersions { function Build-AndroidEnvironmentTable { $androidVersions = Get-Item env:ANDROID_* - $shoulddResolveLink = 'ANDROID_NDK_LATEST_HOME' + $shoulddResolveLink = 'ANDROID_NDK', 'ANDROID_NDK_HOME', 'ANDROID_NDK_ROOT', 'ANDROID_NDK_LATEST_HOME' return $androidVersions | Sort-Object -Property Name | ForEach-Object { [PSCustomObject] @{ "Name" = $_.Name diff --git a/images/win/toolsets/toolset-2019.json b/images/win/toolsets/toolset-2019.json index 3024b66ec..9fcb22153 100644 --- a/images/win/toolsets/toolset-2019.json +++ b/images/win/toolsets/toolset-2019.json @@ -184,6 +184,7 @@ "patcher;v4" ], "ndk": { + "default": "25", "versions": [ "23", "24", "25" ] diff --git a/images/win/toolsets/toolset-2022.json b/images/win/toolsets/toolset-2022.json index 43c5618df..3b99dd55c 100644 --- a/images/win/toolsets/toolset-2022.json +++ b/images/win/toolsets/toolset-2022.json @@ -154,6 +154,7 @@ "patcher;v4" ], "ndk": { + "default": "25", "versions": [ "23", "24", "25" ]