tools: Make invocation of host compiler correct
authorAntonio Nino Diaz <antonio.ninodiaz@arm.com>
Thu, 4 Oct 2018 13:35:38 +0000 (14:35 +0100)
committerAntonio Nino Diaz <antonio.ninodiaz@arm.com>
Thu, 4 Oct 2018 13:35:38 +0000 (14:35 +0100)
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: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
tools/cert_create/Makefile
tools/doimage/Makefile
tools/fiptool/Makefile
tools/stm32image/Makefile

index 7b10e3e308984a972c5d46c6dda595dd298eb0c6..c03629a00732daef9a671f8a18db3bb52be946da 100644 (file)
@@ -1,5 +1,5 @@
 #
-# 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
 #
@@ -22,7 +22,7 @@ OBJECTS := src/cert.o \
            src/tbbr/tbb_ext.o \
            src/tbbr/tbb_key.o
 
-CFLAGS := -Wall -std=c99
+HOSTCCFLAGS := -Wall -std=c99
 
 MAKE_HELPERS_DIRECTORY := ../../make_helpers/
 include ${MAKE_HELPERS_DIRECTORY}build_macros.mk
@@ -46,9 +46,9 @@ endif
 endif
 
 ifeq (${DEBUG},1)
-  CFLAGS += -g -O0 -DDEBUG -DLOG_LEVEL=40
+  HOSTCCFLAGS += -g -O0 -DDEBUG -DLOG_LEVEL=40
 else
-  CFLAGS += -O2 -DLOG_LEVEL=20
+  HOSTCCFLAGS += -O2 -DLOG_LEVEL=20
 endif
 ifeq (${V},0)
   Q := @
@@ -57,7 +57,7 @@ else
 endif
 
 $(eval $(call add_define,USE_TBBR_DEFS))
-CFLAGS += ${DEFINES}
+HOSTCCFLAGS += ${DEFINES}
 
 # Make soft links and include from local directory otherwise wrong headers
 # could get pulled in from firmware tree.
@@ -72,15 +72,15 @@ HOSTCC ?= gcc
 all: clean ${BINARY}
 
 ${BINARY}: ${OBJECTS} Makefile
-       @echo "  LD      $@"
+       @echo "  HOSTLD  $@"
        @echo 'const char build_msg[] = "Built : "__TIME__", "__DATE__; \
                 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 $@
 
 %.o: %.c
-       @echo "  CC      $<"
-       ${Q}${HOSTCC} -c ${CFLAGS} ${INC_DIR} $< -o $@
+       @echo "  HOSTCC  $<"
+       ${Q}${HOSTCC} -c ${HOSTCCFLAGS} ${INC_DIR} $< -o $@
 
 clean:
        $(call SHELL_DELETE_ALL, src/build_msg.o ${OBJECTS})
index 9cec681a49e1a8c7adb2066ab342e664c270f6bf..9f0d89d3e8d31801e13c825c90049d4e37cb9240 100644 (file)
@@ -7,11 +7,11 @@
 PROJECT = doimage
 OBJECTS = doimage.o
 
-CFLAGS = -Wall -Werror
+HOSTCCFLAGS = -Wall -Werror
 ifeq (${DEBUG},1)
-  CFLAGS += -g -O0 -DDEBUG
+  HOSTCCFLAGS += -g -O0 -DDEBUG
 else
-  CFLAGS += -O2
+  HOSTCCFLAGS += -O2
 endif
 
 ifeq (${MARVELL_SECURE_BOOT},1)
@@ -19,13 +19,13 @@ DOIMAGE_CC_FLAGS := -DCONFIG_MVEBU_SECURE_BOOT
 DOIMAGE_LD_FLAGS := -lconfig -lmbedtls -lmbedcrypto -lmbedx509
 endif
 
-CFLAGS += ${DOIMAGE_CC_FLAGS}
+HOSTCCFLAGS += ${DOIMAGE_CC_FLAGS}
 
 # Make soft links and include from local directory otherwise wrong headers
 # could get pulled in from firmware tree.
 INCLUDE_PATHS = -I.
 
-CC := gcc
+HOSTCC ?= gcc
 RM := rm -rf
 
 .PHONY: all clean
@@ -33,15 +33,15 @@ RM := rm -rf
 all: ${PROJECT}
 
 ${PROJECT}: ${OBJECTS} Makefile
-       @echo "  LD      $@"
-       ${Q}${CC} ${OBJECTS} ${DOIMAGE_LD_FLAGS} -o $@
+       @echo "  HOSTLD  $@"
+       ${Q}${HOSTCC} ${OBJECTS} ${DOIMAGE_LD_FLAGS} -o $@
        @echo
        @echo "Built $@ successfully"
        @echo
 
 %.o: %.c Makefile
-       @echo "  CC      $<"
-       ${Q}${CC} -c ${CFLAGS} ${INCLUDE_PATHS} $< -o $@
+       @echo "  HOSTCC  $<"
+       ${Q}${HOSTCC} -c ${HOSTCCFLAGS} ${INCLUDE_PATHS} $< -o $@
 
 clean:
        ${Q}${RM} ${PROJECT}
index 9bdafe00c8e286bd41609e2daae64814bcdca3a9..ef350143241df7855b15d15b3a26017e0b465325 100644 (file)
@@ -1,5 +1,5 @@
 #
-# 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
 #
@@ -13,11 +13,11 @@ OBJECTS := fiptool.o tbbr_config.o
 V ?= 0
 
 override CPPFLAGS += -D_GNU_SOURCE -D_XOPEN_SOURCE=700
-CFLAGS := -Wall -Werror -pedantic -std=c99
+HOSTCCFLAGS := -Wall -Werror -pedantic -std=c99
 ifeq (${DEBUG},1)
-  CFLAGS += -g -O0 -DDEBUG
+  HOSTCCFLAGS += -g -O0 -DDEBUG
 else
-  CFLAGS += -O2
+  HOSTCCFLAGS += -O2
 endif
 LDLIBS := -lcrypto
 
@@ -36,15 +36,15 @@ HOSTCC ?= gcc
 all: ${PROJECT}
 
 ${PROJECT}: ${OBJECTS} Makefile
-       @echo "  LD      $@"
+       @echo "  HOSTLD  $@"
        ${Q}${HOSTCC} ${OBJECTS} -o $@ ${LDLIBS}
        @${ECHO_BLANK_LINE}
        @echo "Built $@ successfully"
        @${ECHO_BLANK_LINE}
 
 %.o: %.c %.h Makefile
-       @echo "  CC      $<"
-       ${Q}${HOSTCC} -c ${CPPFLAGS} ${CFLAGS} ${INCLUDE_PATHS} $< -o $@
+       @echo "  HOSTCC  $<"
+       ${Q}${HOSTCC} -c ${CPPFLAGS} ${HOSTCCFLAGS} ${INCLUDE_PATHS} $< -o $@
 
 clean:
        $(call SHELL_DELETE_ALL, ${PROJECT} ${OBJECTS})
index a593d31637403929fdffce44db59dae4552de3fa..9c9b7b5fb64faa13e52edb63c4a4b120259759ad 100644 (file)
@@ -12,11 +12,12 @@ PROJECT := stm32image${BIN_EXT}
 OBJECTS := stm32image.o
 V := 0
 
-CFLAGS := -Wall -Werror -pedantic -std=c99 -D_GNU_SOURCE
+HOSTCCFLAGS := -Wall -Werror -pedantic -std=c99 -D_GNU_SOURCE
+
 ifeq (${DEBUG},1)
-  CFLAGS += -g -O0 -DDEBUG
+  HOSTCCFLAGS += -g -O0 -DDEBUG
 else
-  CFLAGS += -O2
+  HOSTCCFLAGS += -O2
 endif
 
 ifeq (${V},0)
@@ -25,22 +26,22 @@ else
   Q :=
 endif
 
-CC := gcc
+HOSTCC := gcc
 
 .PHONY: all clean distclean
 
 all: ${PROJECT}
 
 ${PROJECT}: ${OBJECTS} Makefile
-       @echo "  LD      $@"
-       ${Q}${CC} ${OBJECTS} -o $@
+       @echo "  HOSTLD  $@"
+       ${Q}${HOSTCC} ${OBJECTS} -o $@
        @${ECHO_BLANK_LINE}
        @echo "Built $@ successfully"
        @${ECHO_BLANK_LINE}
 
 %.o: %.c Makefile
-       @echo "  CC      $<"
-       ${Q}${CC} -c ${CFLAGS} $< -o $@
+       @echo "  HOSTCC  $<"
+       ${Q}${HOSTCC} -c ${HOSTCCFLAGS} $< -o $@
 
 clean:
        $(call SHELL_DELETE_ALL, ${PROJECT} ${OBJECTS})