xref: /aosp_15_r20/external/arm-trusted-firmware/tools/sptool/Makefile (revision 54fd6939e177f8ff529b10183254802c76df6d08)
1*54fd6939SJiyong Park#
2*54fd6939SJiyong Park# Copyright (c) 2018-2020, Arm Limited. All rights reserved.
3*54fd6939SJiyong Park#
4*54fd6939SJiyong Park# SPDX-License-Identifier: BSD-3-Clause
5*54fd6939SJiyong Park#
6*54fd6939SJiyong Park
7*54fd6939SJiyong ParkMAKE_HELPERS_DIRECTORY := ../../make_helpers/
8*54fd6939SJiyong Parkinclude ${MAKE_HELPERS_DIRECTORY}build_macros.mk
9*54fd6939SJiyong Parkinclude ${MAKE_HELPERS_DIRECTORY}build_env.mk
10*54fd6939SJiyong Park
11*54fd6939SJiyong ParkSPTOOL  ?= sptool${BIN_EXT}
12*54fd6939SJiyong ParkPROJECT := $(notdir ${SPTOOL})
13*54fd6939SJiyong ParkOBJECTS := sptool.o
14*54fd6939SJiyong ParkV ?= 0
15*54fd6939SJiyong Park
16*54fd6939SJiyong Parkoverride CPPFLAGS += -D_GNU_SOURCE -D_XOPEN_SOURCE=700
17*54fd6939SJiyong ParkHOSTCCFLAGS := -Wall -Werror -pedantic -std=c99
18*54fd6939SJiyong Parkifeq (${DEBUG},1)
19*54fd6939SJiyong Park  HOSTCCFLAGS += -g -O0 -DDEBUG
20*54fd6939SJiyong Parkelse
21*54fd6939SJiyong Park  HOSTCCFLAGS += -O2
22*54fd6939SJiyong Parkendif
23*54fd6939SJiyong Park
24*54fd6939SJiyong Parkifeq (${V},0)
25*54fd6939SJiyong Park  Q := @
26*54fd6939SJiyong Parkelse
27*54fd6939SJiyong Park  Q :=
28*54fd6939SJiyong Parkendif
29*54fd6939SJiyong Park
30*54fd6939SJiyong ParkINCLUDE_PATHS := -I../../include/tools_share
31*54fd6939SJiyong Park
32*54fd6939SJiyong ParkHOSTCC ?= gcc
33*54fd6939SJiyong Park
34*54fd6939SJiyong Park.PHONY: all clean distclean
35*54fd6939SJiyong Park
36*54fd6939SJiyong Parkall: ${PROJECT}
37*54fd6939SJiyong Park
38*54fd6939SJiyong Park${PROJECT}: ${OBJECTS} Makefile
39*54fd6939SJiyong Park	@echo "  HOSTLD  $@"
40*54fd6939SJiyong Park	${Q}${HOSTCC} ${OBJECTS} -o $@ ${LDLIBS}
41*54fd6939SJiyong Park	@${ECHO_BLANK_LINE}
42*54fd6939SJiyong Park	@echo "Built $@ successfully"
43*54fd6939SJiyong Park	@${ECHO_BLANK_LINE}
44*54fd6939SJiyong Park
45*54fd6939SJiyong Park%.o: %.c Makefile
46*54fd6939SJiyong Park	@echo "  HOSTCC  $<"
47*54fd6939SJiyong Park	${Q}${HOSTCC} -c ${CPPFLAGS} ${HOSTCCFLAGS} ${INCLUDE_PATHS} $< -o $@
48*54fd6939SJiyong Park
49*54fd6939SJiyong Parkclean:
50*54fd6939SJiyong Park	$(call SHELL_DELETE_ALL, ${PROJECT} ${OBJECTS})
51