PLATFORM-y += src/arch/$(ARCHDIR-y) src/cpu src/mainboard/$(MAINBOARDDIR)
TARGETS-y :=
-BUILD-y := src/lib src/boot src/console src/devices src/southbridge src/northbridge src/superio src/drivers
+BUILD-y := src/lib src/boot src/console src/devices src/ec src/southbridge src/northbridge src/superio src/drivers
BUILD-y += util/cbfstool util/sconfig
BUILD-$(CONFIG_ARCH_X86) += src/pc80
#######################################################################
# Build the tools
-CBFSTOOL:=$(objutil)/cbfstool/cbfstool
+CBFSTOOL:=$(obj)/cbfstool
+
+$(CBFSTOOL): $(objutil)/cbfstool/cbfstool
+ cp $< $@
# needed objects that every mainboard uses
# Creation of these is architecture and mainboard independent
romstage-srcs:=
driver-srcs:=
smm-srcs:=
+cbfs-files:=
ramstage-objs:=
romstage-objs:=
includemakefiles= \
$(foreach type,$(2), $(eval $(type)-y:=)) \
$(eval subdirs-y:=) \
+ $(eval cbfs-files-y:=) \
$(eval -include $(1)) \
$(foreach type,$(2), \
$(eval $(type)-srcs+= \
$$(subst $(top)/,, \
$$(abspath $$(addprefix $(dir $(1)),$$($(type)-y)))))) \
+ $(foreach file,$(cbfs-files-y), \
+ $(if $(wildcard $(dir $(1))$$($(file)-file)), \
+ $(eval tmp-cbfs-file:= $(wildcard $(dir $(1))$$($(file)-file))), \
+ $(eval tmp-cbfs-file:= $$($(file)-file))) \
+ $(eval cbfs-files += $(tmp-cbfs-file)|$(file)|$$($(file)-type)|$$($(file)-position)) \
+ $(eval $(file)-name:=) \
+ $(eval $(file)-type:=) \
+ $(eval $(file)-position:=)) \
$(eval subdirs+=$$(subst $(CURDIR)/,,$$(abspath $$(addprefix $(dir $(1)),$$(subdirs-y)))))
# For each path in $(subdirs) call includemakefiles
@echo allsrcs=$(allsrcs)
@echo DEPENDENCIES=$(DEPENDENCIES)
@echo LIBGCC_FILE_NAME=$(LIBGCC_FILE_NAME)
+ @echo cbfs-files:='$(cbfs-files)'
printcrt0s:
@echo crt0s=$(crt0s)
rm -f $(obj)/mainboard/$(MAINBOARDDIR)/bootblock.* $(obj)/mainboard/$(MAINBOARDDIR)/dsdt.*
rm -f $(obj)/cpu/x86/smm/smm_bin.c $(obj)/cpu/x86/smm/smm.* $(obj)/cpu/x86/smm/smm
rmdir -p $(alldirs) 2>/dev/null >/dev/null || true
+ $(MAKE) -C payloads/external/SeaBIOS -f Makefile.inc clean
clean: clean-for-update
rm -f $(obj)/coreboot* .ccwrap