summaryrefslogtreecommitdiff
path: root/toolchain
diff options
context:
space:
mode:
authorSergio Prado <sergio.prado@e-labworks.com>2015-12-01 22:58:28 -0200
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2015-12-17 22:02:27 +0100
commitfa6473729cf868dff232dfbc9674a168cc3f9b97 (patch)
tree72ad38bb2ba13aa0151f4683aa6983b4408d3731 /toolchain
parent1a886a9a25446c04371f5698ae34d9cb7b12c5fa (diff)
musl: add a sys/queue.h implementation
Musl does not provide a 'sys/queue.h' implementation, and this has been a problem for packages that depend on it. So lets create a package called netbsd-queue that will install a 'sys/queue.h' in the staging directory when enabled, based on the NetBSD implementation. Musl toolchain and external toolchain packages will depend on this package, so that 'sys/queue.h' will be always installed when compiling with a musl based toolchain. Tested on ARM and x86 in the following cases: - Buildroot musl toolchain. - External musl toolchain without 'sys/queue.h'. - External musl toolchain with 'sys/queue.h'. Fixes: http://autobuild.buildroot.net/results/24bad2d06ab40024dacf136bee722072d587f84e And possibly many others. Signed-off-by: Sergio Prado <sergio.prado@e-labworks.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'toolchain')
-rw-r--r--toolchain/toolchain-external/toolchain-external.mk7
1 files changed, 7 insertions, 0 deletions
diff --git a/toolchain/toolchain-external/toolchain-external.mk b/toolchain/toolchain-external/toolchain-external.mk
index 613ce5066..745b6858a 100644
--- a/toolchain/toolchain-external/toolchain-external.mk
+++ b/toolchain/toolchain-external/toolchain-external.mk
@@ -237,6 +237,13 @@ TOOLCHAIN_EXTERNAL_CFLAGS += -msoft-float
TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_SOFTFLOAT=1
endif
+# musl does not provide a sys/queue.h implementation, so add the
+# netbsd-queue package that will install a sys/queue.h file in the
+# staging directory based on the NetBSD implementation.
+ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y)
+TOOLCHAIN_EXTERNAL_DEPENDENCIES += netbsd-queue
+endif
+
# The Linaro ARMhf toolchain expects the libraries in
# {/usr,}/lib/arm-linux-gnueabihf, but Buildroot copies them to
# {/usr,}/lib, so we need to create a symbolic link.