# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1279619884 -3600
# Node ID fe50ba40c0b67a5a56ddfd5cc3665f09258a64eb
# Parent c1c6706e4162dfd05e007d8fe726bb04c0b6234a
hvmloader: Build GPXE from upstream git repo, latest release tag.
Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
---
tools/firmware/etherboot/patches/Makefile.patch | 10 -----
.hgignore | 1
tools/firmware/etherboot/Makefile | 17 +++++++--
tools/firmware/etherboot/patches/boot_prompt_option.patch | 24 ++++++++------
tools/firmware/etherboot/patches/series | 1
firmware/etherboot/gpxe-git-snapshot.tar.gz | 0
6 files changed, 28 insertions(+), 25 deletions(-)
diff -r c1c6706e4162 -r fe50ba40c0b6 .hgignore
--- a/.hgignore Mon Jul 19 18:56:02 2010 +0100
+++ b/.hgignore Tue Jul 20 10:58:04 2010 +0100
@@ -135,6 +135,7 @@
^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$
diff -r c1c6706e4162 -r fe50ba40c0b6 tools/firmware/etherboot/Makefile
--- a/tools/firmware/etherboot/Makefile Mon Jul 19 18:56:02 2010 +0100
+++ b/tools/firmware/etherboot/Makefile Tue Jul 20 10:58:04 2010 +0100
@@ -3,6 +3,9 @@ XEN_ROOT = ../../..
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/, $(addsuf
.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 @@ eb-roms.h: 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 -r c1c6706e4162 -r fe50ba40c0b6
tools/firmware/etherboot/gpxe-git-snapshot.tar.gz
Binary file tools/firmware/etherboot/gpxe-git-snapshot.tar.gz has changed
diff -r c1c6706e4162 -r fe50ba40c0b6
tools/firmware/etherboot/patches/Makefile.patch
--- a/tools/firmware/etherboot/patches/Makefile.patch Mon Jul 19 18:56:02
2010 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -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)
diff -r c1c6706e4162 -r fe50ba40c0b6
tools/firmware/etherboot/patches/boot_prompt_option.patch
--- a/tools/firmware/etherboot/patches/boot_prompt_option.patch Mon Jul 19
18:56:02 2010 +0100
+++ b/tools/firmware/etherboot/patches/boot_prompt_option.patch Tue Jul 20
10:58:04 2010 +0100
@@ -1,7 +1,7 @@ diff -pruN a/src/arch/i386/prefix/rompre
-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/rompre
/* 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
+ *
diff -r c1c6706e4162 -r fe50ba40c0b6 tools/firmware/etherboot/patches/series
--- a/tools/firmware/etherboot/patches/series Mon Jul 19 18:56:02 2010 +0100
+++ b/tools/firmware/etherboot/patches/series Tue Jul 20 10:58:04 2010 +0100
@@ -1,2 +1,1 @@ Makefile.patch
-Makefile.patch
boot_prompt_option.patch
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|