mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-25 14:25:44 +00:00
Move stdlib header files to include/lib/stdlib
* Move stdlib header files from include/stdlib to include/lib/stdlib for consistency with other library headers. * Fix checkpatch paths to continue excluding stdlib files. * Create stdlib.mk to define the stdlib source files and include directories. * Include stdlib.mk from the top level Makefile. * Update stdlib header path in the fip_create Makefile. * Update porting-guide.md with the new paths. Change-Id: Ia92c2dc572e9efb54a783e306b5ceb2ce24d27fa
This commit is contained in:
parent
a7e530331d
commit
f0b489c1d2
31 changed files with 77 additions and 28 deletions
44
Makefile
44
Makefile
|
@ -112,11 +112,26 @@ CHECK_IGNORE := --ignore COMPLEX_MACRO \
|
||||||
--ignore GIT_COMMIT_ID
|
--ignore GIT_COMMIT_ID
|
||||||
CHECKPATCH_ARGS := --no-tree --no-signoff ${CHECK_IGNORE}
|
CHECKPATCH_ARGS := --no-tree --no-signoff ${CHECK_IGNORE}
|
||||||
CHECKCODE_ARGS := --no-patch --no-tree --no-signoff ${CHECK_IGNORE}
|
CHECKCODE_ARGS := --no-patch --no-tree --no-signoff ${CHECK_IGNORE}
|
||||||
# Do not check the coding style on C library files or documentation files
|
# Do not check the coding style on imported library files or documentation files
|
||||||
INCLUDE_DIRS_TO_CHECK := $(sort $(filter-out include/stdlib, $(wildcard include/*)))
|
INC_LIB_DIRS_TO_CHECK := $(sort $(filter-out \
|
||||||
LIB_DIRS_TO_CHECK := $(sort $(filter-out lib/stdlib, $(wildcard lib/*)))
|
include/lib/stdlib, \
|
||||||
ROOT_DIRS_TO_CHECK := $(sort $(filter-out lib include docs %.md, $(wildcard *)))
|
$(wildcard include/lib/*)))
|
||||||
CHECK_PATHS := ${ROOT_DIRS_TO_CHECK} ${INCLUDE_DIRS_TO_CHECK} ${LIB_DIRS_TO_CHECK}
|
INC_DIRS_TO_CHECK := $(sort $(filter-out \
|
||||||
|
include/lib, \
|
||||||
|
$(wildcard include/*)))
|
||||||
|
LIB_DIRS_TO_CHECK := $(sort $(filter-out \
|
||||||
|
lib/stdlib, \
|
||||||
|
$(wildcard lib/*)))
|
||||||
|
ROOT_DIRS_TO_CHECK := $(sort $(filter-out \
|
||||||
|
lib \
|
||||||
|
include \
|
||||||
|
docs \
|
||||||
|
%.md, \
|
||||||
|
$(wildcard *)))
|
||||||
|
CHECK_PATHS := ${ROOT_DIRS_TO_CHECK} \
|
||||||
|
${INC_DIRS_TO_CHECK} \
|
||||||
|
${INC_LIB_DIRS_TO_CHECK} \
|
||||||
|
${LIB_DIRS_TO_CHECK}
|
||||||
|
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
|
@ -193,26 +208,15 @@ LDFLAGS += --gc-sections
|
||||||
################################################################################
|
################################################################################
|
||||||
# Common sources and include directories
|
# Common sources and include directories
|
||||||
################################################################################
|
################################################################################
|
||||||
|
include lib/stdlib/stdlib.mk
|
||||||
|
|
||||||
BL_COMMON_SOURCES += common/bl_common.c \
|
BL_COMMON_SOURCES += common/bl_common.c \
|
||||||
common/tf_printf.c \
|
common/tf_printf.c \
|
||||||
common/aarch64/debug.S \
|
common/aarch64/debug.S \
|
||||||
lib/aarch64/cache_helpers.S \
|
lib/aarch64/cache_helpers.S \
|
||||||
lib/aarch64/misc_helpers.S \
|
lib/aarch64/misc_helpers.S \
|
||||||
lib/stdlib/abort.c \
|
plat/common/aarch64/platform_helpers.S \
|
||||||
lib/stdlib/assert.c \
|
${STDLIB_SRCS}
|
||||||
lib/stdlib/exit.c \
|
|
||||||
lib/stdlib/mem.c \
|
|
||||||
lib/stdlib/printf.c \
|
|
||||||
lib/stdlib/putchar.c \
|
|
||||||
lib/stdlib/puts.c \
|
|
||||||
lib/stdlib/sscanf.c \
|
|
||||||
lib/stdlib/strchr.c \
|
|
||||||
lib/stdlib/strcmp.c \
|
|
||||||
lib/stdlib/strlen.c \
|
|
||||||
lib/stdlib/strncmp.c \
|
|
||||||
lib/stdlib/subr_prf.c \
|
|
||||||
plat/common/aarch64/platform_helpers.S
|
|
||||||
|
|
||||||
INCLUDES += -Iinclude/bl1 \
|
INCLUDES += -Iinclude/bl1 \
|
||||||
-Iinclude/bl31 \
|
-Iinclude/bl31 \
|
||||||
|
@ -227,8 +231,6 @@ INCLUDES += -Iinclude/bl1 \
|
||||||
-Iinclude/lib/aarch64 \
|
-Iinclude/lib/aarch64 \
|
||||||
-Iinclude/lib/cpus/aarch64 \
|
-Iinclude/lib/cpus/aarch64 \
|
||||||
-Iinclude/plat/common \
|
-Iinclude/plat/common \
|
||||||
-Iinclude/stdlib \
|
|
||||||
-Iinclude/stdlib/sys \
|
|
||||||
${PLAT_INCLUDES} \
|
${PLAT_INCLUDES} \
|
||||||
${SPD_INCLUDES}
|
${SPD_INCLUDES}
|
||||||
|
|
||||||
|
|
|
@ -2035,12 +2035,12 @@ library only contains those C library definitions required by the local
|
||||||
implementation. If more functionality is required, the needed library functions
|
implementation. If more functionality is required, the needed library functions
|
||||||
will need to be added to the local implementation.
|
will need to be added to the local implementation.
|
||||||
|
|
||||||
Versions of [FreeBSD] headers can be found in `include/stdlib`. Some of these
|
Versions of [FreeBSD] headers can be found in `include/lib/stdlib`. Some of
|
||||||
headers have been cut down in order to simplify the implementation. In order to
|
these headers have been cut down in order to simplify the implementation. In
|
||||||
minimize changes to the header files, the [FreeBSD] layout has been maintained.
|
order to minimize changes to the header files, the [FreeBSD] layout has been
|
||||||
The generic C library definitions can be found in `include/stdlib` with more
|
maintained. The generic C library definitions can be found in
|
||||||
system and machine specific declarations in `include/stdlib/sys` and
|
`include/lib/stdlib` with more system and machine specific declarations in
|
||||||
`include/stdlib/machine`.
|
`include/lib/stdlib/sys` and `include/lib/stdlib/machine`.
|
||||||
|
|
||||||
The local C library implementations can be found in `lib/stdlib`. In order to
|
The local C library implementations can be found in `lib/stdlib`. In order to
|
||||||
extend the C library these files may need to be modified. It is recommended to
|
extend the C library these files may need to be modified. It is recommended to
|
||||||
|
|
47
lib/stdlib/stdlib.mk
Normal file
47
lib/stdlib/stdlib.mk
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
#
|
||||||
|
# Copyright (c) 2016, ARM Limited and Contributors. All rights reserved.
|
||||||
|
#
|
||||||
|
# Redistribution and use in source and binary forms, with or without
|
||||||
|
# modification, are permitted provided that the following conditions are met:
|
||||||
|
#
|
||||||
|
# Redistributions of source code must retain the above copyright notice, this
|
||||||
|
# list of conditions and the following disclaimer.
|
||||||
|
#
|
||||||
|
# Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
# this list of conditions and the following disclaimer in the documentation
|
||||||
|
# and/or other materials provided with the distribution.
|
||||||
|
#
|
||||||
|
# Neither the name of ARM nor the names of its contributors may be used
|
||||||
|
# to endorse or promote products derived from this software without specific
|
||||||
|
# prior written permission.
|
||||||
|
#
|
||||||
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||||
|
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
|
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
|
||||||
|
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||||
|
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||||
|
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||||
|
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||||
|
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||||
|
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
|
# POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
#
|
||||||
|
|
||||||
|
STDLIB_SRCS := $(addprefix lib/stdlib/, \
|
||||||
|
abort.c \
|
||||||
|
assert.c \
|
||||||
|
exit.c \
|
||||||
|
mem.c \
|
||||||
|
printf.c \
|
||||||
|
putchar.c \
|
||||||
|
puts.c \
|
||||||
|
sscanf.c \
|
||||||
|
strchr.c \
|
||||||
|
strcmp.c \
|
||||||
|
strlen.c \
|
||||||
|
strncmp.c \
|
||||||
|
subr_prf.c)
|
||||||
|
|
||||||
|
INCLUDES += -Iinclude/lib/stdlib \
|
||||||
|
-Iinclude/lib/stdlib/sys
|
|
@ -69,7 +69,7 @@ ${PROJECT}: ${OBJECTS} Makefile
|
||||||
# path. This avoids conflicts with definitions in the compiler standard
|
# path. This avoids conflicts with definitions in the compiler standard
|
||||||
# include path.
|
# include path.
|
||||||
#
|
#
|
||||||
uuid.h : ../../include/stdlib/sys/uuid.h
|
uuid.h : ../../include/lib/stdlib/sys/uuid.h
|
||||||
$(call SHELL_COPY,$<,$@)
|
$(call SHELL_COPY,$<,$@)
|
||||||
|
|
||||||
firmware_image_package.h : ../../include/common/firmware_image_package.h
|
firmware_image_package.h : ../../include/common/firmware_image_package.h
|
||||||
|
|
Loading…
Add table
Reference in a new issue