blob: 9dfe9cb430ba96f4eb02bd9bcdc6840e01d25c7f [file] [log] [blame]
Yann Gautier5fbcdd02018-07-05 16:50:22 +02001#
Chris Kaycc277de2023-10-20 09:17:33 +00002# Copyright (c) 2017-2024, Arm Limited and Contributors. All rights reserved.
Yann Gautier5fbcdd02018-07-05 16:50:22 +02003#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6
Chris Kaycc277de2023-10-20 09:17:33 +00007toolchains := host
8
Yann Gautier5fbcdd02018-07-05 16:50:22 +02009MAKE_HELPERS_DIRECTORY := ../../make_helpers/
10include ${MAKE_HELPERS_DIRECTORY}build_macros.mk
11include ${MAKE_HELPERS_DIRECTORY}build_env.mk
Chris Kaycc277de2023-10-20 09:17:33 +000012include ${MAKE_HELPERS_DIRECTORY}toolchain.mk
Yann Gautier5fbcdd02018-07-05 16:50:22 +020013
14PROJECT := stm32image${BIN_EXT}
15OBJECTS := stm32image.o
16V := 0
17
Antonio Nino Diaz750e8d82018-10-04 14:35:38 +010018HOSTCCFLAGS := -Wall -Werror -pedantic -std=c99 -D_GNU_SOURCE
19
Yann Gautier5fbcdd02018-07-05 16:50:22 +020020ifeq (${DEBUG},1)
Antonio Nino Diaz750e8d82018-10-04 14:35:38 +010021 HOSTCCFLAGS += -g -O0 -DDEBUG
Yann Gautier5fbcdd02018-07-05 16:50:22 +020022else
Antonio Nino Diaz750e8d82018-10-04 14:35:38 +010023 HOSTCCFLAGS += -O2
Yann Gautier5fbcdd02018-07-05 16:50:22 +020024endif
25
26ifeq (${V},0)
27 Q := @
28else
29 Q :=
30endif
31
Antonio Nino Diaz750e8d82018-10-04 14:35:38 +010032HOSTCC := gcc
Yann Gautier5fbcdd02018-07-05 16:50:22 +020033
34.PHONY: all clean distclean
35
36all: ${PROJECT}
37
38${PROJECT}: ${OBJECTS} Makefile
Antonio Nino Diaz750e8d82018-10-04 14:35:38 +010039 @echo " HOSTLD $@"
40 ${Q}${HOSTCC} ${OBJECTS} -o $@
Yann Gautier5fbcdd02018-07-05 16:50:22 +020041 @${ECHO_BLANK_LINE}
42 @echo "Built $@ successfully"
43 @${ECHO_BLANK_LINE}
44
Jan Kiszkac0f73ed2018-10-02 09:28:00 +020045%.o: %.c Makefile
Antonio Nino Diaz750e8d82018-10-04 14:35:38 +010046 @echo " HOSTCC $<"
47 ${Q}${HOSTCC} -c ${HOSTCCFLAGS} $< -o $@
Yann Gautier5fbcdd02018-07-05 16:50:22 +020048
49clean:
50 $(call SHELL_DELETE_ALL, ${PROJECT} ${OBJECTS})
51
52distclean: clean