Cleanup FIP build targets and messages
At present the fip.bin depends on phony targets for BL images, resulting
in unconditional remake of fip.bin. Also the build messages doesn't
match with the rest of build system.
This patch modifies the fip.bin dependencies to the actual BL binary
images so that fip.bin is remade only when the component images are
rebuilt/modified. The build messages and FIP Makefile are modified to
match the style of rest of the build system.
Change-Id: I8dd08666ff766d106820a5b4b037c2161bcf140f
diff --git a/Makefile b/Makefile
index 7b0f78b..97988c4 100644
--- a/Makefile
+++ b/Makefile
@@ -49,6 +49,8 @@
Q=
endif
+export Q
+
DEBUG ?= 0
ifneq (${DEBUG}, 0)
@@ -197,8 +199,13 @@
bl1: ${BUILD_BL1} ${BUILD_PLAT}/bl1.bin
+FIP_DEPS += ${BUILD_PLAT}/bl1.bin
+
bl2: ${BUILD_BL2} ${BUILD_PLAT}/bl2.bin
+FIP_DEPS += ${BUILD_PLAT}/bl2.bin
+
bl31: ${BUILD_BL31} ${BUILD_PLAT}/bl31.bin
+FIP_DEPS += ${BUILD_PLAT}/bl31.bin
BASE_COMMIT ?= origin/master
@@ -230,6 +237,7 @@
ifeq (,$(wildcard ${BL33}))
$(error "The file BL33 points to cannot be found (${BL33})")
endif
+FIP_DEPS += ${BL33}
endif
@@ -283,13 +291,13 @@
clean:
@echo " CLEAN"
${Q}rm -rf ${BUILD_PLAT}
- ${Q}make -C ${FIPTOOLPATH} clean
+ ${Q}${MAKE} --no-print-directory -C ${FIPTOOLPATH} clean
realclean distclean:
@echo " REALCLEAN"
${Q}rm -rf ${BUILD_BASE}
${Q}rm -f ${CURDIR}/cscope.*
- ${Q}make -C ${FIPTOOLPATH} clean
+ ${Q}${MAKE} --no-print-directory -C ${FIPTOOLPATH} clean
dump:
@echo " OBJDUMP"
@@ -310,9 +318,9 @@
@git format-patch --stdout ${BASE_COMMIT} | ${CHECKPATCH} ${CHECKPATCH_ARGS} - || true
${FIPTOOL}:
- @echo " BUILDING FIRMWARE IMAGE PACKAGE TOOL $@"
+ ${Q}${MAKE} --no-print-directory -C ${FIPTOOLPATH}
@echo
- ${Q}make -C ${FIPTOOLPATH}
+ @echo "Built $@ successfully"
@echo
${BUILD_DIRS}:
@@ -389,9 +397,7 @@
@echo "Built $@ successfully"
@echo
-${BUILD_PLAT}/fip.bin: bl2 bl31 ${FIP_DEPS} locate-bl33 ${FIPTOOL}
- @echo " CREATE FIRMWARE IMAGE PACKAGE $@"
- @echo
+${BUILD_PLAT}/fip.bin: locate-bl33 ${FIP_DEPS} ${FIPTOOL}
${Q}${FIPTOOL} --dump \
--bl2 ${BUILD_PLAT}/bl2.bin \
--bl31 ${BUILD_PLAT}/bl31.bin \
@@ -399,6 +405,8 @@
${FIP_ARGS} \
$@
@echo
+ @echo "Built $@ successfully"
+ @echo
cscope:
diff --git a/tools/fip_create/Makefile b/tools/fip_create/Makefile
index 14e46d3..69569a1 100644
--- a/tools/fip_create/Makefile
+++ b/tools/fip_create/Makefile
@@ -32,7 +32,7 @@
OBJECTS = fip_create.o
CFLAGS = -Wall -Werror -pedantic -std=c99
-ifeq ($(BUILD),DEBUG)
+ifeq (${DEBUG},1)
CFLAGS += -g -O0 -DDEBUG
else
CFLAGS += -O2
@@ -47,16 +47,16 @@
.PHONY: all clean
-all: $(PROJECT)
+all: ${PROJECT}
-$(PROJECT): $(OBJECTS) Makefile
- @echo "[LD] $@"
- $(CC) $(OBJECTS) -o $@
+${PROJECT}: ${OBJECTS} Makefile
+ @echo " LD $@"
+ ${Q}${CC} ${OBJECTS} -o $@
%.o: %.c %.h Makefile
- @echo "[CC] $@"
- $(CC) -c $(CFLAGS) $(INCLUDE_PATHS) $< -o $@
+ @echo " CC $<"
+ ${Q}${CC} -c ${CFLAGS} ${INCLUDE_PATHS} $< -o $@
clean:
- $(RM) $(PROJECT)
- $(RM) $(OBJECTS)
+ ${Q}${RM} ${PROJECT}
+ ${Q}${RM} ${OBJECTS}