From da9aa4e4cd48b0bc56294f48acdcba7367cbdd0a Mon Sep 17 00:00:00 2001 From: Alex Huszagh Date: Fri, 3 Jun 2022 09:09:16 -0500 Subject: [PATCH] Reduce Android image sizes. Delete unused toolchains to save ~600MB in our total image sizes. This is done by removing the toolchains for other targets in `/android-ndk/sysroot/usr/lib/`. Closes #739. --- CHANGELOG.md | 1 + docker/android-ndk.sh | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 943ef7a06..9a59ae19b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,6 +19,7 @@ This project adheres to [Semantic Versioning](http://semver.org/). ### Changed +- #747 - reduced android image sizes. - #377 - update WINE versions to 7.0. - #734 - patch `arm-unknown-linux-gnueabihf` to build for ARMv6, and add architecture for crosstool-ng-based images. - #709 - Update Emscripten targets to `emcc` version 3.1.10 diff --git a/docker/android-ndk.sh b/docker/android-ndk.sh index 818021ef4..ff1b7e052 100755 --- a/docker/android-ndk.sh +++ b/docker/android-ndk.sh @@ -27,6 +27,30 @@ main() { --arch "${arch}" \ --api "${api}" + # clean up unused toolchains to reduce image size + local triple + local triples + local triple_arch="${arch}" + case "${arch}" in + arm64) + triple_arch="aarch64" + ;; + x86) + triple_arch="i686" + ;; + esac + triples=( + "aarch64-linux-android" + "arm-linux-androideabi" + "i686-linux-android" + "x86_64-linux-android" + ) + for triple in "${triples[@]}"; do + if ! [[ "${triple}" =~ ^"${triple_arch}".* ]]; then + rm -rf "/android-ndk/sysroot/usr/lib/${triple}" + fi + done + purge_packages popd