Move SeaBIOS output out of coreboot source tree
[coreboot.git] / payloads / external / SeaBIOS / Makefile.inc
index faca57e56543ebf76ebc8150e6cfdf56f540ad15..7d0d6fc1600b0afd9577806c845395fff64ee16e 100644 (file)
@@ -1,31 +1,45 @@
 
 
-TAG-$(CONFIG_SEABIOS_MASTER)=master
-TAG-$(CONFIG_SEABIOS_STABLE)=rel-0.6.1.3
-
-all: seabios
-
-seabios: patch
-       cd seabios; $(MAKE) CC="$(CC)" LD="$(LD)"
-
-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)"
-       test -d seabios && ( cd seabios; git pull ) || \
-       git clone git://git.linuxtogo.org/home/kevin/seabios.git seabios
-       cd seabios; git checkout $(TAG-y)
+TAG-$(CONFIG_SEABIOS_MASTER)=origin/master
+TAG-$(CONFIG_SEABIOS_STABLE)=e66fb31eac3e6be6aaab548c229af9bb1ba55c33
+
+unexport KCONFIG_AUTOCONFIG
+
+all: build
+
+$(OUT)/seabios:
+       echo "    Cloning SeaBIOS from Git"
+       git clone git://git.seabios.org/seabios.git $(OUT)/seabios
+
+fetch: $(OUT)/seabios
+       cd $(OUT)/seabios; git show $(TAG-y) >/dev/null 2>&1 ;  if [ $$? -ne 0 ]; \
+       then echo "    Fetching new commits from the SeaBIOS git repo"; git fetch; fi
+
+checkout: fetch
+       echo "    Checking out SeaBIOS revision $(TAG-y)"
+       cd $(OUT)/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 $(OUT)/seabios defconfig OUT=$(OUT)/seabios/out/
+       echo "CONFIG_COREBOOT=y" >> $(OUT)/seabios/.config
+       echo "CONFIG_DEBUG_SERIAL=y" >> $(OUT)/seabios/.config
+       echo "CONFIG_DEBUG_SERIAL_PORT=0x3f8" >> $(OUT)/seabios/.config
+       echo "CONFIG_COREBOOT_FLASH=y" >> $(OUT)/seabios/.config
+       echo "CONFIG_LZMA=y" >> $(OUT)/seabios/.config
+       echo "CONFIG_FLASH_FLOPPY=y" >> $(OUT)/seabios/.config
+       echo "CONFIG_VGAHOOKS=y" >> $(OUT)/seabios/.config
+       # This shows how to force a previously set .config option *off*
+       #echo "# CONFIG_SMBIOS is not set" >> $(OUT)/seabios/.config
+
+build: config
+       echo "    MAKE       SeaBIOS $(TAG-y)"
+       $(MAKE) -C $(OUT)/seabios OUT=$(OUT)/seabios/out/
 
 clean:
-       test -d seabios && (cd seabios; $(MAKE) CC="$(CC)" LD="$(LD)" clean) || exit 0
+       test -d $(OUT)/seabios && $(MAKE) -C $(OUT)/seabios clean OUT=$(OUT)/seabios/out/ || exit 0
 
 distclean:
-       rm -rf seabios
+       rm -rf $(OUT)/seabios
 
-.PHONY: seabios
+.PHONY: checkout config build clean distclean clone fetch