[Buildroot] Missing 'sys/queue.h' on musl

Thomas Petazzoni thomas.petazzoni at free-electrons.com
Mon Nov 30 16:32:02 UTC 2015


Dear Sergio Prado,

On Mon, 30 Nov 2015 13:07:36 -0200, Sergio Prado wrote:

> I have created a package called sys-queue that will only install queue.h on
> the staging dir.
> 
> Then to make musl generated toolchain depends on sys-queue, I added the
> following lines to toolchain/toolchain-buildroot/toolchain-buildroot.mk:
> 
> ifeq ($(BR2_TOOLCHAIN_BUILDROOT_MUSL),y)
> TOOLCHAIN_BUILDROOT_DEPENDENCIES += sys-queue
> endif
> 
> It worked like a charm. Is this the correct approach?

No, because this will only work for internal toolchains. So instead,
you need to put this dependency in two places:

 1/ In package/musl/musl.mk, where it should be an unconditional
    dependency.

 2/ In toolchain/toolchain-external/toolchain-external.mk, where it
    should be conditional on BR2_TOOLCHAIN_USES_MUSL.

> Also, I am struggling to find out a way to do the same thing on the
> external toolchain. Using the DEPENDENCIES approach, it will process the
> sys-queue package before the external toolchain package, and it is best to
> do it after. Any ideas?

Is it really a problem if it is processed before?

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com



More information about the buildroot mailing list