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