• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#
2# Copyright (c) 2018-2024, Arm Limited. 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
10include ${MAKE_HELPERS_DIRECTORY}common.mk
11include ${MAKE_HELPERS_DIRECTORY}toolchain.mk
12
13SPTOOL  ?= sptool${BIN_EXT}
14PROJECT := $(notdir ${SPTOOL})
15OBJECTS := sptool.o
16
17override CPPFLAGS += -D_GNU_SOURCE -D_XOPEN_SOURCE=700
18HOSTCCFLAGS := -Wall -Werror -pedantic -std=c99
19ifeq (${DEBUG},1)
20  HOSTCCFLAGS += -g -O0 -DDEBUG
21else
22  HOSTCCFLAGS += -O2
23endif
24
25INCLUDE_PATHS := -I../../include/tools_share
26
27.PHONY: all clean distclean
28
29all: ${PROJECT}
30
31${PROJECT}: ${OBJECTS} Makefile
32	$(s)echo "  HOSTLD  $@"
33	$(q)$(host-cc) ${OBJECTS} -o $@ ${LDLIBS}
34	$(s)echo
35	$(s)echo "Built $@ successfully"
36	$(s)echo
37
38%.o: %.c Makefile
39	$(s)echo "  HOSTCC  $<"
40	$(q)$(host-cc) -c ${CPPFLAGS} ${HOSTCCFLAGS} ${INCLUDE_PATHS} $< -o $@
41
42clean:
43	$(call SHELL_DELETE_ALL, ${PROJECT} ${OBJECTS})
44