1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-08 17:19:20 +00:00

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

(From OE-Core rev: 091d162f29dfefe2716d3b793cea55b9f14d684d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Khem Raj
2025-05-24 07:57:43 -07:00
committed by Richard Purdie
parent dc35424a2d
commit 3e5469456e
+1
View File
@@ -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}"