[Buildroot] [PATCH] package/elfutils: enable building with musl-based toolchains

Thomas Petazzoni thomas.petazzoni at bootlin.com
Mon Jul 17 20:11:55 UTC 2023


Hello Ignacy,

On Mon, 17 Jul 2023 16:09:32 +0200
Ignacy Gawędzki <ignacy.gawedzki at green-communications.fr> wrote:

> Sure.  I started having a look and stumbled upon an issue while
> test-pkg'ing libbpf.  Aside from many toolchains just being skipped
> (supposedly because of their lack of the minimum kernel headers
> version), it succeeded with those glibc and musl toolchains that it
> didn't skip, and failed with br-mips64-n64-full.  The latter is based
> on uClibc v1.0.36 and it turns out uClibc prior to v1.0.38 has no
> working definition of F_DUPFD_CLOEXEC, required by libbpf.

Please note that this is a separate problem, unrelated to your effort
of making elfutils buildable with musl. Therefore, we will not require
you to fix all other unrelated problems. Of course, if you want to
tackle and solve those unrelated problems: great! But don't feel like
you have to: if they are unrelated, we are not going to make solving
them a requirement of merging your patches related to elfutils/musl.

> Now I have the following problem: how can I determine, from the
> Config.in's point-of-view, that the uClibc used by the toolchain is
> too old?  There are variable that are set when the toolchain is
> uclibc-based, but in this case I have
> BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC=y and no way to know the actual
> version.  Forbidding libbpf as soon as
> BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC=y seems overkill.

Arnout replied on that, and generally speaking we don't really care
anymore about "too old uClibc", I would probably not bother trying to
support all old uClibc toolchains.

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com



More information about the buildroot mailing list