diff --git a/ci/android-install-ndk.sh b/ci/android-install-ndk.sh index 944a8389aa..83eec28738 100644 --- a/ci/android-install-ndk.sh +++ b/ci/android-install-ndk.sh @@ -12,27 +12,7 @@ set -ex curl --retry 5 -O \ - https://dl.google.com/android/repository/android-ndk-r15b-linux-x86_64.zip -unzip -q android-ndk-r15b-linux-x86_64.zip - -case "${1}" in - aarch64) - arch=arm64 - ;; - - i686) - arch=x86 - ;; - - *) - arch="${1}" - ;; -esac; - -android-ndk-r15b/build/tools/make_standalone_toolchain.py \ - --unified-headers \ - --install-dir "/android/ndk-${1}" \ - --arch "${arch}" \ - --api 24 - -rm -rf ./android-ndk-r15b-linux-x86_64.zip ./android-ndk-r15b + https://dl.google.com/android/repository/android-ndk-r25b-linux.zip +unzip -q android-ndk-r25b-linux.zip +mv android-ndk-r25b "/android/ndk-${1}" +rm -rf ./android-ndk-r25b-linux.zip diff --git a/ci/docker/x86_64-linux-android/Dockerfile b/ci/docker/x86_64-linux-android/Dockerfile index c2830b15fb..1b79b4fc9c 100644 --- a/ci/docker/x86_64-linux-android/Dockerfile +++ b/ci/docker/x86_64-linux-android/Dockerfile @@ -22,8 +22,8 @@ COPY android-sysimage.sh /android/ RUN bash /android/android-sysimage.sh x86_64 x86_64-24_r07.zip ENV PATH=$PATH:/rust/bin:/android/ndk-$ANDROID_ARCH/bin \ - CARGO_TARGET_X86_64_LINUX_ANDROID_LINKER=x86_64-linux-android-gcc \ - CC_x86_64_linux_android=x86_64-linux-android-gcc \ - CXX_x86_64_linux_android=x86_64-linux-android-g++ \ - OBJDUMP=x86_64-linux-android-objdump \ + CARGO_TARGET_X86_64_LINUX_ANDROID_LINKER=x86_64-linux-android21-clang \ + CC_x86_64_linux_android=x86_64-linux-android21-clang \ + CXX_x86_64_linux_android=x86_64-linux-android21-clang++ \ + OBJDUMP=llvm-objdump \ HOME=/tmp diff --git a/ci/run.sh b/ci/run.sh index 54145a0e73..653c902e70 100755 --- a/ci/run.sh +++ b/ci/run.sh @@ -35,8 +35,8 @@ case ${TARGET} in ;; #Unoptimized build uses fast-isel which breaks with msa mips-* | mipsel-*) - export RUSTFLAGS="${RUSTFLAGS} -C llvm-args=-fast-isel=false" - ;; + export RUSTFLAGS="${RUSTFLAGS} -C llvm-args=-fast-isel=false" + ;; # Some of our test dependencies use the deprecated `gcc` crates which is # missing a fix from https://github.com/alexcrichton/cc-rs/pull/627. Apply # the workaround manually here. @@ -49,6 +49,8 @@ case ${TARGET} in riscv64*) export TARGET_CC="riscv64-linux-gnu-gcc" ;; + *android*) + export LD="${TARGET}-clang" esac echo "RUSTFLAGS=${RUSTFLAGS}"