xref: /rk3399_ARM-atf/tools/sptool/Makefile (revision 084c9d3c0de8ed9eb1afd7057c5a2a41c11d9443)
1#
2# Copyright (c) 2018-2024, Arm Limited. All rights reserved.
3#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6
7toolchains := host
8
9MAKE_HELPERS_DIRECTORY := ../../make_helpers/
10include ${MAKE_HELPERS_DIRECTORY}build_macros.mk
11include ${MAKE_HELPERS_DIRECTORY}build_env.mk
12include ${MAKE_HELPERS_DIRECTORY}toolchain.mk
13
14SPTOOL  ?= sptool${BIN_EXT}
15PROJECT := $(notdir ${SPTOOL})
16OBJECTS := sptool.o
17V ?= 0
18
19override CPPFLAGS += -D_GNU_SOURCE -D_XOPEN_SOURCE=700
20HOSTCCFLAGS := -Wall -Werror -pedantic -std=c99
21ifeq (${DEBUG},1)
22  HOSTCCFLAGS += -g -O0 -DDEBUG
23else
24  HOSTCCFLAGS += -O2
25endif
26
27ifeq (${V},0)
28  Q := @
29else
30  Q :=
31endif
32
33INCLUDE_PATHS := -I../../include/tools_share
34
35HOSTCC ?= gcc
36
37.PHONY: all clean distclean
38
39all: ${PROJECT}
40
41${PROJECT}: ${OBJECTS} Makefile
42	@echo "  HOSTLD  $@"
43	${Q}${HOSTCC} ${OBJECTS} -o $@ ${LDLIBS}
44	@${ECHO_BLANK_LINE}
45	@echo "Built $@ successfully"
46	@${ECHO_BLANK_LINE}
47
48%.o: %.c Makefile
49	@echo "  HOSTCC  $<"
50	${Q}${HOSTCC} -c ${CPPFLAGS} ${HOSTCCFLAGS} ${INCLUDE_PATHS} $< -o $@
51
52clean:
53	$(call SHELL_DELETE_ALL, ${PROJECT} ${OBJECTS})
54