[Buildroot] [PATCH] package/uclibc: disable SSP support for riscv32
Romain Naour via buildroot <[email protected]>
| Newsgroups | net.busybox.buildroot |
|---|---|
| Message-ID | <[email protected]> |
On modern 32-bit architectures like RISC-V (riscv32), legacy 32-bit time syscalls like __NR_gettimeofday are intentionally omitted because RV32 implements a strict time64-only ABI to avoid the Year 2038 bug. But uclibc-ng code [1] is using a direct __NR_gettimeofday syscall that is not defined for riscv32. [1] https://github.com/wbx-github/uclibc-ng/blob/ae4a98f9612c7050b1bceb9c8340fe5ef9345e22/ldso/include/dl-syscall.h#L263 As a workaround, we have to disable the SSP support for uclibc-ng toolchain on riscv32 for now. Fixes: https://autobuild.buildroot.org/results/1b6/1b6f2161b11390b6545bddbc39b444401c718ebb/build-end.log Cc: Thomas Petazzoni <[email protected]> Cc: Waldemar Brodkorb <[email protected]> Signed-off-by: Romain Naour <[email protected]> --- package/uclibc/Config.in | 3 +++ 1 file changed, 3 insertions(+) diff --git a/package/uclibc/Config.in b/package/uclibc/Config.in index 6b8b0d86f8..dfb74da789 100644 --- a/package/uclibc/Config.in +++ b/package/uclibc/Config.in @@ -100,6 +100,9 @@ config BR2_PTHREAD_DEBUG config BR2_TOOLCHAIN_BUILDROOT_USE_SSP bool "Enable stack protection support" + # uClibc-ng ssp support requires __NR_gettimeofday defined. + # https://github.com/wbx-github/uclibc-ng/issues/19 + depends on !BR2_RISCV_32 depends on BR2_PACKAGE_HOST_BINUTILS_SUPPORTS_CFI select BR2_TOOLCHAIN_HAS_SSP help -- 2.55.0 _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot