[PATCH] support: arm: Add libc_do_syscall function to libsupport routines

Lukasz Majewski lukma@denx.de
Mon Mar 15 15:47:23 GMT 2021


The ARM port requires the __libc_do_syscall function to be able to call
utimensat_time64 syscall required to check if file system supports 64
bit time.

This patch adds the sysdeps/unix/sysv/linux/arm/libc-do-syscall.S to
libsupport routines.

It fixes the following error on ARM 32 bit port:

y2038-glibc/support/support_path_support_time64.c:34: undefined reference to
`__libc_do_syscall'
collect2: error: ld returned 1 exit status
---
 sysdeps/unix/sysv/linux/arm/Makefile | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/sysdeps/unix/sysv/linux/arm/Makefile b/sysdeps/unix/sysv/linux/arm/Makefile
index abdf01f00c..2344e74554 100644
--- a/sysdeps/unix/sysv/linux/arm/Makefile
+++ b/sysdeps/unix/sysv/linux/arm/Makefile
@@ -55,6 +55,11 @@ LDFLAGS-tst-rfc3484-2 += $(common-objpfx)csu/libc-do-syscall.o
 LDFLAGS-tst-rfc3484-3 += $(common-objpfx)csu/libc-do-syscall.o
 endif
 
+ifeq ($(subdir),support)
+libsupport-sysdep_routines += libc-do-syscall
+libsupport-static-only-routines += libc-do-syscall
+endif
+
 abi-variants := soft hard
 
 ifeq (,$(filter $(default-abi),$(abi-variants)))
-- 
2.20.1



More information about the Libc-alpha mailing list