mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-17 01:54:22 +00:00

It allows to select the desired chain of trust. Right now, only the TBBR CoT is available. At this stage, this build option only affects the tool itself. It is not plugged into the rest of the build system yet. To use it: > make -C tools/cert_create COT=tbbr Change-Id: I4484418f76d3c7b330d8653c978499a181534dcd Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
78 lines
1.7 KiB
Makefile
78 lines
1.7 KiB
Makefile
#
|
|
# Copyright (c) 2015-2020, ARM Limited and Contributors. All rights reserved.
|
|
#
|
|
# SPDX-License-Identifier: BSD-3-Clause
|
|
#
|
|
|
|
PROJECT := cert_create
|
|
PLAT := none
|
|
V ?= 0
|
|
DEBUG := 0
|
|
BINARY := ${PROJECT}${BIN_EXT}
|
|
OPENSSL_DIR := /usr
|
|
COT := tbbr
|
|
|
|
MAKE_HELPERS_DIRECTORY := ../../make_helpers/
|
|
include ${MAKE_HELPERS_DIRECTORY}build_macros.mk
|
|
include ${MAKE_HELPERS_DIRECTORY}build_env.mk
|
|
|
|
# Common source files.
|
|
OBJECTS := src/cert.o \
|
|
src/cmd_opt.o \
|
|
src/ext.o \
|
|
src/key.o \
|
|
src/main.o \
|
|
src/sha.o
|
|
|
|
# Chain of trust.
|
|
ifeq (${COT},tbbr)
|
|
include src/tbbr/tbbr.mk
|
|
else
|
|
$(error Unknown chain of trust ${COT})
|
|
endif
|
|
|
|
HOSTCCFLAGS := -Wall -std=c99
|
|
|
|
ifeq (${DEBUG},1)
|
|
HOSTCCFLAGS += -g -O0 -DDEBUG -DLOG_LEVEL=40
|
|
else
|
|
HOSTCCFLAGS += -O2 -DLOG_LEVEL=20
|
|
endif
|
|
|
|
ifeq (${V},0)
|
|
Q := @
|
|
else
|
|
Q :=
|
|
endif
|
|
|
|
HOSTCCFLAGS += ${DEFINES}
|
|
|
|
# Make soft links and include from local directory otherwise wrong headers
|
|
# could get pulled in from firmware tree.
|
|
INC_DIR := -I ./include -I ${PLAT_INCLUDE} -I ${OPENSSL_DIR}/include
|
|
LIB_DIR := -L ${OPENSSL_DIR}/lib
|
|
LIB := -lssl -lcrypto
|
|
|
|
HOSTCC ?= gcc
|
|
|
|
.PHONY: all clean realclean
|
|
|
|
all: clean ${BINARY}
|
|
|
|
${BINARY}: ${OBJECTS} Makefile
|
|
@echo " HOSTLD $@"
|
|
@echo 'const char build_msg[] = "Built : "__TIME__", "__DATE__; \
|
|
const char platform_msg[] = "${PLAT_MSG}";' | \
|
|
${HOSTCC} -c ${HOSTCCFLAGS} -xc - -o src/build_msg.o
|
|
${Q}${HOSTCC} src/build_msg.o ${OBJECTS} ${LIB_DIR} ${LIB} -o $@
|
|
|
|
%.o: %.c
|
|
@echo " HOSTCC $<"
|
|
${Q}${HOSTCC} -c ${HOSTCCFLAGS} ${INC_DIR} $< -o $@
|
|
|
|
clean:
|
|
$(call SHELL_DELETE_ALL, src/build_msg.o ${OBJECTS})
|
|
|
|
realclean: clean
|
|
$(call SHELL_DELETE,${BINARY})
|
|
|