Khem Raj wrote: > On Fri, Dec 14, 2018 at 9:56 AM Serhey Popovych > wrote: >> >> Historically first PowerPC ABI was big-endian only (elfv1 currently). It >> is standard ABI for both 32-bit ppc and 64-bit ppc64 architectures. >> >> With PowerPC little-endian support new ABI was introduced (elfv2) and it >> is used primarily with ppc64le target only. While it has support for >> big-endian it is not commonly used and elfv1 still preferred. >> >> Musl does support only elfv2 ABI for both LE and BE and does not have >> any plans to support elfv1. >> >> Since then to build for powerpc64 with musl new ABI should be used. As >> expected it is not compatible with elfv1 but that isn't problem as long >> as there is no binary distributed software or assembly code written for >> elfv1 ABI. >> >> Signed-off-by: Serhey Popovych >> --- >> meta/conf/machine/include/powerpc/arch-powerpc64.inc | 3 +++ >> 1 file changed, 3 insertions(+) >> >> diff --git a/meta/conf/machine/include/powerpc/arch-powerpc64.inc b/meta/conf/machine/include/powerpc/arch-powerpc64.inc >> index f751c6b..d9916d4 100644 >> --- a/meta/conf/machine/include/powerpc/arch-powerpc64.inc >> +++ b/meta/conf/machine/include/powerpc/arch-powerpc64.inc >> @@ -7,6 +7,9 @@ TUNECONFLICTS[m64] = "m32 nf" >> TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'm64', ' -m64', '', d)}" >> TUNE_ARCH .= "${@bb.utils.contains('TUNE_FEATURES', [ 'm64' ], 'powerpc64', '', d)}" >> >> +# musl only supports elfv2 ABI for ppc64 >> +TUNE_CCARGS .= "${@['', ' -mabi=elfv2']['libc-musl' in d.getVar('OVERRIDES').split(':')]}" >> + > > I wonder if we should change gcc to use this ABI by default when > configured for ppc64/musl ? > This would avoid us adding compiler options here, in bad cases it may > be that other compilers > call it out differently. Good point. This should be easy to do with patch applied for libc-musl override. > >> # user mode qemu doesn't support ppc64 >> MACHINE_FEATURES_BACKFILL_CONSIDERED_append = " ${@bb.utils.contains('TUNE_FEATURES', 'm64', 'qemu-usermode', '', d)}" >> >> -- >> 2.7.4 >> >> -- >> _______________________________________________ >> Openembedded-core mailing list >> Openembedded-core@lists.openembedded.org >> http://lists.openembedded.org/mailman/listinfo/openembedded-core