[bugfix] Update binutils version checks in atf.sh

This commit is contained in:
青萝菜 瓜冬卜 2025-09-05 16:31:09 +08:00 committed by Igor
parent 343df94818
commit 7dd37805c8
1 changed files with 7 additions and 2 deletions

View File

@ -69,10 +69,15 @@ compile_atf() {
declare binutils_version binutils_flags_atf=""
binutils_version=$(env PATH="${toolchain}:${toolchain2}:${PATH}" aarch64-linux-gnu-ld.bfd --version | head -1 | cut -d ")" -f 2 | xargs echo -n)
display_alert "Binutils version for ATF" "${binutils_version}" "info"
if linux-version compare "${binutils_version}" ge "2.39"; then
display_alert "Binutils version for ATF" ">= 2.39, adding --no-warn-rwx-segment" "info"
if linux-version compare "${binutils_version}" gt "2.39" && linux-version compare "${binutils_version}" lt "2.42"; then
display_alert "Binutils version for ATF" ">= 2.39 and < 2.42, adding -Wl,--no-warn-rwx-segment" "info"
binutils_flags_atf="-Wl,--no-warn-rwx-segment"
elif linux-version compare "${binutils_version}" ge "2.42"; then
display_alert "Binutils version for ATF" ">= 2.42, adding --no-warn-rwx-segments" "info"
binutils_flags_atf="--no-warn-rwx-segments"
fi
# - ENABLE_BACKTRACE="0" has been added to workaround a regression in ATF. Check: https://github.com/armbian/build/issues/1157
run_host_command_logged "CROSS_COMPILE='ccache ${ATF_COMPILER}'" CCACHE_BASEDIR="$(pwd)" "CC='ccache ${ATF_COMPILER}gcc'" PATH="${toolchain}:${toolchain2}:${PATH}" \