]> xenbits.xensource.com Git - xen.git/commitdiff
hvmloader: Build GPXE from upstream git repo, latest release tag.
authorKeir Fraser <keir.fraser@citrix.com>
Tue, 20 Jul 2010 09:58:04 +0000 (10:58 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Tue, 20 Jul 2010 09:58:04 +0000 (10:58 +0100)
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
.hgignore
tools/firmware/etherboot/Makefile
tools/firmware/etherboot/gpxe-git-snapshot.tar.gz [deleted file]
tools/firmware/etherboot/patches/Makefile.patch [deleted file]
tools/firmware/etherboot/patches/boot_prompt_option.patch
tools/firmware/etherboot/patches/series

index 547dd495df324be1f5874fd62c1d86350c7ce3c7..0b14d4cefb39a94a4b4eb6d12ea8526e4fc2bcf4 100644 (file)
--- a/.hgignore
+++ b/.hgignore
 ^tools/firmware/.*bios/.*bios.*\.txt$
 ^tools/firmware/etherboot/eb-roms\.h$
 ^tools/firmware/etherboot/gpxe/.*$
+^tools/firmware/etherboot/gpxe\.git/.*$
 ^tools/firmware/extboot/extboot.img$
 ^tools/firmware/extboot/signrom$
 ^tools/firmware/hvmloader/acpi/dsdt.*\.c$
index aaf6be2e62d3c683be9074091245e27a9a7b103f..7d19a765a5cd78dac06d8411c13dcd8fa53b2301 100644 (file)
@@ -4,6 +4,9 @@ XEN_ROOT = ../../..
 include $(XEN_ROOT)/tools/Rules.mk
 include Config
 
+GPXE_GIT_URL := git://git.etherboot.org/scm/gpxe.git
+GPXE_GIT_TAG := v1.0.1
+
 D=gpxe
 T=gpxe-git-snapshot.tar.gz
 
@@ -14,7 +17,7 @@ ROMS = $(addprefix $D/src/bin/, $(addsuffix .rom, $(NICS)))
 .PHONY: all
 all: eb-roms.h
 
-%.rom: $D/src/arch/i386/Config
+%.rom: $D/src/arch/i386/Makefile
        $(MAKE) -C $D/src bin/$(*F).rom
 
 eb-roms.h.new: $(ROMS)
@@ -24,7 +27,13 @@ eb-roms.h: Config
        $(MAKE) NO_WERROR=1 $@.new
        mv -f $@.new $@
 
-$D/src/arch/i386/Config: $T Config
+$T:
+       $(GIT) clone $(GPXE_GIT_URL) $D.git
+       cd $D.git && \
+       $(GIT) archive --format=tar --prefix=$D/ $(GPXE_GIT_TAG) | gzip >../$T
+       rm -rf $D.git
+
+$D/src/arch/i386/Makefile: $T Config
        rm -rf $D
        gzip -dc $T | tar xf -
        for i in $$(cat patches/series) ; do                 \
@@ -32,9 +41,9 @@ $D/src/arch/i386/Config: $T Config
        done
        cat Config >>$@
 
-$D/src/bin/NIC: $D/src/arch/i386/Config
+$D/src/bin/NIC: $D/src/arch/i386/Makefile
        $(MAKE) -C $D/src bin/NIC
 
 .PHONY: clean
 clean:
-       rm -rf $D *~ eb-roms.h
+       rm -rf $D $D.git *~ eb-roms.h
diff --git a/tools/firmware/etherboot/gpxe-git-snapshot.tar.gz b/tools/firmware/etherboot/gpxe-git-snapshot.tar.gz
deleted file mode 100644 (file)
index b365456..0000000
Binary files a/tools/firmware/etherboot/gpxe-git-snapshot.tar.gz and /dev/null differ
diff --git a/tools/firmware/etherboot/patches/Makefile.patch b/tools/firmware/etherboot/patches/Makefile.patch
deleted file mode 100644 (file)
index d56825b..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/src/Makefile.orig        2010-07-19 13:09:06.000000000 +0200
-+++ b/src/Makefile     2010-07-19 13:04:11.000000000 +0200
-@@ -71,7 +71,8 @@ noargs : blib $(BIN)/NIC $(BIN)/gpxe.dsk
- # If no architecture is specified in Config or on the command-line,
- # use that of the build machine.
- #
--ARCH          ?= $(shell uname -m | sed -e s,i[3456789]86,i386,)
-+ARCH          ?= $(shell uname -m | sed -e s,i[3456789]86,i386, \
-+              -e s,i86pc,x86_32, -e s,amd64,x86_64,)
- # handle x86_64 like i386, but set -m32 option for 32bit code only
- ifeq ($(ARCH),x86_64)
index 3b6f4b4a1cc18463c8cb2d99f7a2060ed5637b6b..e5e8eed942dd134cecf032b2b6c33d1b2e1cd815 100644 (file)
@@ -1,7 +1,7 @@
-diff -pruN a/src/arch/i386/prefix/romprefix.S b/src/arch/i386/prefix/romprefix.S
---- a/src/arch/i386/prefix/romprefix.S 2008-09-25 03:34:26.000000000 +0100
-+++ b/src/arch/i386/prefix/romprefix.S 2008-09-25 12:01:33.000000000 +0100
-@@ -320,6 +320,7 @@ no_pmm:
+diff -pruN gpxe/src/arch/i386/prefix/romprefix.S gpxe.new/src/arch/i386/prefix/romprefix.S
+--- gpxe/src/arch/i386/prefix/romprefix.S      2010-06-29 20:31:33.000000000 +0100
++++ gpxe.new/src/arch/i386/prefix/romprefix.S  2010-07-20 10:40:20.000000000 +0100
+@@ -458,6 +458,7 @@ no_pmm:
        xorw    %di, %di
        cs rep  movsb
  
@@ -9,23 +9,27 @@ diff -pruN a/src/arch/i386/prefix/romprefix.S b/src/arch/i386/prefix/romprefix.S
        /* Prompt for POST-time shell */
        movw    $init_message_prompt, %si
        xorw    %di, %di
-@@ -341,6 +342,7 @@ no_pmm:
+@@ -484,6 +485,7 @@ no_pmm:
        pushw   %cs
        call    exec
1:
out:
 +#endif
        /* Restore registers */
        popw    %gs
        popw    %fs
-@@ -371,9 +373,11 @@ init_message_pmm:
+@@ -538,6 +540,7 @@ init_message_no_pmm:
  init_message_int19:
        .asciz  " INT19"
        .size   init_message_int19, . - init_message_int19
 +#ifndef NO_POST_PROMPT
  init_message_prompt:
-       .asciz  "\nPress Ctrl-B to configure gPXE..."
+       .asciz  "\nPress Ctrl-B to configure "
        .size   init_message_prompt, . - init_message_prompt
+@@ -547,6 +550,7 @@ init_message_dots:
+ init_message_done:
+       .asciz  "\n\n"
+       .size   init_message_done, . - init_message_done
 +#endif
- clear_message:
-       .asciz  "\r                                     \n\n"
-       .size   clear_message, . - clear_message
+ /* ROM image location
+  *
index f76e6bef75e7fccf39018d6b8fef719c09fc5e9e..86cb3008655c6e6154b861084bad6029431d07f4 100644 (file)
@@ -1,2 +1 @@
-Makefile.patch
 boot_prompt_option.patch