[openwrt/openwrt] toolchain/gcc: use ELFv2 ABI on ppc64 with musl

LEDE Commits lede-commits at lists.infradead.org
Tue Dec 21 12:21:08 PST 2021


stintel pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/6e2556963d523ecef9a2a6130c899d146a3b7333

commit 6e2556963d523ecef9a2a6130c899d146a3b7333
Author: Stijn Tintel <stijn at linux-ipv6.be>
AuthorDate: Tue Sep 22 14:02:58 2020 +0300

    toolchain/gcc: use ELFv2 ABI on ppc64 with musl
    
    At configuration time, gcc assumes that ppc64be targets use the ELFv1
    ABI, and ppc64le targets use the ELFv2 ABI. However, musl libc does not
    support the ELFv1 ABI on ppc64 at all, regardless of the endianness.
    
    Therefore, when building for a ppc64 arch and with musl libc, instruct
    gcc to use the ELFv2 ABI.
    
    See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93157 for more info.
    
    Signed-off-by: Stijn Tintel <stijn at linux-ipv6.be>
    Reviewed-by: Rui Salvaterra <rsalvaterra at gmail.com>
---
 toolchain/gcc/common.mk | 1 +
 1 file changed, 1 insertion(+)

diff --git a/toolchain/gcc/common.mk b/toolchain/gcc/common.mk
index a195002888..bef4fa37f8 100644
--- a/toolchain/gcc/common.mk
+++ b/toolchain/gcc/common.mk
@@ -108,6 +108,7 @@ GCC_CONFIGURE:= \
 		$(if $(CONFIG_mips64)$(CONFIG_mips64el),--with-arch=mips64 \
 			--with-abi=$(call qstrip,$(CONFIG_MIPS64_ABI))) \
 		$(if $(CONFIG_arc),--with-cpu=$(CONFIG_CPU_TYPE)) \
+		$(if $(CONFIG_powerpc64), $(if $(CONFIG_USE_MUSL),--with-abi=elfv2)) \
 		--with-gmp=$(TOPDIR)/staging_dir/host \
 		--with-mpfr=$(TOPDIR)/staging_dir/host \
 		--with-mpc=$(TOPDIR)/staging_dir/host \



More information about the lede-commits mailing list