Skip to content

Commit a1e538c

Browse files
committed
Update Android testing to API 21, matching NDK 26
We were running testing on API 18, which was already out of support for NDK 25, and some of the ancient behavior in that image was causing trouble when developing `rustc` features (rust-lang#120326). Update to the current LTS NDK 26, and to its minimum supported API 21. Fixes: rust-lang#120567
1 parent 04b2dd6 commit a1e538c

File tree

6 files changed

+13
-11
lines changed

6 files changed

+13
-11
lines changed

config.example.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -394,7 +394,7 @@
394394
#metrics = false
395395

396396
# Specify the location of the Android NDK. Used when targeting Android.
397-
#android-ndk = "/path/to/android-ndk-r25b"
397+
#android-ndk = "/path/to/android-ndk-r26d"
398398

399399
# =============================================================================
400400
# General install configuration options

src/bootstrap/src/utils/cc_detect.rs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -247,18 +247,16 @@ pub(crate) fn ndk_compiler(compiler: Language, triple: &str, ndk: &Path) -> Path
247247
triple.to_string()
248248
};
249249

250-
// API 19 is the earliest API level supported by NDK r25b but AArch64 and x86_64 support
251-
// begins at API level 21.
252-
let api_level =
253-
if triple.contains("aarch64") || triple.contains("x86_64") { "21" } else { "19" };
250+
// The earliest API supported by NDK r26d is 21.
251+
let api_level = "21";
254252
let compiler = format!("{}{}-{}", triple_translated, api_level, compiler.clang());
255253
let host_tag = if cfg!(target_os = "macos") {
256254
// The NDK uses universal binaries, so this is correct even on ARM.
257255
"darwin-x86_64"
258256
} else if cfg!(target_os = "windows") {
259257
"windows-x86_64"
260258
} else {
261-
// NDK r25b only has official releases for macOS, Windows and Linux.
259+
// NDK r26d only has official releases for macOS, Windows and Linux.
262260
// Try the Linux directory everywhere else, on the assumption that the OS has an
263261
// emulation layer that can cope (e.g. BSDs).
264262
"linux-x86_64"

src/bootstrap/src/utils/change_tracker.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -199,6 +199,10 @@ pub const CONFIG_CHANGE_HISTORY: &[ChangeInfo] = &[
199199
change_id: 126701,
200200
severity: ChangeSeverity::Warning,
201201
summary: "`llvm.lld` is enabled by default for the dist profile. If set to false, `lld` will not be included in the dist build.",
202+
ChangeInfo {
203+
change_id: 120593,
204+
severity: ChangeSeverity::Info,
205+
summary: "Removed android-ndk r25b support in favor of android-ndk r26d.",
202206
},
203207
ChangeInfo {
204208
change_id: 127913,

src/ci/docker/host-x86_64/arm-android/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ RUN sh /scripts/android-base-apt-get.sh
66

77
COPY scripts/android-ndk.sh /scripts/
88
RUN . /scripts/android-ndk.sh && \
9-
download_ndk android-ndk-r25b-linux.zip
9+
download_ndk android-ndk-r26d-linux.zip
1010

1111
RUN dpkg --add-architecture i386 && \
1212
apt-get update && \
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
emulator emulator-linux-5264690.zip 48c1cda2bdf3095d9d9d5c010fbfb3d6d673e3ea
22
patcher;v4 3534162-studio.sdk-patcher.zip 046699c5e2716ae11d77e0bad814f7f33fab261e
3-
platform-tools platform-tools_r28.0.2-linux.zip 46a4c02a9b8e4e2121eddf6025da3c979bf02e28
4-
platforms;android-18 android-18_r03.zip e6b09b3505754cbbeb4a5622008b907262ee91cb
5-
system-images;android-18;default;armeabi-v7a sys-img/android/armeabi-v7a-18_r05.zip 580b583720f7de671040d5917c8c9db0c7aa03fd
3+
platform-tools platform-tools_r34.0.5-linux.zip 96097475cf7b279fdd8f218f5d043ffe94104ec3
4+
platforms;android-21 android-21_r02.zip 53536556059bb29ae82f414fd2e14bc335a4eb4c
5+
system-images;android-21;default;armeabi-v7a sys-img/android/armeabi-v7a-21_r04.zip 8c606f81306564b65e41303d2603e4c42ded0d10
66
tools sdk-tools-linux-4333796.zip 8c7c28554a32318461802c1291d76fccfafde054

src/ci/docker/host-x86_64/dist-android/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ RUN sh /scripts/android-base-apt-get.sh
66
# ndk
77
COPY scripts/android-ndk.sh /scripts/
88
RUN . /scripts/android-ndk.sh && \
9-
download_ndk android-ndk-r25b-linux.zip
9+
download_ndk android-ndk-r26d-linux.zip
1010

1111
# env
1212
ENV TARGETS=arm-linux-androideabi

0 commit comments

Comments
 (0)