See patch. The new TAG-stable points to the very latest commit in seabios.git, which may not be quite right, but both stable and master must be using Kconfig.
//Peter
Reliably build arbitrary Kconfig-based revisions of SeaBIOS The reliability is accomplished by checking out the user's desired SeaBIOS tag into a branch named 'coreboot' in the local SeaBIOS git repository. Thanks to the use of a branch TAG-$(CONFIG_SEABIOS_..) can refer to any commitish at all in the SeaBIOS git repo. Configuration is done by make defconfig followed by enabling of several coreboot-specific Kconfig options for SeaBIOS using perl. Signed-off-by: Peter Stuge <pe...@stuge.se> Index: src/arch/x86/Makefile.inc =================================================================== --- src/arch/x86/Makefile.inc (revision 6317) +++ src/arch/x86/Makefile.inc (working copy) @@ -286,6 +286,7 @@ seabios: $(MAKE) -C payloads/external/SeaBIOS -f Makefile.inc \ + HOSTCC="$(HOSTCC)" \ CC="$(CC)" LD="$(LD)" OBJDUMP="$(OBJDUMP)" \ OBJCOPY="$(OBJCOPY)" STRIP="$(STRIP)" \ CONFIG_SEABIOS_MASTER=$(CONFIG_SEABIOS_MASTER) \ Index: payloads/external/SeaBIOS/Makefile.inc =================================================================== --- payloads/external/SeaBIOS/Makefile.inc (revision 6317) +++ payloads/external/SeaBIOS/Makefile.inc (working copy) @@ -1,31 +1,34 @@ TAG-$(CONFIG_SEABIOS_MASTER)=origin/master -TAG-$(CONFIG_SEABIOS_STABLE)=rel-0.6.1.3 +TAG-$(CONFIG_SEABIOS_STABLE)=42d977125110305704ad5794ba4da163faeed382 +unexport KCONFIG_AUTOCONFIG + all: seabios -seabios: patch - cd seabios; $(MAKE) - -patch: checkout - test -r seabios/.patched || \ - perl -pi -e "s,#define CONFIG_COREBOOT 0,#define CONFIG_COREBOOT 1,;" \ - -e "s,#define CONFIG_DEBUG_SERIAL 0,#define CONFIG_DEBUG_SERIAL 1,;" \ - -e "s,#define CONFIG_VGAHOOKS 0,#define CONFIG_VGAHOOKS 1,;" \ - seabios/src/config.h - touch seabios/.patched - checkout: - echo "Checking out SeaBIOS $(TAG-y)" + echo " GIT SeaBIOS $(TAG-y)" test -d seabios && ( cd seabios; git fetch ) || \ - git clone git://git.linuxtogo.org/home/kevin/seabios.git seabios - cd seabios; git checkout -m $(TAG-y) + git clone git://git.linuxtogo.org/home/kevin/seabios.git + cd seabios; git checkout master; git branch -D coreboot 2>/dev/null; git checkout -b coreboot $(TAG-y) +config: checkout + echo " CONFIG SeaBIOS $(TAG-y)" + $(MAKE) -C seabios defconfig + perl -pi -e 's,.*CONFIG_COREBOOT.*,CONFIG_COREBOOT=y,;' \ + -e 's,.*CONFIG_DEBUG_SERIAL.*,CONFIG_DEBUG_SERIAL=y,;' \ + -e 's,.*CONFIG_VGAHOOKS.*,CONFIG_VGAHOOKS=y,;' \ + seabios/.config + +seabios: config + echo " MAKE SeaBIOS $(TAG-y)" + $(MAKE) -C seabios + clean: - test -d seabios && (cd seabios; $(MAKE) clean) || exit 0 + test -d seabios && $(MAKE) -C seabios clean || exit 0 distclean: rm -rf seabios -.PHONY: seabios +.PHONY: checkout config seabios clean distclean
-- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot