Commit 750e8d80 authored by Antonio Nino Diaz's avatar Antonio Nino Diaz
Browse files

tools: Make invocation of host compiler correct



HOSTCC should be used in any of the tools inside the tools/ directory
instead of CC. That way it is possible to override both values from the
command line when building the Trusted Firmware and the tools at the
same time. Also, use HOSTCCFLAGS instead of CFLAGS.

Also, instead of printing the strings CC and LD in the console during
the compilation of the tools, HOSTCC and HOSTLD have to be used for
clarity. This is how it is done in other projects like U-Boot or Linux.

Change-Id: Icd6f74c31eb74cdd1c353583399ab19e173e293e
Signed-off-by: default avatarAntonio Nino Diaz <antonio.ninodiaz@arm.com>
parent 3989a819
# #
# Copyright (c) 2015-2017, ARM Limited and Contributors. All rights reserved. # Copyright (c) 2015-2018, ARM Limited and Contributors. All rights reserved.
# #
# SPDX-License-Identifier: BSD-3-Clause # SPDX-License-Identifier: BSD-3-Clause
# #
...@@ -22,7 +22,7 @@ OBJECTS := src/cert.o \ ...@@ -22,7 +22,7 @@ OBJECTS := src/cert.o \
src/tbbr/tbb_ext.o \ src/tbbr/tbb_ext.o \
src/tbbr/tbb_key.o src/tbbr/tbb_key.o
CFLAGS := -Wall -std=c99 HOSTCCFLAGS := -Wall -std=c99
MAKE_HELPERS_DIRECTORY := ../../make_helpers/ MAKE_HELPERS_DIRECTORY := ../../make_helpers/
include ${MAKE_HELPERS_DIRECTORY}build_macros.mk include ${MAKE_HELPERS_DIRECTORY}build_macros.mk
...@@ -46,9 +46,9 @@ endif ...@@ -46,9 +46,9 @@ endif
endif endif
ifeq (${DEBUG},1) ifeq (${DEBUG},1)
CFLAGS += -g -O0 -DDEBUG -DLOG_LEVEL=40 HOSTCCFLAGS += -g -O0 -DDEBUG -DLOG_LEVEL=40
else else
CFLAGS += -O2 -DLOG_LEVEL=20 HOSTCCFLAGS += -O2 -DLOG_LEVEL=20
endif endif
ifeq (${V},0) ifeq (${V},0)
Q := @ Q := @
...@@ -57,7 +57,7 @@ else ...@@ -57,7 +57,7 @@ else
endif endif
$(eval $(call add_define,USE_TBBR_DEFS)) $(eval $(call add_define,USE_TBBR_DEFS))
CFLAGS += ${DEFINES} HOSTCCFLAGS += ${DEFINES}
# Make soft links and include from local directory otherwise wrong headers # Make soft links and include from local directory otherwise wrong headers
# could get pulled in from firmware tree. # could get pulled in from firmware tree.
...@@ -72,15 +72,15 @@ HOSTCC ?= gcc ...@@ -72,15 +72,15 @@ HOSTCC ?= gcc
all: clean ${BINARY} all: clean ${BINARY}
${BINARY}: ${OBJECTS} Makefile ${BINARY}: ${OBJECTS} Makefile
@echo " LD $@" @echo " HOSTLD $@"
@echo 'const char build_msg[] = "Built : "__TIME__", "__DATE__; \ @echo 'const char build_msg[] = "Built : "__TIME__", "__DATE__; \
const char platform_msg[] = "${PLAT_MSG}";' | \ const char platform_msg[] = "${PLAT_MSG}";' | \
${HOSTCC} -c ${CFLAGS} -xc - -o src/build_msg.o ${HOSTCC} -c ${HOSTCCFLAGS} -xc - -o src/build_msg.o
${Q}${HOSTCC} src/build_msg.o ${OBJECTS} ${LIB_DIR} ${LIB} -o $@ ${Q}${HOSTCC} src/build_msg.o ${OBJECTS} ${LIB_DIR} ${LIB} -o $@
%.o: %.c %.o: %.c
@echo " CC $<" @echo " HOSTCC $<"
${Q}${HOSTCC} -c ${CFLAGS} ${INC_DIR} $< -o $@ ${Q}${HOSTCC} -c ${HOSTCCFLAGS} ${INC_DIR} $< -o $@
clean: clean:
$(call SHELL_DELETE_ALL, src/build_msg.o ${OBJECTS}) $(call SHELL_DELETE_ALL, src/build_msg.o ${OBJECTS})
......
...@@ -7,11 +7,11 @@ ...@@ -7,11 +7,11 @@
PROJECT = doimage PROJECT = doimage
OBJECTS = doimage.o OBJECTS = doimage.o
CFLAGS = -Wall -Werror HOSTCCFLAGS = -Wall -Werror
ifeq (${DEBUG},1) ifeq (${DEBUG},1)
CFLAGS += -g -O0 -DDEBUG HOSTCCFLAGS += -g -O0 -DDEBUG
else else
CFLAGS += -O2 HOSTCCFLAGS += -O2
endif endif
ifeq (${MARVELL_SECURE_BOOT},1) ifeq (${MARVELL_SECURE_BOOT},1)
...@@ -19,13 +19,13 @@ DOIMAGE_CC_FLAGS := -DCONFIG_MVEBU_SECURE_BOOT ...@@ -19,13 +19,13 @@ DOIMAGE_CC_FLAGS := -DCONFIG_MVEBU_SECURE_BOOT
DOIMAGE_LD_FLAGS := -lconfig -lmbedtls -lmbedcrypto -lmbedx509 DOIMAGE_LD_FLAGS := -lconfig -lmbedtls -lmbedcrypto -lmbedx509
endif endif
CFLAGS += ${DOIMAGE_CC_FLAGS} HOSTCCFLAGS += ${DOIMAGE_CC_FLAGS}
# Make soft links and include from local directory otherwise wrong headers # Make soft links and include from local directory otherwise wrong headers
# could get pulled in from firmware tree. # could get pulled in from firmware tree.
INCLUDE_PATHS = -I. INCLUDE_PATHS = -I.
CC := gcc HOSTCC ?= gcc
RM := rm -rf RM := rm -rf
.PHONY: all clean .PHONY: all clean
...@@ -33,15 +33,15 @@ RM := rm -rf ...@@ -33,15 +33,15 @@ RM := rm -rf
all: ${PROJECT} all: ${PROJECT}
${PROJECT}: ${OBJECTS} Makefile ${PROJECT}: ${OBJECTS} Makefile
@echo " LD $@" @echo " HOSTLD $@"
${Q}${CC} ${OBJECTS} ${DOIMAGE_LD_FLAGS} -o $@ ${Q}${HOSTCC} ${OBJECTS} ${DOIMAGE_LD_FLAGS} -o $@
@echo @echo
@echo "Built $@ successfully" @echo "Built $@ successfully"
@echo @echo
%.o: %.c Makefile %.o: %.c Makefile
@echo " CC $<" @echo " HOSTCC $<"
${Q}${CC} -c ${CFLAGS} ${INCLUDE_PATHS} $< -o $@ ${Q}${HOSTCC} -c ${HOSTCCFLAGS} ${INCLUDE_PATHS} $< -o $@
clean: clean:
${Q}${RM} ${PROJECT} ${Q}${RM} ${PROJECT}
......
# #
# Copyright (c) 2014-2017, ARM Limited and Contributors. All rights reserved. # Copyright (c) 2014-2018, ARM Limited and Contributors. All rights reserved.
# #
# SPDX-License-Identifier: BSD-3-Clause # SPDX-License-Identifier: BSD-3-Clause
# #
...@@ -13,11 +13,11 @@ OBJECTS := fiptool.o tbbr_config.o ...@@ -13,11 +13,11 @@ OBJECTS := fiptool.o tbbr_config.o
V ?= 0 V ?= 0
override CPPFLAGS += -D_GNU_SOURCE -D_XOPEN_SOURCE=700 override CPPFLAGS += -D_GNU_SOURCE -D_XOPEN_SOURCE=700
CFLAGS := -Wall -Werror -pedantic -std=c99 HOSTCCFLAGS := -Wall -Werror -pedantic -std=c99
ifeq (${DEBUG},1) ifeq (${DEBUG},1)
CFLAGS += -g -O0 -DDEBUG HOSTCCFLAGS += -g -O0 -DDEBUG
else else
CFLAGS += -O2 HOSTCCFLAGS += -O2
endif endif
LDLIBS := -lcrypto LDLIBS := -lcrypto
...@@ -36,15 +36,15 @@ HOSTCC ?= gcc ...@@ -36,15 +36,15 @@ HOSTCC ?= gcc
all: ${PROJECT} all: ${PROJECT}
${PROJECT}: ${OBJECTS} Makefile ${PROJECT}: ${OBJECTS} Makefile
@echo " LD $@" @echo " HOSTLD $@"
${Q}${HOSTCC} ${OBJECTS} -o $@ ${LDLIBS} ${Q}${HOSTCC} ${OBJECTS} -o $@ ${LDLIBS}
@${ECHO_BLANK_LINE} @${ECHO_BLANK_LINE}
@echo "Built $@ successfully" @echo "Built $@ successfully"
@${ECHO_BLANK_LINE} @${ECHO_BLANK_LINE}
%.o: %.c %.h Makefile %.o: %.c %.h Makefile
@echo " CC $<" @echo " HOSTCC $<"
${Q}${HOSTCC} -c ${CPPFLAGS} ${CFLAGS} ${INCLUDE_PATHS} $< -o $@ ${Q}${HOSTCC} -c ${CPPFLAGS} ${HOSTCCFLAGS} ${INCLUDE_PATHS} $< -o $@
clean: clean:
$(call SHELL_DELETE_ALL, ${PROJECT} ${OBJECTS}) $(call SHELL_DELETE_ALL, ${PROJECT} ${OBJECTS})
...@@ -12,11 +12,12 @@ PROJECT := stm32image${BIN_EXT} ...@@ -12,11 +12,12 @@ PROJECT := stm32image${BIN_EXT}
OBJECTS := stm32image.o OBJECTS := stm32image.o
V := 0 V := 0
CFLAGS := -Wall -Werror -pedantic -std=c99 -D_GNU_SOURCE HOSTCCFLAGS := -Wall -Werror -pedantic -std=c99 -D_GNU_SOURCE
ifeq (${DEBUG},1) ifeq (${DEBUG},1)
CFLAGS += -g -O0 -DDEBUG HOSTCCFLAGS += -g -O0 -DDEBUG
else else
CFLAGS += -O2 HOSTCCFLAGS += -O2
endif endif
ifeq (${V},0) ifeq (${V},0)
...@@ -25,22 +26,22 @@ else ...@@ -25,22 +26,22 @@ else
Q := Q :=
endif endif
CC := gcc HOSTCC := gcc
.PHONY: all clean distclean .PHONY: all clean distclean
all: ${PROJECT} all: ${PROJECT}
${PROJECT}: ${OBJECTS} Makefile ${PROJECT}: ${OBJECTS} Makefile
@echo " LD $@" @echo " HOSTLD $@"
${Q}${CC} ${OBJECTS} -o $@ ${Q}${HOSTCC} ${OBJECTS} -o $@
@${ECHO_BLANK_LINE} @${ECHO_BLANK_LINE}
@echo "Built $@ successfully" @echo "Built $@ successfully"
@${ECHO_BLANK_LINE} @${ECHO_BLANK_LINE}
%.o: %.c Makefile %.o: %.c Makefile
@echo " CC $<" @echo " HOSTCC $<"
${Q}${CC} -c ${CFLAGS} $< -o $@ ${Q}${HOSTCC} -c ${HOSTCCFLAGS} $< -o $@
clean: clean:
$(call SHELL_DELETE_ALL, ${PROJECT} ${OBJECTS}) $(call SHELL_DELETE_ALL, ${PROJECT} ${OBJECTS})
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment