| #
ce834c9c |
| 05-Apr-2026 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: add byteorder conversions
Add some standard functions to convert between different byte orders. Conveniently the UAPI headers provide all the necessary functionality.
Signed-off-by: T
tools/nolibc: add byteorder conversions
Add some standard functions to convert between different byte orders. Conveniently the UAPI headers provide all the necessary functionality.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu> Link: https://patch.msgid.link/20260405-nolibc-bswap-v1-1-f7699ca9cee0@weissschuh.net
show more ...
|
| #
7933969e |
| 01-Apr-2026 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: explicitly list architecture headers
Relying on $(wildcard) is brittle and non-deterministic.
similar to all the other headers. Switch the list of architecture headers to an explicit
tools/nolibc: explicitly list architecture headers
Relying on $(wildcard) is brittle and non-deterministic.
similar to all the other headers. Switch the list of architecture headers to an explicit list,
Link: https://patch.msgid.link/20260401-nolibc-cleanup-v1-4-bcf4c9f5c1be@weissschuh.net Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
show more ...
|
| #
b972b37c |
| 01-Apr-2026 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: drop superfluous definition of Q
Q is already defined by tools/scripts/Makefile.include which is included at the top of tools/include/nolibc/Makefile.
Signed-off-by: Thomas Weißschuh
tools/nolibc: drop superfluous definition of Q
Q is already defined by tools/scripts/Makefile.include which is included at the top of tools/include/nolibc/Makefile.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Link: https://patch.msgid.link/20260401-nolibc-cleanup-v1-3-bcf4c9f5c1be@weissschuh.net
show more ...
|
| #
010d03d0 |
| 01-Apr-2026 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: drop superfluous invocation of mkdir
The call to 'mkdir -p $(OUTPUT)sysroot/include' will also create the sysroot directory.
Drop the unnecessary explicit invocation of mkdir.
Signed
tools/nolibc: drop superfluous invocation of mkdir
The call to 'mkdir -p $(OUTPUT)sysroot/include' will also create the sysroot directory.
Drop the unnecessary explicit invocation of mkdir.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Link: https://patch.msgid.link/20260401-nolibc-cleanup-v1-2-bcf4c9f5c1be@weissschuh.net
show more ...
|
| #
5bf4b30e |
| 01-Apr-2026 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: drop superfluous invocation of 'make headers'
The headers_install target of the toplevel Makefile will already make sure that the headers are up-to-date.
Drop the superfluous explicit
tools/nolibc: drop superfluous invocation of 'make headers'
The headers_install target of the toplevel Makefile will already make sure that the headers are up-to-date.
Drop the superfluous explicit invocation.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Link: https://patch.msgid.link/20260401-nolibc-cleanup-v1-1-bcf4c9f5c1be@weissschuh.net
show more ...
|
| #
9da0f529 |
| 18-Mar-2026 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: add err.h
Add a few convenient helpers to print error and warning messages.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu> Link: https://pat
tools/nolibc: add err.h
Add a few convenient helpers to print error and warning messages.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu> Link: https://patch.msgid.link/20260318-nolibc-err-h-v4-2-08247a694bd9@weissschuh.net
show more ...
|
| #
cc6809f6 |
| 03-Dec-2025 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: always use 64-bit mode for s390 header checks
32-bit s390 support was recently removed from nolibc. If the compiler defaults to 32-bit during the header checks, they fail.
Make sure t
tools/nolibc: always use 64-bit mode for s390 header checks
32-bit s390 support was recently removed from nolibc. If the compiler defaults to 32-bit during the header checks, they fail.
Make sure to always use 64-bit mode for s390 heafer checks.
Fixes: 169ebcbb9082 ("tools: Remove s390 compat support") Acked-by: Willy Tarreau <w@1wt.eu> Acked-by: Heiko Carstens <hca@linux.ibm.com> Link: https://patch.msgid.link/20251203-nolibc-headers-check-s390-v1-1-5d35e52a83ba@weissschuh.net Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
show more ...
|
| #
ec4bb8e8 |
| 24-Sep-2025 |
Benjamin Berg <benjamin.berg@intel.com> |
tools/nolibc: add ptrace support
Add ptrace support, as it will be useful in UML.
Signed-off-by: Benjamin Berg <benjamin.berg@intel.com> [Thomas: drop va_args usage and linux/uio.h inclusion] Signe
tools/nolibc: add ptrace support
Add ptrace support, as it will be useful in UML.
Signed-off-by: Benjamin Berg <benjamin.berg@intel.com> [Thomas: drop va_args usage and linux/uio.h inclusion] Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
show more ...
|
| #
1868c027 |
| 02-Nov-2025 |
Willy Tarreau <w@1wt.eu> |
tools/nolibc: make the "headers" target install all supported archs
The efforts we go through by installing a single arch are counter productive when the base directory already supports them all, an
tools/nolibc: make the "headers" target install all supported archs
The efforts we go through by installing a single arch are counter productive when the base directory already supports them all, and the arch-specific files are really small. Let's make the "headers" target simply install headers for all supported archs and stop trying to build a hybrid "arch.h" file on the fly, to instead keep the generic one. Now the same nolibc headers installation will be usable with any arch-specific uapi installation.
Signed-off-by: Willy Tarreau <w@1wt.eu> Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
show more ...
|
| #
44bf8bbe |
| 02-Nov-2025 |
Willy Tarreau <w@1wt.eu> |
tools/nolibc: add the more portable inttypes.h
It's often recommended to only use inttypes.h instead of stdint.h for portability reasons since the former is always present when the latter is present
tools/nolibc: add the more portable inttypes.h
It's often recommended to only use inttypes.h instead of stdint.h for portability reasons since the former is always present when the latter is present, but not conversely, and the former includes the latter. Due to this some simple programs fail to build when including inttypes.h. Let's add one that simply includes nolibc.h to better support these programs.
Signed-off-by: Willy Tarreau <w@1wt.eu> Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
show more ...
|
| #
10f407c6 |
| 02-Nov-2025 |
Willy Tarreau <w@1wt.eu> |
tools/nolibc: provide the portable sys/select.h
Modern programs tend to include sys/select.h to get FD_SET() and FD_CLR() definitions as well as struct fd_set, but in our case it didn't exist.
The
tools/nolibc: provide the portable sys/select.h
Modern programs tend to include sys/select.h to get FD_SET() and FD_CLR() definitions as well as struct fd_set, but in our case it didn't exist.
The definitions were moved from types.h to sys/select.h, which is now included from nolibc.h, and the sys_select() definition moved there as well from sys.h.
Signed-off-by: Willy Tarreau <w@1wt.eu> [Thomas: adapt to current -next branch] Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
show more ...
|
| #
09c873c9 |
| 02-Nov-2025 |
Willy Tarreau <w@1wt.eu> |
tools/nolibc: fix misleading help message regarding installation path
The help message says the headers are going to be installed into tools/include/nolibc but this is only the default if $OUTPUT is
tools/nolibc: fix misleading help message regarding installation path
The help message says the headers are going to be installed into tools/include/nolibc but this is only the default if $OUTPUT is not set, so better clarify this (the current value of $OUTPUT is already shown).
Signed-off-by: Willy Tarreau <w@1wt.eu> Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
show more ...
|
| #
4bb30188 |
| 24-Sep-2025 |
Benjamin Berg <benjamin.berg@intel.com> |
tools/nolibc: add uio.h with readv and writev
This is generally useful and struct iovec is also needed for other purposes such as ptrace.
Signed-off-by: Benjamin Berg <benjamin.berg@intel.com> Sign
tools/nolibc: add uio.h with readv and writev
This is generally useful and struct iovec is also needed for other purposes such as ptrace.
Signed-off-by: Benjamin Berg <benjamin.berg@intel.com> Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
show more ...
|
| #
f6f6be0c |
| 20-Jun-2025 |
Thomas Weißschuh <thomas.weissschuh@linutronix.de> |
tools/nolibc: drop s390 clang target override
tools/scripts/Makefile.include now has the same override, removing the need for the one in the nolibc Makefile.
Drop the superfluous custom override.
tools/nolibc: drop s390 clang target override
tools/scripts/Makefile.include now has the same override, removing the need for the one in the nolibc Makefile.
Drop the superfluous custom override.
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de> Link: https://lore.kernel.org/r/20250620-tools-cross-s390-v2-2-ecda886e00e5@linutronix.de Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
show more ...
|
| #
01e8a6d0 |
| 23-Jun-2025 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: use arm64 name over aarch64
Nolibc generally uses the kernel's architecture names. aarch64 is the only exception.
Remove the special case. Nothing changes for the users.
Acked-by: Wi
tools/nolibc: use arm64 name over aarch64
Nolibc generally uses the kernel's architecture names. aarch64 is the only exception.
Remove the special case. Nothing changes for the users.
Acked-by: Willy Tarreau <w@1wt.eu> Link: https://lore.kernel.org/r/20250623-nolibc-aarch64-arm64-v1-1-a2892f1c1b27@weissschuh.net Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
show more ...
|
| #
f7c8bb6c |
| 23-Jun-2025 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: hide headers_check command by default
If V=1 is not specified the executed commands should not be printed.
Hide the commands by default.
Fixes: a6a054c8ad32 ("tools/nolibc: add targe
tools/nolibc: hide headers_check command by default
If V=1 is not specified the executed commands should not be printed.
Hide the commands by default.
Fixes: a6a054c8ad32 ("tools/nolibc: add target to check header usability") Acked-by: Willy Tarreau <w@1wt.eu> Link: https://lore.kernel.org/r/20250623-nolibc-headers-silent-v1-1-f568facf014c@weissschuh.net Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
show more ...
|
| #
cc6dc5fb |
| 18-Jun-2025 |
Willy Tarreau <w@1wt.eu> |
tools/nolibc: merge i386 and x86_64 into a single x86 arch
This remained the only exception to the kernel's architectures organization and it's always a bit cumbersome to deal with. Let's merge i386
tools/nolibc: merge i386 and x86_64 into a single x86 arch
This remained the only exception to the kernel's architectures organization and it's always a bit cumbersome to deal with. Let's merge i386 and x86_64 into x86. This will result in a single arch-x86.h file by default, and we'll no longer need to merge the two manually during installation. Requesting either i386 or x86_64 will also result in installing x86.
Acked-by: Thomas Weißschuh <linux@weissschuh.net> Signed-off-by: Willy Tarreau <w@1wt.eu>
show more ...
|
| #
2217abe0 |
| 15-May-2025 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: move NULL and offsetof() to sys/stddef.h
This is the location regular userspace expects these definitions.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarre
tools/nolibc: move NULL and offsetof() to sys/stddef.h
This is the location regular userspace expects these definitions.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu> Link: https://lore.kernel.org/r/20250515-nolibc-sys-v1-8-74f82eea3b59@weissschuh.net
show more ...
|
| #
0f971358 |
| 15-May-2025 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: move uname() and friends to sys/utsname.h
This is the location regular userspace expects these definitions.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarr
tools/nolibc: move uname() and friends to sys/utsname.h
This is the location regular userspace expects these definitions.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu> Link: https://lore.kernel.org/r/20250515-nolibc-sys-v1-7-74f82eea3b59@weissschuh.net
show more ...
|
| #
e1211e22 |
| 15-May-2025 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: move makedev() and friends to sys/sysmacros.h
This is the location regular userspace expects these definitions.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy
tools/nolibc: move makedev() and friends to sys/sysmacros.h
This is the location regular userspace expects these definitions.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu> Link: https://lore.kernel.org/r/20250515-nolibc-sys-v1-6-74f82eea3b59@weissschuh.net
show more ...
|
| #
90895247 |
| 15-May-2025 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: move getrlimit() and friends to sys/resource.h
This is the location regular userspace expects these definitions.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy
tools/nolibc: move getrlimit() and friends to sys/resource.h
This is the location regular userspace expects these definitions.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu> Link: https://lore.kernel.org/r/20250515-nolibc-sys-v1-5-74f82eea3b59@weissschuh.net
show more ...
|
| #
2efb9050 |
| 15-May-2025 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: move reboot() to sys/reboot.h
This is the location regular userspace expects this definition.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu>
tools/nolibc: move reboot() to sys/reboot.h
This is the location regular userspace expects this definition.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu> Link: https://lore.kernel.org/r/20250515-nolibc-sys-v1-4-74f82eea3b59@weissschuh.net
show more ...
|
| #
3edd5365 |
| 15-May-2025 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: move prctl() to sys/prctl.h
This is the location regular userspace expects this definition.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu> L
tools/nolibc: move prctl() to sys/prctl.h
This is the location regular userspace expects this definition.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu> Link: https://lore.kernel.org/r/20250515-nolibc-sys-v1-3-74f82eea3b59@weissschuh.net
show more ...
|
| #
6e7c805a |
| 15-May-2025 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: move mount() to sys/mount.h
This is the location regular userspace expects this definition.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu> L
tools/nolibc: move mount() to sys/mount.h
This is the location regular userspace expects this definition.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu> Link: https://lore.kernel.org/r/20250515-nolibc-sys-v1-2-74f82eea3b59@weissschuh.net
show more ...
|
| #
7281be58 |
| 15-May-2025 |
Thomas Weißschuh <linux@weissschuh.net> |
tools/nolibc: move ioctl() to sys/ioctl.h
This is the location regular userspace expects this definition.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu> L
tools/nolibc: move ioctl() to sys/ioctl.h
This is the location regular userspace expects this definition.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu> Link: https://lore.kernel.org/r/20250515-nolibc-sys-v1-1-74f82eea3b59@weissschuh.net
show more ...
|