summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile62
1 files changed, 12 insertions, 50 deletions
diff --git a/Makefile b/Makefile
index 4b43dd6..3e7a3de 100644
--- a/Makefile
+++ b/Makefile
@@ -315,95 +315,57 @@ checkpatch: locate-checkpatch
-- ${CHECK_PATHS} | ${CHECKPATCH} - || true; \
done
-define match_goals
-$(strip $(foreach goal,$(1),$(filter $(goal),$(MAKECMDGOALS))))
-endef
-
-# List of rules that involve building things
-BUILD_TARGETS := all tftf
-ifeq (${FIRMWARE_UPDATE},1)
- BUILD_TARGETS += ns_bl1u ns_bl2u
-else
+ifneq (${FIRMWARE_UPDATE},1)
ns_bl1u ns_bl2u:
@echo "ERROR: Can't build $@ because Firmware Update is not supported \
on this platform."
@exit 1
endif
-ifeq (${ARCH}-${PLAT},aarch64-fvp)
- BUILD_TARGETS += cactus
-else
+ifneq (${ARCH}-${PLAT},aarch64-fvp)
.PHONY: cactus
cactus:
@echo "ERROR: $@ is supported only on AArch64 FVP."
@exit 1
endif
-# Does the list of goals specified on the command line include a build target?
-ifneq ($(call match_goals,${BUILD_TARGETS}),)
-IS_ANYTHING_TO_BUILD := 1
-endif
+MAKE_DEP = -Wp,-MD,$(DEP) -MT $$@
define MAKE_C
$(eval OBJ := $(1)/$(patsubst %.c,%.o,$(notdir $(2))))
-$(eval PREREQUISITES := $(patsubst %.o,%.d,$(OBJ)))
+$(eval DEP := $(patsubst %.o,%.d,$(OBJ)))
$(OBJ) : $(2)
@echo " CC $$<"
- $$(Q)$$(CC) $$(TFTF_CFLAGS) -DIMAGE_$(3) -c $$< -o $$@
-
-
-$(PREREQUISITES) : $(2) $(AUTOGEN_DIR)/tests_list.h
- @echo " DEPS $$@"
- @mkdir -p $(1)
- $$(Q)$$(CC) $$(TFTF_CFLAGS) -M -MT $(OBJ) -MF $$@ $$<
-
-ifdef IS_ANYTHING_TO_BUILD
--include $(PREREQUISITES)
-endif
+ $$(Q)$$(CC) $$(TFTF_CFLAGS) -DIMAGE_$(3) $(MAKE_DEP) -c $$< -o $$@
+-include $(DEP)
endef
define MAKE_S
$(eval OBJ := $(1)/$(patsubst %.S,%.o,$(notdir $(2))))
-$(eval PREREQUISITES := $(patsubst %.o,%.d,$(OBJ)))
+$(eval DEP := $(patsubst %.o,%.d,$(OBJ)))
$(OBJ) : $(2)
@echo " AS $$<"
- $$(Q)$$(AS) $$(ASFLAGS) -DIMAGE_$(3) -c $$< -o $$@
-
-$(PREREQUISITES) : $(2) $(AUTOGEN_DIR)/tests_list.h
- @echo " DEPS $$@"
- @mkdir -p $(1)
- $$(Q)$$(AS) $$(ASFLAGS) -M -MT $(OBJ) -MF $$@ $$<
-
-ifdef IS_ANYTHING_TO_BUILD
--include $(PREREQUISITES)
-endif
+ $$(Q)$$(AS) $$(ASFLAGS) -DIMAGE_$(3) $(MAKE_DEP) -c $$< -o $$@
+-include $(DEP)
endef
define MAKE_LD
-$(eval PREREQUISITES := $(1).d)
+$(eval DEP := $(1).d)
$(1) : $(2)
@echo " PP $$<"
- $$(Q)$$(AS) $$(ASFLAGS) -P -E -o $$@ $$<
-
-$(PREREQUISITES) : $(2)
- @echo " DEPS $$@"
- @mkdir -p $$(dir $$@)
- $$(Q)$$(AS) $$(ASFLAGS) -M -MT $(1) -MF $$@ $$<
-
-ifdef IS_ANYTHING_TO_BUILD
--include $(PREREQUISITES)
-endif
+ $$(Q)$$(AS) $$(ASFLAGS) -P -E $(MAKE_DEP) -o $$@ $$<
+-include $(DEP)
endef