1# 2# Copyright (c) 2014-2021, ARM Limited and Contributors. All rights reserved. 3# 4# SPDX-License-Identifier: BSD-3-Clause 5# 6 7MAKE_HELPERS_DIRECTORY := ../../make_helpers/ 8include ${MAKE_HELPERS_DIRECTORY}build_macros.mk 9include ${MAKE_HELPERS_DIRECTORY}build_env.mk 10 11FIPTOOL ?= fiptool${BIN_EXT} 12PROJECT := $(notdir ${FIPTOOL}) 13OBJECTS := fiptool.o tbbr_config.o 14V ?= 0 15OPENSSL_DIR := /usr 16 17 18override CPPFLAGS += -D_GNU_SOURCE -D_XOPEN_SOURCE=700 19HOSTCCFLAGS := -Wall -Werror -pedantic -std=c99 20ifeq (${DEBUG},1) 21 HOSTCCFLAGS += -g -O0 -DDEBUG 22else 23 HOSTCCFLAGS += -O2 24endif 25LDLIBS := -L${OPENSSL_DIR}/lib -lcrypto 26 27ifeq (${V},0) 28 Q := @ 29else 30 Q := 31endif 32 33INCLUDE_PATHS := -I../../include/tools_share -I${OPENSSL_DIR}/include 34 35HOSTCC ?= gcc 36 37ifneq (${PLAT},) 38TF_PLATFORM_ROOT := ../../plat/ 39include ${MAKE_HELPERS_DIRECTORY}plat_helpers.mk 40PLAT_FIPTOOL_HELPER_MK := ${PLAT_DIR}/plat_fiptool.mk 41endif 42 43ifneq (,$(wildcard ${PLAT_FIPTOOL_HELPER_MK})) 44include ${PLAT_FIPTOOL_HELPER_MK} 45endif 46 47.PHONY: all clean distclean 48 49all: ${PROJECT} 50 51${PROJECT}: ${OBJECTS} Makefile 52 @echo " HOSTLD $@" 53 ${Q}${HOSTCC} ${OBJECTS} -o $@ ${LDLIBS} 54 @${ECHO_BLANK_LINE} 55 @echo "Built $@ successfully" 56 @${ECHO_BLANK_LINE} 57 58%.o: %.c Makefile 59 @echo " HOSTCC $<" 60 ${Q}${HOSTCC} -c ${CPPFLAGS} ${HOSTCCFLAGS} ${INCLUDE_PATHS} $< -o $@ 61 62clean: 63 $(call SHELL_DELETE_ALL, ${PROJECT} ${OBJECTS}) 64