From 091d162f29dfefe2716d3b793cea55b9f14d684d Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 24 May 2025 07:57:43 -0700 Subject: [PATCH] busybox: Do not define global 'const' with clang This helps fix segfaults when compiling with clang, the option to define global const is configurable now in busybox [1] [2] Turn ptr_to_globals and bb_errno to be non const writing to a const variable is undefined behavior This is undefined as per (C99 6.7.3 paragraph 5) see [1] errno and ptr_to_globals is written to in code, this fails with segfaults when compiled with clang [1] https://git.busybox.net/busybox/commit/?id=1f925038a [2] https://lists.busybox.net/pipermail/busybox/2022-January/089413.html Signed-off-by: Khem Raj Signed-off-by: Mathieu Dubois-Briand Signed-off-by: Richard Purdie --- meta/recipes-core/busybox/busybox.inc | 1 + 1 file changed, 1 insertion(+) diff --git a/meta/recipes-core/busybox/busybox.inc b/meta/recipes-core/busybox/busybox.inc index 638b40c758f..4ebaeb92c97 100644 --- a/meta/recipes-core/busybox/busybox.inc +++ b/meta/recipes-core/busybox/busybox.inc @@ -16,6 +16,7 @@ SECTION = "base" # Whether to split the suid apps into a seperate binary BUSYBOX_SPLIT_SUID ?= "1" +CFLAGS:append:toolchain-clang = " -DBB_GLOBAL_CONST=''" export EXTRA_CFLAGS = "${CFLAGS}" export EXTRA_LDFLAGS = "${LDFLAGS}" -- 2.47.3