From 61f72a34250d063da67f4fc2b0eb8c3fda3376be Mon Sep 17 00:00:00 2001 From: Roberto Vargas Date: Tue, 8 May 2018 10:27:10 +0100 Subject: [PATCH] Create a library file for libc TF Makefile was linking all the objects files generated for the c library instead of creating a static library that could be used in the linking stage. Change-Id: I721daea097e9b13cbb42c9f8eaa2af8fea0799cf Signed-off-by: Roberto Vargas --- Makefile | 14 +++++++------- include/lib/{stdlib => libc}/assert.h | 0 include/lib/{stdlib => libc}/inttypes.h | 0 include/lib/{stdlib => libc}/machine/_inttypes.h | 0 include/lib/{stdlib => libc}/machine/_limits.h | 0 include/lib/{stdlib => libc}/machine/_stdint.h | 0 include/lib/{stdlib => libc}/machine/_types.h | 0 include/lib/{stdlib => libc}/machine/endian.h | 0 include/lib/{stdlib => libc}/stdbool.h | 0 include/lib/{stdlib => libc}/stddef.h | 0 include/lib/{stdlib => libc}/stdio.h | 0 include/lib/{stdlib => libc}/stdlib.h | 0 include/lib/{stdlib => libc}/string.h | 0 include/lib/{stdlib => libc}/strings.h | 0 include/lib/{stdlib => libc}/sys/_null.h | 0 include/lib/{stdlib => libc}/sys/_stdint.h | 0 include/lib/{stdlib => libc}/sys/_timespec.h | 0 include/lib/{stdlib => libc}/sys/_types.h | 0 include/lib/{stdlib => libc}/sys/cdefs.h | 0 include/lib/{stdlib => libc}/sys/ctype.h | 0 include/lib/{stdlib => libc}/sys/endian.h | 0 include/lib/{stdlib => libc}/sys/errno.h | 0 include/lib/{stdlib => libc}/sys/limits.h | 0 include/lib/{stdlib => libc}/sys/stdarg.h | 0 include/lib/{stdlib => libc}/sys/stdint.h | 0 include/lib/{stdlib => libc}/sys/timespec.h | 0 include/lib/{stdlib => libc}/sys/types.h | 0 include/lib/{stdlib => libc}/time.h | 0 include/lib/{stdlib => libc}/xlocale/_strings.h | 0 include/lib/{stdlib => libc}/xlocale/_time.h | 0 lib/{stdlib => libc}/abort.c | 0 lib/{stdlib => libc}/assert.c | 0 lib/{stdlib => libc}/exit.c | 0 lib/{stdlib/stdlib.mk => libc/libc.mk} | 6 +++--- lib/{stdlib => libc}/mem.c | 0 lib/{stdlib => libc}/printf.c | 0 lib/{stdlib => libc}/putchar.c | 0 lib/{stdlib => libc}/puts.c | 0 lib/{stdlib => libc}/sscanf.c | 0 lib/{stdlib => libc}/strchr.c | 0 lib/{stdlib => libc}/strcmp.c | 0 lib/{stdlib => libc}/strlen.c | 0 lib/{stdlib => libc}/strncmp.c | 0 lib/{stdlib => libc}/strnlen.c | 0 lib/{stdlib => libc}/subr_prf.c | 0 lib/{stdlib => libc}/timingsafe_bcmp.c | 0 46 files changed, 10 insertions(+), 10 deletions(-) rename include/lib/{stdlib => libc}/assert.h (100%) rename include/lib/{stdlib => libc}/inttypes.h (100%) rename include/lib/{stdlib => libc}/machine/_inttypes.h (100%) rename include/lib/{stdlib => libc}/machine/_limits.h (100%) rename include/lib/{stdlib => libc}/machine/_stdint.h (100%) rename include/lib/{stdlib => libc}/machine/_types.h (100%) rename include/lib/{stdlib => libc}/machine/endian.h (100%) rename include/lib/{stdlib => libc}/stdbool.h (100%) rename include/lib/{stdlib => libc}/stddef.h (100%) rename include/lib/{stdlib => libc}/stdio.h (100%) rename include/lib/{stdlib => libc}/stdlib.h (100%) rename include/lib/{stdlib => libc}/string.h (100%) rename include/lib/{stdlib => libc}/strings.h (100%) rename include/lib/{stdlib => libc}/sys/_null.h (100%) rename include/lib/{stdlib => libc}/sys/_stdint.h (100%) rename include/lib/{stdlib => libc}/sys/_timespec.h (100%) rename include/lib/{stdlib => libc}/sys/_types.h (100%) rename include/lib/{stdlib => libc}/sys/cdefs.h (100%) rename include/lib/{stdlib => libc}/sys/ctype.h (100%) rename include/lib/{stdlib => libc}/sys/endian.h (100%) rename include/lib/{stdlib => libc}/sys/errno.h (100%) rename include/lib/{stdlib => libc}/sys/limits.h (100%) rename include/lib/{stdlib => libc}/sys/stdarg.h (100%) rename include/lib/{stdlib => libc}/sys/stdint.h (100%) rename include/lib/{stdlib => libc}/sys/timespec.h (100%) rename include/lib/{stdlib => libc}/sys/types.h (100%) rename include/lib/{stdlib => libc}/time.h (100%) rename include/lib/{stdlib => libc}/xlocale/_strings.h (100%) rename include/lib/{stdlib => libc}/xlocale/_time.h (100%) rename lib/{stdlib => libc}/abort.c (100%) rename lib/{stdlib => libc}/assert.c (100%) rename lib/{stdlib => libc}/exit.c (100%) rename lib/{stdlib/stdlib.mk => libc/libc.mk} (77%) rename lib/{stdlib => libc}/mem.c (100%) rename lib/{stdlib => libc}/printf.c (100%) rename lib/{stdlib => libc}/putchar.c (100%) rename lib/{stdlib => libc}/puts.c (100%) rename lib/{stdlib => libc}/sscanf.c (100%) rename lib/{stdlib => libc}/strchr.c (100%) rename lib/{stdlib => libc}/strcmp.c (100%) rename lib/{stdlib => libc}/strlen.c (100%) rename lib/{stdlib => libc}/strncmp.c (100%) rename lib/{stdlib => libc}/strnlen.c (100%) rename lib/{stdlib => libc}/subr_prf.c (100%) rename lib/{stdlib => libc}/timingsafe_bcmp.c (100%) diff --git a/Makefile b/Makefile index 260986412..9c0ab722e 100644 --- a/Makefile +++ b/Makefile @@ -45,7 +45,7 @@ CHECKCODE_ARGS := --no-patch # Do not check the coding style on imported library files or documentation files INC_LIB_DIRS_TO_CHECK := $(sort $(filter-out \ include/lib/libfdt \ - include/lib/stdlib, \ + include/lib/libc, \ $(wildcard include/lib/*))) INC_DIRS_TO_CHECK := $(sort $(filter-out \ include/lib, \ @@ -53,7 +53,7 @@ INC_DIRS_TO_CHECK := $(sort $(filter-out \ LIB_DIRS_TO_CHECK := $(sort $(filter-out \ lib/compiler-rt \ lib/libfdt% \ - lib/stdlib, \ + lib/libc, \ $(wildcard lib/*))) ROOT_DIRS_TO_CHECK := $(sort $(filter-out \ lib \ @@ -198,7 +198,7 @@ DTC_FLAGS += -I dts -O dtb # Common sources and include directories ################################################################################ include lib/compiler-rt/compiler-rt.mk -include lib/stdlib/stdlib.mk +include lib/libc/libc.mk BL_COMMON_SOURCES += common/bl_common.c \ common/tf_log.c \ @@ -211,8 +211,7 @@ BL_COMMON_SOURCES += common/bl_common.c \ plat/common/plat_log_common.c \ plat/common/${ARCH}/plat_common.c \ plat/common/${ARCH}/platform_helpers.S \ - ${COMPILER_RT_SRCS} \ - ${STDLIB_SRCS} + ${COMPILER_RT_SRCS} INCLUDES += -Iinclude \ -Iinclude/bl1 \ @@ -671,6 +670,7 @@ ifeq (${ERROR_DEPRECATED},0) endif $(eval $(call MAKE_LIB_DIR)) +$(eval $(call MAKE_LIB,c)) # Expand build macros for the different images ifeq (${NEED_BL1},yes) @@ -747,7 +747,7 @@ realclean distclean: checkcodebase: locate-checkpatch @echo " CHECKING STYLE" @if test -d .git ; then \ - git ls-files | grep -E -v 'libfdt|stdlib|docs|\.md' | \ + git ls-files | grep -E -v 'libfdt|libc|docs|\.md' | \ while read GIT_FILE ; \ do ${CHECKPATCH} ${CHECKCODE_ARGS} -f $$GIT_FILE ; \ done ; \ @@ -755,7 +755,7 @@ checkcodebase: locate-checkpatch find . -type f -not -iwholename "*.git*" \ -not -iwholename "*build*" \ -not -iwholename "*libfdt*" \ - -not -iwholename "*stdlib*" \ + -not -iwholename "*libc*" \ -not -iwholename "*docs*" \ -not -iwholename "*.md" \ -exec ${CHECKPATCH} ${CHECKCODE_ARGS} -f {} \; ; \ diff --git a/include/lib/stdlib/assert.h b/include/lib/libc/assert.h similarity index 100% rename from include/lib/stdlib/assert.h rename to include/lib/libc/assert.h diff --git a/include/lib/stdlib/inttypes.h b/include/lib/libc/inttypes.h similarity index 100% rename from include/lib/stdlib/inttypes.h rename to include/lib/libc/inttypes.h diff --git a/include/lib/stdlib/machine/_inttypes.h b/include/lib/libc/machine/_inttypes.h similarity index 100% rename from include/lib/stdlib/machine/_inttypes.h rename to include/lib/libc/machine/_inttypes.h diff --git a/include/lib/stdlib/machine/_limits.h b/include/lib/libc/machine/_limits.h similarity index 100% rename from include/lib/stdlib/machine/_limits.h rename to include/lib/libc/machine/_limits.h diff --git a/include/lib/stdlib/machine/_stdint.h b/include/lib/libc/machine/_stdint.h similarity index 100% rename from include/lib/stdlib/machine/_stdint.h rename to include/lib/libc/machine/_stdint.h diff --git a/include/lib/stdlib/machine/_types.h b/include/lib/libc/machine/_types.h similarity index 100% rename from include/lib/stdlib/machine/_types.h rename to include/lib/libc/machine/_types.h diff --git a/include/lib/stdlib/machine/endian.h b/include/lib/libc/machine/endian.h similarity index 100% rename from include/lib/stdlib/machine/endian.h rename to include/lib/libc/machine/endian.h diff --git a/include/lib/stdlib/stdbool.h b/include/lib/libc/stdbool.h similarity index 100% rename from include/lib/stdlib/stdbool.h rename to include/lib/libc/stdbool.h diff --git a/include/lib/stdlib/stddef.h b/include/lib/libc/stddef.h similarity index 100% rename from include/lib/stdlib/stddef.h rename to include/lib/libc/stddef.h diff --git a/include/lib/stdlib/stdio.h b/include/lib/libc/stdio.h similarity index 100% rename from include/lib/stdlib/stdio.h rename to include/lib/libc/stdio.h diff --git a/include/lib/stdlib/stdlib.h b/include/lib/libc/stdlib.h similarity index 100% rename from include/lib/stdlib/stdlib.h rename to include/lib/libc/stdlib.h diff --git a/include/lib/stdlib/string.h b/include/lib/libc/string.h similarity index 100% rename from include/lib/stdlib/string.h rename to include/lib/libc/string.h diff --git a/include/lib/stdlib/strings.h b/include/lib/libc/strings.h similarity index 100% rename from include/lib/stdlib/strings.h rename to include/lib/libc/strings.h diff --git a/include/lib/stdlib/sys/_null.h b/include/lib/libc/sys/_null.h similarity index 100% rename from include/lib/stdlib/sys/_null.h rename to include/lib/libc/sys/_null.h diff --git a/include/lib/stdlib/sys/_stdint.h b/include/lib/libc/sys/_stdint.h similarity index 100% rename from include/lib/stdlib/sys/_stdint.h rename to include/lib/libc/sys/_stdint.h diff --git a/include/lib/stdlib/sys/_timespec.h b/include/lib/libc/sys/_timespec.h similarity index 100% rename from include/lib/stdlib/sys/_timespec.h rename to include/lib/libc/sys/_timespec.h diff --git a/include/lib/stdlib/sys/_types.h b/include/lib/libc/sys/_types.h similarity index 100% rename from include/lib/stdlib/sys/_types.h rename to include/lib/libc/sys/_types.h diff --git a/include/lib/stdlib/sys/cdefs.h b/include/lib/libc/sys/cdefs.h similarity index 100% rename from include/lib/stdlib/sys/cdefs.h rename to include/lib/libc/sys/cdefs.h diff --git a/include/lib/stdlib/sys/ctype.h b/include/lib/libc/sys/ctype.h similarity index 100% rename from include/lib/stdlib/sys/ctype.h rename to include/lib/libc/sys/ctype.h diff --git a/include/lib/stdlib/sys/endian.h b/include/lib/libc/sys/endian.h similarity index 100% rename from include/lib/stdlib/sys/endian.h rename to include/lib/libc/sys/endian.h diff --git a/include/lib/stdlib/sys/errno.h b/include/lib/libc/sys/errno.h similarity index 100% rename from include/lib/stdlib/sys/errno.h rename to include/lib/libc/sys/errno.h diff --git a/include/lib/stdlib/sys/limits.h b/include/lib/libc/sys/limits.h similarity index 100% rename from include/lib/stdlib/sys/limits.h rename to include/lib/libc/sys/limits.h diff --git a/include/lib/stdlib/sys/stdarg.h b/include/lib/libc/sys/stdarg.h similarity index 100% rename from include/lib/stdlib/sys/stdarg.h rename to include/lib/libc/sys/stdarg.h diff --git a/include/lib/stdlib/sys/stdint.h b/include/lib/libc/sys/stdint.h similarity index 100% rename from include/lib/stdlib/sys/stdint.h rename to include/lib/libc/sys/stdint.h diff --git a/include/lib/stdlib/sys/timespec.h b/include/lib/libc/sys/timespec.h similarity index 100% rename from include/lib/stdlib/sys/timespec.h rename to include/lib/libc/sys/timespec.h diff --git a/include/lib/stdlib/sys/types.h b/include/lib/libc/sys/types.h similarity index 100% rename from include/lib/stdlib/sys/types.h rename to include/lib/libc/sys/types.h diff --git a/include/lib/stdlib/time.h b/include/lib/libc/time.h similarity index 100% rename from include/lib/stdlib/time.h rename to include/lib/libc/time.h diff --git a/include/lib/stdlib/xlocale/_strings.h b/include/lib/libc/xlocale/_strings.h similarity index 100% rename from include/lib/stdlib/xlocale/_strings.h rename to include/lib/libc/xlocale/_strings.h diff --git a/include/lib/stdlib/xlocale/_time.h b/include/lib/libc/xlocale/_time.h similarity index 100% rename from include/lib/stdlib/xlocale/_time.h rename to include/lib/libc/xlocale/_time.h diff --git a/lib/stdlib/abort.c b/lib/libc/abort.c similarity index 100% rename from lib/stdlib/abort.c rename to lib/libc/abort.c diff --git a/lib/stdlib/assert.c b/lib/libc/assert.c similarity index 100% rename from lib/stdlib/assert.c rename to lib/libc/assert.c diff --git a/lib/stdlib/exit.c b/lib/libc/exit.c similarity index 100% rename from lib/stdlib/exit.c rename to lib/libc/exit.c diff --git a/lib/stdlib/stdlib.mk b/lib/libc/libc.mk similarity index 77% rename from lib/stdlib/stdlib.mk rename to lib/libc/libc.mk index 821162354..ded3d7459 100644 --- a/lib/stdlib/stdlib.mk +++ b/lib/libc/libc.mk @@ -4,7 +4,7 @@ # SPDX-License-Identifier: BSD-3-Clause # -STDLIB_SRCS := $(addprefix lib/stdlib/, \ +LIBC_SRCS := $(addprefix lib/libc/, \ abort.c \ assert.c \ exit.c \ @@ -21,5 +21,5 @@ STDLIB_SRCS := $(addprefix lib/stdlib/, \ subr_prf.c \ timingsafe_bcmp.c) -INCLUDES += -Iinclude/lib/stdlib \ - -Iinclude/lib/stdlib/sys +INCLUDES += -Iinclude/lib/libc \ + -Iinclude/lib/libc/sys diff --git a/lib/stdlib/mem.c b/lib/libc/mem.c similarity index 100% rename from lib/stdlib/mem.c rename to lib/libc/mem.c diff --git a/lib/stdlib/printf.c b/lib/libc/printf.c similarity index 100% rename from lib/stdlib/printf.c rename to lib/libc/printf.c diff --git a/lib/stdlib/putchar.c b/lib/libc/putchar.c similarity index 100% rename from lib/stdlib/putchar.c rename to lib/libc/putchar.c diff --git a/lib/stdlib/puts.c b/lib/libc/puts.c similarity index 100% rename from lib/stdlib/puts.c rename to lib/libc/puts.c diff --git a/lib/stdlib/sscanf.c b/lib/libc/sscanf.c similarity index 100% rename from lib/stdlib/sscanf.c rename to lib/libc/sscanf.c diff --git a/lib/stdlib/strchr.c b/lib/libc/strchr.c similarity index 100% rename from lib/stdlib/strchr.c rename to lib/libc/strchr.c diff --git a/lib/stdlib/strcmp.c b/lib/libc/strcmp.c similarity index 100% rename from lib/stdlib/strcmp.c rename to lib/libc/strcmp.c diff --git a/lib/stdlib/strlen.c b/lib/libc/strlen.c similarity index 100% rename from lib/stdlib/strlen.c rename to lib/libc/strlen.c diff --git a/lib/stdlib/strncmp.c b/lib/libc/strncmp.c similarity index 100% rename from lib/stdlib/strncmp.c rename to lib/libc/strncmp.c diff --git a/lib/stdlib/strnlen.c b/lib/libc/strnlen.c similarity index 100% rename from lib/stdlib/strnlen.c rename to lib/libc/strnlen.c diff --git a/lib/stdlib/subr_prf.c b/lib/libc/subr_prf.c similarity index 100% rename from lib/stdlib/subr_prf.c rename to lib/libc/subr_prf.c diff --git a/lib/stdlib/timingsafe_bcmp.c b/lib/libc/timingsafe_bcmp.c similarity index 100% rename from lib/stdlib/timingsafe_bcmp.c rename to lib/libc/timingsafe_bcmp.c