From 99db13bfaa5b11345730937c2e0e56cb670c01a5 Mon Sep 17 00:00:00 2001 From: Olivier Deprez Date: Wed, 24 Jan 2024 11:15:26 +0100 Subject: [PATCH] fix(libc): add memcpy_s source file to libc_asm mk Change [1] introduced the memcpy_s function and added the source file to lib/libc/libc.mk but omitted to update lib/libc/libc_asm.mk Arm platforms (and platforms from one partner) use OVERRIDE_LIBC=1 option as a platform default hence consume libc_asm.mk To prevent this confusion to happen again, create libc_common.mk for the common set of C files to build. libc_common.mk is included by both libc.mk and libc_asm.mk The latter adds asm implementations of libc functions. [1] https://review.trustedfirmware.org/c/TF-A/trusted-firmware-a/+/21450 Signed-off-by: Olivier Deprez Change-Id: Ibd36ea5c561e35f268048ccbefc8f47485f64bdf --- lib/libc/libc.mk | 40 +++----------------------------------- lib/libc/libc_asm.mk | 35 +++------------------------------ lib/libc/libc_common.mk | 43 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 49 insertions(+), 69 deletions(-) create mode 100644 lib/libc/libc_common.mk diff --git a/lib/libc/libc.mk b/lib/libc/libc.mk index 95da68c7a..633386cbc 100644 --- a/lib/libc/libc.mk +++ b/lib/libc/libc.mk @@ -1,42 +1,8 @@ # -# Copyright (c) 2016-2021, Arm Limited and Contributors. All rights reserved. +# Copyright (c) 2016-2024, Arm Limited and Contributors. All rights reserved. # # SPDX-License-Identifier: BSD-3-Clause # +# -LIBC_SRCS := $(addprefix lib/libc/, \ - abort.c \ - assert.c \ - exit.c \ - memchr.c \ - memcmp.c \ - memcpy.c \ - memcpy_s.c \ - memmove.c \ - memrchr.c \ - memset.c \ - printf.c \ - putchar.c \ - puts.c \ - snprintf.c \ - strchr.c \ - strcmp.c \ - strlcat.c \ - strlcpy.c \ - strlen.c \ - strncmp.c \ - strnlen.c \ - strrchr.c \ - strtok.c \ - strtoul.c \ - strtoll.c \ - strtoull.c \ - strtol.c) - -ifeq (${ARCH},aarch64) -LIBC_SRCS += $(addprefix lib/libc/aarch64/, \ - setjmp.S) -endif - -INCLUDES += -Iinclude/lib/libc \ - -Iinclude/lib/libc/$(ARCH) \ +include lib/libc/libc_common.mk diff --git a/lib/libc/libc_asm.mk b/lib/libc/libc_asm.mk index 2f272651b..6d9bb9deb 100644 --- a/lib/libc/libc_asm.mk +++ b/lib/libc/libc_asm.mk @@ -1,44 +1,15 @@ # -# Copyright (c) 2020-2021, Arm Limited. All rights reserved. +# Copyright (c) 2020-2024, Arm Limited. All rights reserved. # # SPDX-License-Identifier: BSD-3-Clause # -LIBC_SRCS := $(addprefix lib/libc/, \ - abort.c \ - assert.c \ - exit.c \ - memchr.c \ - memcmp.c \ - memcpy.c \ - memmove.c \ - memrchr.c \ - printf.c \ - putchar.c \ - puts.c \ - snprintf.c \ - strchr.c \ - strcmp.c \ - strlcat.c \ - strlcpy.c \ - strlen.c \ - strncmp.c \ - strnlen.c \ - strrchr.c \ - strtok.c \ - strtoul.c \ - strtoll.c \ - strtoull.c \ - strtol.c) +include lib/libc/libc_common.mk ifeq (${ARCH},aarch64) LIBC_SRCS += $(addprefix lib/libc/aarch64/, \ - memset.S \ - setjmp.S) + memset.S) else LIBC_SRCS += $(addprefix lib/libc/aarch32/, \ memset.S) endif - -INCLUDES += -Iinclude/lib/libc \ - -Iinclude/lib/libc/$(ARCH) \ diff --git a/lib/libc/libc_common.mk b/lib/libc/libc_common.mk new file mode 100644 index 000000000..fb8117f22 --- /dev/null +++ b/lib/libc/libc_common.mk @@ -0,0 +1,43 @@ +# +# Copyright (c) 2024, Arm Limited and Contributors. All rights reserved. +# +# SPDX-License-Identifier: BSD-3-Clause +# + +LIBC_SRCS := $(addprefix lib/libc/, \ + abort.c \ + assert.c \ + exit.c \ + memchr.c \ + memcmp.c \ + memcpy.c \ + memcpy_s.c \ + memmove.c \ + memrchr.c \ + memset.c \ + printf.c \ + putchar.c \ + puts.c \ + snprintf.c \ + strchr.c \ + strcmp.c \ + strlcat.c \ + strlcpy.c \ + strlen.c \ + strncmp.c \ + strnlen.c \ + strrchr.c \ + strtok.c \ + strtoul.c \ + strtoll.c \ + strtoull.c \ + strtol.c) + +ifeq (${ARCH},aarch64) +LIBC_SRCS += $(addprefix lib/libc/aarch64/, \ + setjmp.S) +endif + +INCLUDES += -Iinclude/lib/libc \ + -Iinclude/lib/libc/$(ARCH) \ +