Am Montag, dem 27.01.2025 um 21:01 +0100 schrieb Ahmad Fatoum: > On 27.01.25 20:06, Khem Raj wrote: > > On Mon, Jan 27, 2025 at 7:40 AM Enrico Jörns via > > lists.openembedded.org <ejo=pengutronix...@lists.openembedded.org> > > wrote: > > > > > > Changes: > > > > > > * Added LLVM/Clang support for the sandbox architecture. > > > * Enabled command execution from the sandbox command line. > > > * Improved TFTP with dentry caching and default-disabled window size. > > > * Introduced hardening features: register zeroing, stack variable > > > initialization, and malloc buffer zeroing. > > > * Enhanced AM625 support with network support, watchdog driver, and > > > bootsource detection. > > > > > > Changelog: > > > https://lore.barebox.org/barebox/z4ouydhxeatnk...@pengutronix.de/T/#u > > > > > > Also adds a new patch created for fixing barebox-tools build with musl. > > > > > > Signed-off-by: Enrico Jörns <e...@pengutronix.de> > > > --- > > > v1 -> v2: > > > * added barebox patch file to fix musl build (by Ahmad Fatoum) > > > * minor wording change in 'Changes' > > > [* added patch to remove old barebox .patch file] > > > > > > meta/recipes-bsp/barebox/barebox-common.inc | 6 +- > > > ...linux-types.h-define-loff_t-for-musl.patch | 57 +++++++++++++++++++ > > > 2 files changed, 61 insertions(+), 2 deletions(-) > > > create mode 100644 > > > meta/recipes-bsp/barebox/files/0001-scripts-include-linux-types.h-define- > > > loff_t-for-musl.patch > > > > > > diff --git a/meta/recipes-bsp/barebox/barebox-common.inc > > > b/meta/recipes-bsp/barebox/barebox- > > > common.inc > > > index fce3b825ae..13f1d81289 100644 > > > --- a/meta/recipes-bsp/barebox/barebox-common.inc > > > +++ b/meta/recipes-bsp/barebox/barebox-common.inc > > > @@ -3,6 +3,8 @@ SECTION = "bootloaders" > > > > > > LIC_FILES_CHKSUM = "file://COPYING;md5=f5125d13e000b9ca1f0d3364286c4192" > > > > > > -PV = "2024.12.0" > > > +PV = "2025.01.0" > > > SRC_URI = "https://barebox.org/download/barebox-${PV}.tar.bz2" > > > -SRC_URI[sha256sum] = > > > "717a2416b37942f584b0bb2eb61ccbf85dc0f1a5c841318f47cd6967b9c4dcab" > > > +SRC_URI[sha256sum] = > > > "288a838e6fe8897ea46dabd112e42287177353c88a7d442cefc8be8d1a85f5b5" > > > + > > > +SRC_URI += > > > "file://0001-scripts-include-linux-types.h-define-loff_t-for-musl.patch" > > > diff --git > > > a/meta/recipes-bsp/barebox/files/0001-scripts-include-linux-types.h-define-loff_t- > > > for-musl.patch > > > b/meta/recipes-bsp/barebox/files/0001-scripts-include-linux-types.h-define- > > > loff_t-for-musl.patch > > > new file mode 100644 > > > index 0000000000..bce9d2ebf5 > > > --- /dev/null > > > +++ > > > b/meta/recipes-bsp/barebox/files/0001-scripts-include-linux-types.h-define-loff_t-for- > > > musl.patch > > > @@ -0,0 +1,57 @@ > > > +From e46f4add079bbae4ac0926ed113e393786e89bef Mon Sep 17 00:00:00 2001 > > > +From: Ahmad Fatoum <a.fat...@pengutronix.de> > > > +Date: Mon, 27 Jan 2025 15:31:46 +0100 > > > +Subject: [PATCH] scripts: include/linux/types.h: define loff_t for musl > > > +MIME-Version: 1.0 > > > +Content-Type: text/plain; charset=UTF-8 > > > +Content-Transfer-Encoding: 8bit > > > + > > > +musl doesn't define loff_t, but glibc does and both of them define > > > +__linux__. This leads to build errors with musl when code makes it into > > > +scripts/ that uses loff_t. This was already fixed once e.g. in commit > > > +c0d065fb0aa0 ("scripts: bareboximd: remove usage of loff_t"). > > > + > > > +Instead of playing whack-a-mole in future, let's just define loff_t > > > +for non-glibc builds of scripts/. > > > + > > > > loff_t is not posix defined but it is available in musl. > > you need to add -D_GNU_SOURCE to the compiler cmdline. > > I somehow thought _GNU_SOURCE was already being set globally, but you're > right: Not all files were setting it. > > I just Cc'd you on a patch[1] to define it on the compiler command line > instead. > > [1]: > https://lore.kernel.org/barebox/20250127195109.3928003-1-a.fat...@pengutronix.de/T/#u
FTR: The musl compatibility was now fixed shortly before barebox 2025.02.0 came out. It does not really make sense to backport these patches to 2025.01.0. Instead I'll send an update to the 2025.02.0 version. Thank you all and regards, Enrico > Thanks, > Ahmad > > > > > > +Also, make sure <linux/types.h> is always included for scripts/common.h, > > > +which is the only header currently making use of loff_t. > > > + > > > +Fixes: 5171f4d0696f ("scripts: implement read_fd and pread_full for > > > tools") > > > +Upstream-Status: Submitted > > > [https://lore.barebox.org/barebox/20250127143146.2965544-1-a.fat...@pengutronix.de/T/#u] > > > +Reported-by: Enrico Jörns <e...@pengutronix.de> > > > +Signed-off-by: Ahmad Fatoum <a.fat...@pengutronix.de> > > > +--- > > > + scripts/common.h | 2 ++ > > > + scripts/include/linux/types.h | 2 +- > > > + 2 files changed, 3 insertions(+), 1 deletion(-) > > > + > > > +diff --git a/scripts/common.h b/scripts/common.h > > > +index a0d16606b5..21ec576a5b 100644 > > > +--- a/scripts/common.h > > > ++++ b/scripts/common.h > > > +@@ -1,6 +1,8 @@ > > > + #ifndef __COMMON_H > > > + #define __COMMON_H > > > + > > > ++#include <linux/types.h> > > > ++ > > > + int read_file_2(const char *filename, size_t *size, void **outbuf, > > > size_t max_size); > > > + void *read_file(const char *filename, size_t *size); > > > + void *read_fd(int fd, size_t *out_size); > > > +diff --git a/scripts/include/linux/types.h > > > b/scripts/include/linux/types.h > > > +index e81d7e8101..02a330cd4e 100644 > > > +--- a/scripts/include/linux/types.h > > > ++++ b/scripts/include/linux/types.h > > > +@@ -14,7 +14,7 @@ typedef int16_t __s16; > > > + typedef uint8_t __u8; > > > + typedef int8_t __s8; > > > + > > > +-#ifndef __linux__ > > > ++#ifndef __GLIBC__ > > > + typedef long long loff_t; > > > + #endif > > > + > > > +-- > > > +2.39.5 > > > + > > > -- > > > 2.39.5 > > > > > > > > > > > > > > > > -- Pengutronix e.K. | Enrico Jörns | Embedded Linux Consulting & Support | https://www.pengutronix.de/ | Steuerwalder Str. 21 | Phone: +49-5121-206917-180 | 31137 Hildesheim, Germany | Fax: +49-5121-206917-9 |
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#211957): https://lists.openembedded.org/g/openembedded-core/message/211957 Mute This Topic: https://lists.openembedded.org/mt/110840770/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-