build system: extend src-to-obj for non-.c/.S files

It also creates file names in the build directory and with
the stage sliced in, but keeps the extension for anything
not .c or .S.

Also some handling for non-.c/.S files was adapted to match.

This is inspired by the commit listed below, but rewritten to match
upstream, and split in smaller pieces to keep intent clear.

Change-Id: If8f89a7daffcf51f430b64c3293d2a817ae5120f
Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Based-On-Change-Id: I50af7dacf616e0f8ff4c43f4acc679089ad7022b
Based-On-Signed-off-by: Julius Werner <jwerner@chromium.org>
Based-On-Reviewed-on: https://chromium-review.googlesource.com/219170
Reviewed-on: http://review.coreboot.org/9175
Reviewed-by: Aaron Durbin <adurbin@google.com>
Tested-by: build bot (Jenkins)
This commit is contained in:
Patrick Georgi
2015-03-27 17:03:28 +01:00
committed by Patrick Georgi
parent 5c9f534269
commit db273065f6
6 changed files with 18 additions and 13 deletions

View File

@@ -12,7 +12,7 @@ SIPI_BIN=$(SIPI_ELF:.elf=)
SIPI_DOTO=$(SIPI_ELF:.elf=.o)
ifeq ($(CONFIG_PARALLEL_MP),y)
ramstage-srcs += $(SIPI_BIN)
ramstage-srcs += $(SIPI_BIN).o
endif
rmodules_$(ARCH-ramstage-y)-$(CONFIG_PARALLEL_MP) += sipi_vector.S

View File

@@ -58,8 +58,8 @@ smm-y += smm_module_handler.c
ramstage-y += smm_module_loader.c
ramstage-srcs += $(obj)/cpu/x86/smm/smm
ramstage-srcs += $(obj)/cpu/x86/smm/smmstub
ramstage-srcs += $(obj)/cpu/x86/smm/smm.o
ramstage-srcs += $(obj)/cpu/x86/smm/smmstub.o
# SMM Stub Module. The stub is used as a trampoline for relocation and normal
# SMM handling.
@@ -99,7 +99,7 @@ else # CONFIG_SMM_MODULES
ramstage-$(CONFIG_HAVE_SMI_HANDLER) += smmrelocate.S
ifeq ($(CONFIG_HAVE_SMI_HANDLER),y)
ramstage-srcs += $(obj)/cpu/x86/smm/smm_wrap
ramstage-srcs += $(obj)/cpu/x86/smm/smm_wrap.o
endif
# Use TSEG specific entry point and linker script