Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] uclibc-ng build failures on Xtensa
@ 2022-07-22  8:09 Thomas Petazzoni via buildroot
  2022-07-22 11:24 ` Max Filippov
  0 siblings, 1 reply; 4+ messages in thread
From: Thomas Petazzoni via buildroot @ 2022-07-22  8:09 UTC (permalink / raw)
  To: Max Filippov; +Cc: buildroot@buildroot.org

Hello Max,

We are seeing build failures of uclibc-ng on Xtensa:

  http://autobuild.buildroot.net/?reason=uclibc%&arch=xtensa

A relevant one is:

  http://autobuild.buildroot.net/results/38e/38e9d9a76f1877e7952ad5c20a405382642fd227/build-end.log

Which goes like this:


/home/autobuild/autobuild/instance-7/output-1/host/lib/gcc/xtensa-buildroot-linux-uclibc/10.3.0/../../../../xtensa-buildroot-linux-uclibc/bin/ld: ldso/ldso/ld-uClibc_so.a(ldso.oS): compiled for a big endian system and target is little endian
/home/autobuild/autobuild/instance-7/output-1/host/lib/gcc/xtensa-buildroot-linux-uclibc/10.3.0/../../../../xtensa-buildroot-linux-uclibc/bin/ld: failed to merge target specific data of file ldso/ldso/ld-uClibc_so.a(ldso.oS)
/home/autobuild/autobuild/instance-7/output-1/host/lib/gcc/xtensa-buildroot-linux-uclibc/10.3.0/../../../../xtensa-buildroot-linux-uclibc/bin/ld: ldso/ldso/ld-uClibc_so.a(dl-tlsdesc.oS): compiled for a big endian system and target is little endian
/home/autobuild/autobuild/instance-7/output-1/host/lib/gcc/xtensa-buildroot-linux-uclibc/10.3.0/../../../../xtensa-buildroot-linux-uclibc/bin/ld: failed to merge target specific data of file ldso/ldso/ld-uClibc_so.a(dl-tlsdesc.oS)
/home/autobuild/autobuild/instance-7/output-1/host/lib/gcc/xtensa-buildroot-linux-uclibc/10.3.0/../../../../xtensa-buildroot-linux-uclibc/bin/ld: ldso/ldso/ld-uClibc_so.a(resolve.oS): compiled for a big endian system and target is little endian
/home/autobuild/autobuild/instance-7/output-1/host/lib/gcc/xtensa-buildroot-linux-uclibc/10.3.0/../../../../xtensa-buildroot-linux-uclibc/bin/ld: failed to merge target specific data of file ldso/ldso/ld-uClibc_so.a(resolve.oS)
/home/autobuild/autobuild/instance-7/output-1/host/lib/gcc/xtensa-buildroot-linux-uclibc/10.3.0/../../../../xtensa-buildroot-linux-uclibc/bin/ld: little endian output does not match Xtensa configuration

This happens on configurations that have:

BR2_XTENSA_CUSTOM=y

Indeed, in Buildroot we support two Xtensa variants:

config BR2_XTENSA_CUSTOM
        bool "Custom Xtensa processor configuration"
        select BR2_ARCH_HAS_MMU_OPTIONAL

config BR2_xtensa_fsf
        bool "fsf - Default configuration"
        select BR2_ARCH_HAS_MMU_MANDATORY

So far, all builds were done using BR2_xtensa_fsf but with the full
randomization, we've started doing builds with BR2_XTENSA_CUSTOM.
However, for BR2_XTENSA_CUSTOM, the endianess is configurable:

choice
        prompt "Target Architecture Endianness"
        default BR2_XTENSA_LITTLE_ENDIAN
        depends on BR2_XTENSA_CUSTOM

config BR2_XTENSA_LITTLE_ENDIAN
        bool "Little endian"

config BR2_XTENSA_BIG_ENDIAN
        bool "Big endian"

endchoice

And the default is BR2_XTENSA_LITTLE_ENDIAN, while normally for
BR2_xtensa_fsf, the endianness is BIG.

Which configurations are supported? Is there something to fix here, or
we just need to disallow the usage of little endian?

Thanks a lot for your input,

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-07-23 13:15 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-22  8:09 [Buildroot] uclibc-ng build failures on Xtensa Thomas Petazzoni via buildroot
2022-07-22 11:24 ` Max Filippov
2022-07-22 12:17   ` Thomas Petazzoni via buildroot
2022-07-23 13:15     ` Max Filippov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox