From 6d55d109a31139c316b28b1b4b307a9f1ec0924d Mon Sep 17 00:00:00 2001 From: Jon Medhurst Date: Wed, 12 Feb 2014 15:54:48 +0000 Subject: [PATCH] Update Makefiles to get proper dependency checking working. This change requires all platforms to now specify a list of source files rather than object files. New source files should preferably be specified by using the path as well and we should add this in the future for all files so we can remove use of vpath. This is desirable because vpath hides issues like the fact that BL2 currently pulls in a BL1 file bl1/aarch64/early_exceptions.S and if in the future we added bl2/aarch64/early_exceptions.S then it's likely only one of the two version would be used for both bootloaders. This change also removes the 'dump' build target and simply gets bootloaders to always generate a dump file. At the same time the -x option is added so the section headers and symbols table are listed. Fixes ARM-software/tf-issues#11 Change-Id: Ie38f7be76fed95756c8576cf3f3ea3b7015a18dc Signed-off-by: Jon Medhurst --- Makefile | 307 ++++++++++++++++++-------------------- bl1/bl1.mk | 13 +- bl2/bl2.mk | 13 +- bl31/bl31.mk | 39 +++-- bl32/tsp/tsp-fvp.mk | 7 +- bl32/tsp/tsp.mk | 14 +- plat/fvp/platform.mk | 58 +++---- services/spd/tspd/tspd.mk | 8 +- 8 files changed, 221 insertions(+), 238 deletions(-) diff --git a/Makefile b/Makefile index 99298884c..d0b18c9d9 100644 --- a/Makefile +++ b/Makefile @@ -59,14 +59,14 @@ else BUILD_TYPE := release endif -BL_COMMON_OBJS := misc_helpers.o \ - cache_helpers.o \ - tlb_helpers.o \ - xlat_helpers.o \ - std.o \ - bl_common.o \ - platform_helpers.o \ - io_storage.o +BL_COMMON_SOURCES := misc_helpers.S \ + cache_helpers.S \ + tlb_helpers.S \ + xlat_helpers.c \ + std.c \ + bl_common.c \ + platform_helpers.S \ + io_storage.c ARCH ?= aarch64 @@ -77,10 +77,6 @@ SPD ?= none BUILD_BASE := ./build BUILD_PLAT := ${BUILD_BASE}/${PLAT}/${BUILD_TYPE} -BUILD_BL1 := ${BUILD_PLAT}/bl1 -BUILD_BL2 := ${BUILD_PLAT}/bl2 -BUILD_BL31 := ${BUILD_PLAT}/bl31 -BUILD_DIRS := ${BUILD_BL1} ${BUILD_BL2} ${BUILD_BL31} PLATFORMS := $(shell ls -I common plat/) SPDS := $(shell ls -I none services/spd) @@ -96,7 +92,7 @@ endif ifeq (${PLAT},all) all: ${PLATFORMS} else -all: msg_start bl1 bl2 bl31 fip +all: msg_start fip endif msg_start: @@ -132,20 +128,10 @@ ifneq (${SPD},none) # variable to "yes" endif -.PHONY: all msg_start ${PLATFORMS} dump clean realclean distclean bl1 bl2 bl31 cscope locate-checkpatch checkcodebase checkpatch fiptool fip locate-bl33 +.PHONY: all msg_start ${PLATFORMS} clean realclean distclean cscope locate-checkpatch checkcodebase checkpatch fiptool fip locate-bl33 .SUFFIXES: -BL1_OBJS := $(addprefix ${BUILD_BL1}/,${BL1_OBJS} ${BL_COMMON_OBJS} ${PLAT_BL_COMMON_OBJS}) -BL2_OBJS := $(addprefix ${BUILD_BL2}/,${BL2_OBJS} ${BL_COMMON_OBJS} ${PLAT_BL_COMMON_OBJS}) -BL31_OBJS := $(addprefix ${BUILD_BL31}/,${BL31_OBJS} ${BL_COMMON_OBJS} ${PLAT_BL_COMMON_OBJS} ${SPD_OBJS}) -BL1_MAPFILE := $(addprefix ${BUILD_BL1}/,${BL1_MAPFILE}) -BL2_MAPFILE := $(addprefix ${BUILD_BL2}/,${BL2_MAPFILE}) -BL31_MAPFILE := $(addprefix ${BUILD_BL31}/,${BL31_MAPFILE}) -BL1_LINKERFILE := $(addprefix ${BUILD_BL1}/,${BL1_LINKERFILE}) -BL2_LINKERFILE := $(addprefix ${BUILD_BL2}/,${BL2_LINKERFILE}) -BL31_LINKERFILE := $(addprefix ${BUILD_BL31}/,${BL31_LINKERFILE}) - INCLUDES += -Ilib/include/ \ -Idrivers/io \ -Iinclude/${ARCH}/ \ @@ -166,9 +152,6 @@ CFLAGS := -nostdinc -pedantic -ffreestanding -Wall \ -DDEBUG=${DEBUG} ${INCLUDES} ${CFLAGS} LDFLAGS += --fatal-warnings -O1 -BL1_LDFLAGS := -Map=${BL1_MAPFILE} --script ${BL1_LINKERFILE} --entry=${BL1_ENTRY_POINT} -BL2_LDFLAGS := -Map=${BL2_MAPFILE} --script ${BL2_LINKERFILE} --entry=${BL2_ENTRY_POINT} -BL31_LDFLAGS := -Map=${BL31_MAPFILE} --script ${BL31_LINKERFILE} --entry=${BL31_ENTRY_POINT} vpath %.ld.S bl1:bl2:bl31 @@ -197,16 +180,6 @@ OD := ${CROSS_COMPILE}objdump NM := ${CROSS_COMPILE}nm PP := ${CROSS_COMPILE}gcc -E ${CFLAGS} - -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 # Variables for use with Firmware Image Package @@ -241,53 +214,6 @@ FIP_DEPS += ${BL33} endif -# If BL32 needs to be built, provide necessary build rules and targets -ifeq (${NEED_BL32},yes) -BUILD_BL32 := ${BUILD_PLAT}/bl32 -BUILD_DIRS += ${BUILD_BL32} - -BL32_OBJS := $(addprefix ${BUILD_BL32}/,${BL32_OBJS}) -BL32_MAPFILE := $(addprefix ${BUILD_BL32}/,${BL32_MAPFILE}) -BL32_LINKERFILE := $(addprefix ${BUILD_BL32}/,${BL32_LINKERFILE}) -BL32_LDFLAGS := -Map=${BL32_MAPFILE} --script ${BL32_LINKERFILE} --entry=${BL32_ENTRY_POINT} - -bl32: ${BUILD_BL32} ${BUILD_PLAT}/bl32.bin -all: bl32 -dump: bl32_dump -.PHONY: bl32 - -# Add BL32 image to FIP's input image list -FIP_DEPS := bl32 -FIP_ARGS := --bl32 ${BUILD_PLAT}/bl32.bin - -${BUILD_BL32}/%.o: %.S - @echo " AS $<" - ${Q}${AS} ${ASFLAGS} -c $< -o $@ - -${BUILD_BL32}/%.o: %.c - @echo " CC $<" - ${Q}${CC} ${CFLAGS} -c $< -o $@ - -${BUILD_BL32}/%.ld: %.ld.S - @echo " PP $<" - ${Q}${AS} ${ASFLAGS} -P -E $< -o $@ - -${BUILD_BL32}/bl32.elf: ${BL32_OBJS} ${BL32_LINKERFILE} - @echo " LD $@" - ${Q}${LD} -o $@ ${LDFLAGS} ${BL32_LDFLAGS} ${BL32_OBJS} - -${BUILD_PLAT}/bl32.bin: ${BUILD_BL32}/bl32.elf - @echo " BIN $@" - ${Q}${OC} -O binary $< $@ - @echo - @echo "Built $@ successfully" - @echo - -bl32_dump: - ${Q}${OD} -d ${BUILD_BL32}/bl32.elf > ${BUILD_BL32}/bl32.dump -endif - - clean: @echo " CLEAN" ${Q}rm -rf ${BUILD_PLAT} @@ -299,12 +225,6 @@ realclean distclean: ${Q}rm -f ${CURDIR}/cscope.* ${Q}${MAKE} --no-print-directory -C ${FIPTOOLPATH} clean -dump: - @echo " OBJDUMP" - ${Q}${OD} -d ${BUILD_BL1}/bl1.elf > ${BUILD_BL1}/bl1.dump - ${Q}${OD} -d ${BUILD_BL2}/bl2.elf > ${BUILD_BL2}/bl2.dump - ${Q}${OD} -d ${BUILD_BL31}/bl31.elf > ${BUILD_BL31}/bl31.dump - checkcodebase: locate-checkpatch @echo " CHECKING STYLE" @if test -d .git ; then \ @@ -323,86 +243,156 @@ ${FIPTOOL}: @echo "Built $@ successfully" @echo -${BUILD_DIRS}: - ${Q}mkdir -p "$@" +define match_goals +$(strip $(foreach goal,$(1),$(filter $(goal),$(MAKECMDGOALS)))) +endef -${BUILD_BL1}/%.o: %.S - @echo " AS $<" - ${Q}${AS} ${ASFLAGS} -c $< -o $@ - -${BUILD_BL2}/%.o: %.S - @echo " AS $<" - ${Q}${AS} ${ASFLAGS} -c $< -o $@ - -${BUILD_BL31}/%.o: %.S - @echo " AS $<" - ${Q}${AS} ${ASFLAGS} -c $< -o $@ - -${BUILD_BL1}/%.o: %.c - @echo " CC $<" - ${Q}${CC} ${CFLAGS} -c $< -o $@ - -${BUILD_BL2}/%.o: %.c - @echo " CC $<" - ${Q}${CC} ${CFLAGS} -c $< -o $@ - -${BUILD_BL31}/%.o: %.c - @echo " CC $<" - ${Q}${CC} ${CFLAGS} -c $< -o $@ - -${BUILD_BL1}/%.ld: %.ld.S - @echo " PP $<" - ${Q}${AS} ${ASFLAGS} -P -E $< -o $@ - -${BUILD_BL2}/%.ld: %.ld.S - @echo " PP $<" - ${Q}${AS} ${ASFLAGS} -P -E $< -o $@ - -${BUILD_BL31}/%.ld: %.ld.S - @echo " PP $<" - ${Q}${AS} ${ASFLAGS} -P -E $< -o $@ +CLEANING := $(call match_goals,clean realclean distclean) -${BUILD_BL1}/bl1.elf: ${BL1_OBJS} ${BL1_LINKERFILE} - @echo " LD $@" - ${Q}${LD} -o $@ ${LDFLAGS} ${BL1_LDFLAGS} ${BL1_OBJS} +define MAKE_C -${BUILD_BL2}/bl2.elf: ${BL2_OBJS} ${BL2_LINKERFILE} - @echo " LD $@" - ${Q}${LD} -o $@ ${LDFLAGS} ${BL2_LDFLAGS} ${BL2_OBJS} +$(eval OBJ := $(1)/$(patsubst %.c,%.o,$(notdir $(2)))) +$(eval PREREQUISITES := $(patsubst %.o,%.d,$(OBJ))) -${BUILD_BL31}/bl31.elf: ${BL31_OBJS} ${BL31_LINKERFILE} - @echo " LD $@" - ${Q}${LD} -o $@ ${LDFLAGS} ${BL31_LDFLAGS} ${BL31_OBJS} +$(OBJ) : $(2) + @echo " CC $$<" + $$(Q)$$(CC) $$(CFLAGS) -c $$< -o $$@ -${BUILD_PLAT}/bl1.bin: ${BUILD_BL1}/bl1.elf - @echo " BIN $@" - ${Q}${OC} -O binary $< $@ - @echo - @echo "Built $@ successfully" - @echo -${BUILD_PLAT}/bl2.bin: ${BUILD_BL2}/bl2.elf - @echo " BIN $@" - ${Q}${OC} -O binary $< $@ - @echo - @echo "Built $@ successfully" - @echo +$(PREREQUISITES) : $(2) + @echo " DEPS $$@" + @mkdir -p $(1) + $$(Q)$$(CC) $$(CFLAGS) -M -MT $(OBJ) -MF $$@ $$< -${BUILD_PLAT}/bl31.bin: ${BUILD_BL31}/bl31.elf - @echo " BIN $@" - ${Q}${OC} -O binary $< $@ - @echo - @echo "Built $@ successfully" - @echo +ifeq "$(CLEANING)" "" +-include $(PREREQUISITES) +endif + +endef + + +define MAKE_S + +$(eval OBJ := $(1)/$(patsubst %.S,%.o,$(notdir $(2)))) +$(eval PREREQUISITES := $(patsubst %.o,%.d,$(OBJ))) + +$(OBJ) : $(2) + @echo " AS $$<" + $$(Q)$$(AS) $$(ASFLAGS) -c $$< -o $$@ + +$(PREREQUISITES) : $(2) + @echo " DEPS $$@" + @mkdir -p $(1) + $$(Q)$$(AS) $$(ASFLAGS) -M -MT $(OBJ) -MF $$@ $$< + +ifeq "$(CLEANING)" "" +-include $(PREREQUISITES) +endif + +endef + + +define MAKE_LD + +$(eval PREREQUISITES := $(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 $$@ $$< + +ifeq "$(CLEANING)" "" +-include $(PREREQUISITES) +endif + +endef + + +define MAKE_OBJS + $(eval C_OBJS := $(filter %.c,$(2))) + $(eval REMAIN := $(filter-out %.c,$(2))) + $(eval $(foreach obj,$(C_OBJS),$(call MAKE_C,$(1),$(obj)))) + + $(eval S_OBJS := $(filter %.S,$(REMAIN))) + $(eval REMAIN := $(filter-out %.S,$(REMAIN))) + $(eval $(foreach obj,$(S_OBJS),$(call MAKE_S,$(1),$(obj)))) + + $(and $(REMAIN),$(error Unexpected source files present: $(REMAIN))) +endef + + +# NOTE: The line continuation '\' is required in the next define otherwise we +# end up with a line-feed characer at the end of the last c filename. +# Also bare this issue in mind if extending the list of supported filetypes. +define SOURCES_TO_OBJS + $(notdir $(patsubst %.c,%.o,$(filter %.c,$(1)))) \ + $(notdir $(patsubst %.S,%.o,$(filter %.S,$(1)))) +endef + +define MAKE_BL + $(eval BUILD_DIR := ${BUILD_PLAT}/bl$(1)) + $(eval SOURCES := $(BL$(1)_SOURCES) $(BL_COMMON_SOURCES) $(PLAT_BL_COMMON_SOURCES)) + $(eval OBJS := $(addprefix $(BUILD_DIR)/,$(call SOURCES_TO_OBJS,$(SOURCES)))) + $(eval LINKERFILE := $(BUILD_DIR)/bl$(1).ld) + $(eval MAPFILE := $(BUILD_DIR)/bl$(1).map) + $(eval ELF := $(BUILD_DIR)/bl$(1).elf) + $(eval DUMP := $(BUILD_DIR)/bl$(1).dump) + $(eval BIN := $(BUILD_PLAT)/bl$(1).bin) + + $(eval $(call MAKE_OBJS,$(BUILD_DIR),$(SOURCES))) + $(eval $(call MAKE_LD,$(LINKERFILE),$(BL$(1)_LINKERFILE))) + +$(BUILD_DIR) : + $$(Q)mkdir -p "$$@" + +$(ELF) : $(OBJS) $(LINKERFILE) + @echo " LD $$@" + $$(Q)$$(LD) -o $$@ $$(LDFLAGS) -Map=$(MAPFILE) --script $(LINKERFILE) \ + --entry=$(BL$(1)_ENTRY_POINT) $(OBJS) + +$(DUMP) : $(ELF) + @echo " OD $$@" + $${Q}$${OD} -dx $$< > $$@ + +$(BIN) : $(ELF) + @echo " BIN $$@" + $$(Q)$$(OC) -O binary $$< $$@ + @echo + @echo "Built $$@ successfully" + @echo + +.PHONY : bl$(1) +bl$(1) : $(BUILD_DIR) $(BIN) $(DUMP) + +all : bl$(1) + +$(eval FIP_DEPS += $(if $2,$(BIN),)) +$(eval FIP_ARGS += $(if $2,--bl$(1) $(BIN),)) + +endef + + +$(eval $(call MAKE_BL,1)) + +$(eval $(call MAKE_BL,2,in_fip)) + +BL31_SOURCES += ${SPD_SOURCES} +$(eval $(call MAKE_BL,31,in_fip)) + +ifeq (${NEED_BL32},yes) +$(eval $(call MAKE_BL,32,in_fip)) +endif ${BUILD_PLAT}/fip.bin: locate-bl33 ${FIP_DEPS} ${FIPTOOL} ${Q}${FIPTOOL} --dump \ - --bl2 ${BUILD_PLAT}/bl2.bin \ - --bl31 ${BUILD_PLAT}/bl31.bin \ - --bl33 ${BL33} \ ${FIP_ARGS} \ + --bl33 ${BL33} \ $@ @echo @echo "Built $@ successfully" @@ -415,7 +405,7 @@ cscope: ${Q}cscope -b -q -k help: - @echo "usage: ${MAKE} PLAT= " + @echo "usage: ${MAKE} PLAT= " @echo "" @echo "PLAT is used to specify which platform you wish to build." @echo "" @@ -430,7 +420,6 @@ help: @echo " clean Clean the build for the selected platform" @echo " cscope Generate cscope index" @echo " distclean Remove all build artifacts for all platforms" - @echo " dump Generate object file dumps" @echo " fiptool Build the Firmware Image Package(FIP) creation tool" @echo "" @echo "note: most build targets require PLAT to be set to a specific platform." diff --git a/bl1/bl1.mk b/bl1/bl1.mk index 8e86af47f..bc14ddc0e 100644 --- a/bl1/bl1.mk +++ b/bl1/bl1.mk @@ -43,12 +43,11 @@ vpath %.S arch/${ARCH}/cpu \ lib/arch/${ARCH} \ ${PLAT_BL1_S_VPATH} -BL1_OBJS += bl1_arch_setup.o \ - bl1_entrypoint.o \ - early_exceptions.o \ - bl1_main.o \ - cpu_helpers.o +BL1_SOURCES += bl1_arch_setup.c \ + bl1_entrypoint.S \ + early_exceptions.S \ + bl1_main.c \ + cpu_helpers.S BL1_ENTRY_POINT := reset_handler -BL1_MAPFILE := bl1.map -BL1_LINKERFILE := bl1.ld +BL1_LINKERFILE := bl1.ld.S diff --git a/bl2/bl2.mk b/bl2/bl2.mk index fb47669e6..f6787ee20 100644 --- a/bl2/bl2.mk +++ b/bl2/bl2.mk @@ -40,14 +40,13 @@ vpath %.S lib/arch/${ARCH} \ lib/sync/locks/exclusive \ ${PLAT_BL2_S_VPATH} -BL2_OBJS += bl2_entrypoint.o \ - bl2_arch_setup.o \ - bl2_main.o \ - spinlock.o \ - early_exceptions.o +BL2_SOURCES += bl2_entrypoint.S \ + bl2_arch_setup.c \ + bl2_main.c \ + spinlock.S \ + early_exceptions.S BL2_ENTRY_POINT := bl2_entrypoint -BL2_MAPFILE := bl2.map -BL2_LINKERFILE := bl2.ld +BL2_LINKERFILE := bl2.ld.S CFLAGS += $(DEFINES) diff --git a/bl31/bl31.mk b/bl31/bl31.mk index 1522b8399..5bc58c597 100644 --- a/bl31/bl31.mk +++ b/bl31/bl31.mk @@ -47,25 +47,24 @@ vpath %.S lib/arch/${ARCH} \ arch/system/gic/${ARCH} \ ${PLAT_BL31_S_VPATH} -BL31_OBJS += bl31_arch_setup.o \ - bl31_entrypoint.o \ - runtime_exceptions.o \ - bl31_main.o \ - psci_entry.o \ - psci_setup.o \ - psci_common.o \ - psci_afflvl_on.o \ - psci_main.o \ - psci_afflvl_off.o \ - psci_afflvl_suspend.o \ - spinlock.o \ - gic_v3_sysregs.o \ - bakery_lock.o \ - runtime_svc.o \ - early_exceptions.o \ - context_mgmt.o \ - context.o +BL31_SOURCES += bl31_arch_setup.c \ + bl31_entrypoint.S \ + runtime_exceptions.S \ + bl31_main.c \ + psci_entry.S \ + psci_setup.c \ + psci_common.c \ + psci_afflvl_on.c \ + psci_main.c \ + psci_afflvl_off.c \ + psci_afflvl_suspend.c \ + spinlock.S \ + gic_v3_sysregs.S \ + bakery_lock.c \ + runtime_svc.c \ + early_exceptions.S \ + context_mgmt.c \ + context.S BL31_ENTRY_POINT := bl31_entrypoint -BL31_MAPFILE := bl31.map -BL31_LINKERFILE := bl31.ld +BL31_LINKERFILE := bl31.ld.S diff --git a/bl32/tsp/tsp-fvp.mk b/bl32/tsp/tsp-fvp.mk index 2bf748e53..278d358d9 100644 --- a/bl32/tsp/tsp-fvp.mk +++ b/bl32/tsp/tsp-fvp.mk @@ -33,7 +33,6 @@ vpath %.c ${PLAT_BL2_C_VPATH} vpath %.S ${PLAT_BL2_S_VPATH} # TSP source files specific to FVP platform -BL32_OBJS += bl32_plat_setup.o \ - bl32_setup_xlat.o \ - plat_common.o \ - ${PLAT_BL_COMMON_OBJS} +BL32_SOURCES += bl32_plat_setup.c \ + bl32_setup_xlat.c \ + plat_common.c diff --git a/bl32/tsp/tsp.mk b/bl32/tsp/tsp.mk index bc23315e4..a16c97026 100644 --- a/bl32/tsp/tsp.mk +++ b/bl32/tsp/tsp.mk @@ -38,16 +38,14 @@ vpath %.S lib/arch/${ARCH} \ include \ lib/sync/locks/exclusive -BL32_OBJS += tsp_entrypoint.o \ - tsp_main.o \ - tsp_request.o \ - spinlock.o \ - early_exceptions.o \ - ${BL_COMMON_OBJS} +BL32_SOURCES += tsp_entrypoint.S \ + tsp_main.c \ + tsp_request.S \ + spinlock.S \ + early_exceptions.S BL32_ENTRY_POINT := tsp_entrypoint -BL32_MAPFILE := tsp.map -BL32_LINKERFILE := tsp.ld +BL32_LINKERFILE := tsp.ld.S vpath %.ld.S ${BL32_ROOT} vpath %.c ${BL32_ROOT} diff --git a/plat/fvp/platform.mk b/plat/fvp/platform.mk index 5bf47141e..475ad725f 100644 --- a/plat/fvp/platform.mk +++ b/plat/fvp/platform.mk @@ -57,35 +57,35 @@ PLAT_BL31_C_VPATH := drivers/arm/interconnect/cci-400 \ PLAT_BL31_S_VPATH := lib/semihosting/${ARCH} -PLAT_BL_COMMON_OBJS := semihosting_call.o \ - mmio.o \ - pl011.o \ - semihosting.o \ - sysreg_helpers.o \ - plat_io_storage.o \ - io_semihosting.o \ - io_fip.o \ - io_memmap.o +PLAT_BL_COMMON_SOURCES := semihosting_call.S \ + mmio.c \ + pl011.c \ + semihosting.c \ + sysreg_helpers.S \ + plat_io_storage.c \ + io_semihosting.c \ + io_fip.c \ + io_memmap.c -BL1_OBJS += bl1_plat_setup.o \ - bl1_plat_helpers.o \ - plat_helpers.o \ - plat_common.o \ - plat_setup_xlat.o \ - cci400.o +BL1_SOURCES += bl1_plat_setup.c \ + bl1_plat_helpers.S \ + plat_helpers.S \ + plat_common.c \ + plat_setup_xlat.c \ + cci400.c -BL2_OBJS += bl2_plat_setup.o \ - plat_setup_xlat.o \ - plat_common.o +BL2_SOURCES += bl2_plat_setup.c \ + plat_setup_xlat.c \ + plat_common.c -BL31_OBJS += bl31_plat_setup.o \ - plat_helpers.o \ - plat_setup_xlat.o \ - plat_common.o \ - plat_pm.o \ - plat_topology.o \ - plat_gic.o \ - fvp_pwrc.o \ - cci400.o \ - gic_v2.o \ - gic_v3.o +BL31_SOURCES += bl31_plat_setup.c \ + plat_helpers.S \ + plat_setup_xlat.c \ + plat_common.c \ + plat_pm.c \ + plat_topology.c \ + plat_gic.c \ + fvp_pwrc.c \ + cci400.c \ + gic_v2.c \ + gic_v3.c diff --git a/services/spd/tspd/tspd.mk b/services/spd/tspd/tspd.mk index ee6400d06..bbf9f6717 100644 --- a/services/spd/tspd/tspd.mk +++ b/services/spd/tspd/tspd.mk @@ -32,10 +32,10 @@ TSPD_DIR := services/spd/tspd SPD_INCLUDES := -Iinclude/spd/tspd \ -I${TSPD_DIR} -SPD_OBJS := tspd_common.o \ - tspd_main.o \ - tspd_pm.o \ - tspd_helpers.o +SPD_SOURCES := tspd_common.c \ + tspd_main.c \ + tspd_pm.c \ + tspd_helpers.S vpath %.c ${TSPD_DIR} vpath %.S ${TSPD_DIR}