build system: Introduce manual file type
It's used for files with custom build rules, eg. the objcopy stuff surrounding smm and sipi_vector. Change-Id: Ie9ab4c9c6008ca42f82f768c5f33f90c7f5f4db5 Signed-off-by: Patrick Georgi <pgeorgi@chromium.org> Reviewed-on: http://review.coreboot.org/9287 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin <adurbin@google.com> Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:
		
				
					committed by
					
						 Stefan Reinauer
						Stefan Reinauer
					
				
			
			
				
	
			
			
			
						parent
						
							416ab38ea4
						
					
				
				
					commit
					f4305468d7
				
			| @@ -12,7 +12,7 @@ SIPI_BIN=$(SIPI_ELF:.elf=) | ||||
| SIPI_DOTO=$(SIPI_ELF:.elf=.o) | ||||
|  | ||||
| ifeq ($(CONFIG_PARALLEL_MP),y) | ||||
| ramstage-srcs += $(SIPI_BIN).o | ||||
| ramstage-srcs += $(SIPI_BIN).manual | ||||
| endif | ||||
| rmodules_$(ARCH-ramstage-y)-$(CONFIG_PARALLEL_MP) += sipi_vector.S | ||||
|  | ||||
| @@ -24,6 +24,6 @@ $(eval $(call rmodule_link,$(SIPI_ELF), $(SIPI_ELF:.elf=.o), 0,x86_32)) | ||||
| $(SIPI_BIN): $(SIPI_RMOD) | ||||
| 	$(OBJCOPY_ramstage) -O binary $< $@ | ||||
|  | ||||
| $(SIPI_BIN).ramstage.o: $(SIPI_BIN) | ||||
| $(SIPI_BIN).ramstage.manual: $(SIPI_BIN) | ||||
| 	@printf "    OBJCOPY    $(subst $(obj)/,,$(@))\n" | ||||
| 	cd $(dir $@); $(OBJCOPY_rmodules_$(ARCH-ramstage-y)) -I binary $(notdir $<) -O elf32-i386 -B i386 $(notdir $@) | ||||
|   | ||||
| @@ -41,12 +41,12 @@ $(obj)/cpu/x86/smm/smm_wrap: $(obj)/cpu/x86/smm/smm.o $(src)/cpu/x86/smm/$(SMM_L | ||||
|  | ||||
| # change to the target path because objcopy will use the path name in its | ||||
| # ELF symbol names. | ||||
| $(obj)/cpu/x86/smm/smm_wrap.ramstage.o: $(obj)/cpu/x86/smm/smm_wrap | ||||
| $(obj)/cpu/x86/smm/smm_wrap.ramstage.manual: $(obj)/cpu/x86/smm/smm_wrap | ||||
| 	@printf "    OBJCOPY    $(subst $(obj)/,,$(@))\n" | ||||
| ifeq ($(CONFIG_ARCH_RAMSTAGE_X86_32),y) | ||||
| 	cd $(obj)/cpu/x86/smm; $(OBJCOPY_smm) -I binary smm -O elf32-i386 -B i386 smm_wrap.ramstage.o | ||||
| 	cd $(obj)/cpu/x86/smm; $(OBJCOPY_smm) -I binary smm -O elf32-i386 -B i386 smm_wrap.ramstage.manual | ||||
| else | ||||
| 	cd $(obj)/cpu/x86/smm; $(OBJCOPY_smm) -I binary smm -O elf64-x86_64 -B x86_64 smm_wrap.ramstage.o | ||||
| 	cd $(obj)/cpu/x86/smm; $(OBJCOPY_smm) -I binary smm -O elf64-x86_64 -B x86_64 smm_wrap.ramstage.manual | ||||
| endif | ||||
|  | ||||
|  | ||||
| @@ -58,8 +58,8 @@ smm-y += smm_module_handler.c | ||||
|  | ||||
| ramstage-y += smm_module_loader.c | ||||
|  | ||||
| ramstage-srcs += $(obj)/cpu/x86/smm/smm.o | ||||
| ramstage-srcs += $(obj)/cpu/x86/smm/smmstub.o | ||||
| ramstage-srcs += $(obj)/cpu/x86/smm/smm.manual | ||||
| ramstage-srcs += $(obj)/cpu/x86/smm/smmstub.manual | ||||
|  | ||||
| # SMM Stub Module. The stub is used as a trampoline for relocation and normal | ||||
| # SMM handling. | ||||
| @@ -72,7 +72,7 @@ $(eval $(call rmodule_link,$(obj)/cpu/x86/smm/smmstub.elf, $(obj)/cpu/x86/smm/sm | ||||
| $(obj)/cpu/x86/smm/smmstub: $(obj)/cpu/x86/smm/smmstub.elf.rmod | ||||
| 	$(OBJCOPY_smmstub) -O binary $< $@ | ||||
|  | ||||
| $(obj)/cpu/x86/smm/smmstub.ramstage.o: $(obj)/cpu/x86/smm/smmstub | ||||
| $(obj)/cpu/x86/smm/smmstub.ramstage.manual: $(obj)/cpu/x86/smm/smmstub | ||||
| 	@printf "    OBJCOPY    $(subst $(obj)/,,$(@))\n" | ||||
| 	cd $(dir $@); $(OBJCOPY_smmstub) -I binary $(notdir $<) -O elf32-i386 -B i386 $(notdir $@) | ||||
|  | ||||
| @@ -87,7 +87,7 @@ endif | ||||
| $(obj)/cpu/x86/smm/smm: $(obj)/cpu/x86/smm/smm.elf.rmod | ||||
| 	$(OBJCOPY_smm) -O binary $< $@ | ||||
|  | ||||
| $(obj)/cpu/x86/smm/smm.ramstage.o: $(obj)/cpu/x86/smm/smm | ||||
| $(obj)/cpu/x86/smm/smm.ramstage.manual: $(obj)/cpu/x86/smm/smm | ||||
| 	@printf "    OBJCOPY    $(subst $(obj)/,,$(@))\n" | ||||
| ifeq ($(CONFIG_ARCH_RAMSTAGE_X86_32),y) | ||||
| 	cd $(dir $@); $(OBJCOPY_smm) -I binary $(notdir $<) -O elf32-i386 -B i386 $(notdir $@) | ||||
| @@ -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.o | ||||
| ramstage-srcs += $(obj)/cpu/x86/smm/smm_wrap.manual | ||||
| endif | ||||
|  | ||||
| # Use TSEG specific entry point and linker script | ||||
|   | ||||
		Reference in New Issue
	
	Block a user