relibc: add stdint.h include to sys/types/internal.h

Fixes C compilation failures where signal.h (via signalfd_siginfo struct)
uses uint32_t/int32_t/uint64_t without stdint.h being transitively included.

The include chain signal.h -> sys/types.h -> sys/types/internal.h lacked
stdint.h, causing 'unknown type name' errors for uint32_t, uint8_t, and
uintptr_t in any C package compiling against the relibc sysroot headers.

Affected: diffutils, libiconv, and all packages whose autoconf checks
included <signal.h> and failed on the missing stdint types.

Added 'stdint.h' to sys_includes in sys_types_internal/cbindgen.toml.
Durable in local/patches/relibc/P3-sys-types-stdint-include.patch.
This commit is contained in:
2026-05-06 19:49:46 +01:00
parent 884cf1558c
commit 9d8f45f38e
3 changed files with 14 additions and 0 deletions
@@ -0,0 +1,8 @@
--- a/src/header/sys_types_internal/cbindgen.toml
+++ b/src/header/sys_types_internal/cbindgen.toml
@@ -1,4 +1,4 @@
-sys_includes = ["stddef.h"]
+sys_includes = ["stddef.h", "stdint.h"]
# TODO: figure out how to export void* type
after_includes = """
@@ -0,0 +1 @@
../../../local/patches/relibc/P3-sys-types-stdint-include.patch
+5
View File
@@ -17,6 +17,11 @@ patches = [
# timerfd: fix cbindgen.toml to generate C (not C++) headers
"P3-timerfd-cbindgen-fix.patch",
# sys_types_internal: include stdint.h so uint32_t/int32_t are available to
# all downstream headers (signal.h, sys_signalfd.h, etc.) via the
# signal.h -> sys/types.h -> sys/types/internal.h include chain
"P3-sys-types-stdint-include.patch",
# open_memstream: creates stdio/open_memstream.rs
"P3-open-memstream-create.patch",
# open_memstream: wires mod into stdio/mod.rs