diff --git a/.drone.yml b/.drone.yml index a9e824d..7ca0f8a 100644 --- a/.drone.yml +++ b/.drone.yml @@ -16,6 +16,7 @@ steps: - bash emerald-binutils.sh && rm -rf build - bash emerald-sysroot.sh - bash emerald-gcc.sh + - bash emerald-post-gcc-build.sh - env XZ_OPT="-9 -T0" tar -C /tmp -cJf aarch64-linux-android-emerald.tar.xz aarch64-linux-android-emerald - bash emerald-get-relver.sh diff --git a/bin/aarch64-linux-android-ldd b/bin/aarch64-linux-android-ldd new file mode 100755 index 0000000..dcd8ceb --- /dev/null +++ b/bin/aarch64-linux-android-ldd @@ -0,0 +1,14 @@ +#!/usr/bin/env sh + +USAGE="$(basename "$0") (Emerald GCC) +Usage: ldd FILE..." +BIN_PATH=$(dirname "$(realpath "$0")") +OBJDUMP="$BIN_PATH/aarch64-linux-android-objdump" + +case $# in + 0) echo "$USAGE" ;; + 1) $OBJDUMP -p -- "$@" | grep NEEDED | cut -d' ' -f18 ;; + *) $OBJDUMP -p -- "$@" | grep 'NEEDED\|file format' | cut -d' ' -f1,18 ;; +esac + + diff --git a/emerald-post-gcc-build.sh b/emerald-post-gcc-build.sh new file mode 100755 index 0000000..7efd207 --- /dev/null +++ b/emerald-post-gcc-build.sh @@ -0,0 +1,14 @@ +#!/usr/bin/env bash + +set -euo pipefail + +EMERALD_SCRIPT_DIR=$(dirname "$(realpath "$0")") +source "$EMERALD_SCRIPT_DIR"/common.sh + +cd "$PREFIX" + +# Fix rust builds +echo "INPUT(-lc)" > lib/gcc/aarch64-linux-android/11.3.0/libgcc.a + +# Install helper scripts +install -Dm755 -t bin "$EMERALD_SCRIPT_DIR"/bin/*