xref: /rk3399_ARM-atf/tools/marvell/doimage/Makefile (revision cc277de81692cf72f067354ada6e84f5e996f6b8)
16414dc6dSKonstantin Porotchkin#
26414dc6dSKonstantin Porotchkin# Copyright (C) 2018 Marvell International Ltd.
36414dc6dSKonstantin Porotchkin#
46414dc6dSKonstantin Porotchkin# SPDX-License-Identifier:     BSD-3-Clause
56414dc6dSKonstantin Porotchkin# https://spdx.org/licenses
66414dc6dSKonstantin Porotchkin
7*cc277de8SChris Kaytoolchains := host
8*cc277de8SChris Kay
9*cc277de8SChris Kayinclude ../../../make_helpers/toolchain.mk
10*cc277de8SChris Kay
116414dc6dSKonstantin PorotchkinPROJECT = doimage
126414dc6dSKonstantin PorotchkinOBJECTS = doimage.o
136414dc6dSKonstantin Porotchkin
146414dc6dSKonstantin PorotchkinHOSTCCFLAGS = -Wall -Werror
156414dc6dSKonstantin Porotchkinifeq (${DEBUG},1)
166414dc6dSKonstantin Porotchkin  HOSTCCFLAGS += -g -O0 -DDEBUG
176414dc6dSKonstantin Porotchkinelse
186414dc6dSKonstantin Porotchkin  HOSTCCFLAGS += -O2
196414dc6dSKonstantin Porotchkinendif
206414dc6dSKonstantin Porotchkin
216414dc6dSKonstantin Porotchkinifeq (${MARVELL_SECURE_BOOT},1)
226414dc6dSKonstantin PorotchkinDOIMAGE_CC_FLAGS := -DCONFIG_MVEBU_SECURE_BOOT
236414dc6dSKonstantin PorotchkinDOIMAGE_LD_FLAGS := -lconfig -lmbedtls -lmbedcrypto -lmbedx509
246414dc6dSKonstantin Porotchkinendif
256414dc6dSKonstantin Porotchkin
266414dc6dSKonstantin PorotchkinHOSTCCFLAGS += ${DOIMAGE_CC_FLAGS}
276414dc6dSKonstantin Porotchkin
286414dc6dSKonstantin Porotchkin# Make soft links and include from local directory otherwise wrong headers
296414dc6dSKonstantin Porotchkin# could get pulled in from firmware tree.
306414dc6dSKonstantin PorotchkinINCLUDE_PATHS = -I.
316414dc6dSKonstantin Porotchkin
326414dc6dSKonstantin PorotchkinHOSTCC ?= gcc
336414dc6dSKonstantin PorotchkinRM := rm -rf
346414dc6dSKonstantin Porotchkin
356414dc6dSKonstantin Porotchkin.PHONY: all clean
366414dc6dSKonstantin Porotchkin
376414dc6dSKonstantin Porotchkinall: ${PROJECT}
386414dc6dSKonstantin Porotchkin
396414dc6dSKonstantin Porotchkin${PROJECT}: ${OBJECTS} Makefile
406414dc6dSKonstantin Porotchkin	@echo "  HOSTLD  $@"
416414dc6dSKonstantin Porotchkin	${Q}${HOSTCC} ${OBJECTS} ${DOIMAGE_LD_FLAGS} -o $@
426414dc6dSKonstantin Porotchkin	@echo
436414dc6dSKonstantin Porotchkin	@echo "Built $@ successfully"
446414dc6dSKonstantin Porotchkin	@echo
456414dc6dSKonstantin Porotchkin
466414dc6dSKonstantin Porotchkin%.o: %.c Makefile
476414dc6dSKonstantin Porotchkin	@echo "  HOSTCC  $<"
486414dc6dSKonstantin Porotchkin	${Q}${HOSTCC} -c ${HOSTCCFLAGS} ${INCLUDE_PATHS} $< -o $@
496414dc6dSKonstantin Porotchkin
506414dc6dSKonstantin Porotchkinclean:
516414dc6dSKonstantin Porotchkin	${Q}${RM} ${PROJECT}
526414dc6dSKonstantin Porotchkin	${Q}${RM} ${OBJECTS}
53