All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ipxe: update to upstream version
@ 2011-12-20  4:21 Roger Pau Monne
  2011-12-21 15:09 ` Jan Beulich
  0 siblings, 1 reply; 4+ messages in thread
From: Roger Pau Monne @ 2011-12-20  4:21 UTC (permalink / raw)
  To: xen-devel

# HG changeset patch
# User Roger Pau Monne <roger.pau@entel.upc.edu>
# Date 1324354802 -3600
# Node ID d61e6300274bbc6bc464ad340146bd81e91f64f3
# Parent  03138a08366b895d79e143119d4c9c72833cdbcd
ipxe: update to upstream version

Updated ipxe to current tree, which is
540e5960dc6b49eacf367f7c319fd0546474b845:

Provide PXENV_FILE_EXIT_HOOK only for ipxelinux.0 builds

Removed all the backported patches and updated
boot_prompt_option.patch to apply against current ipxe.

Signed-off-by: Roger Pau Monne <roger.pau@entel.upc.edu>

diff -r 03138a08366b -r d61e6300274b tools/firmware/etherboot/Makefile
--- a/tools/firmware/etherboot/Makefile	Fri Dec 09 16:19:36 2011 +0000
+++ b/tools/firmware/etherboot/Makefile	Tue Dec 20 05:20:02 2011 +0100
@@ -10,9 +10,7 @@ else
 IPXE_GIT_URL := git://git.ipxe.org/ipxe.git
 endif
 
-IPXE_GIT_TAG := v1.0.0
-
-IPXE_TARBALL_URL := $(XEN_EXTFILES_URL)/ipxe-git-$(IPXE_GIT_TAG).tar.gz
+IPXE_GIT_TREE := 540e5960dc6b49eacf367f7c319fd0546474b845
 
 D=ipxe
 T=ipxe.tar.gz
@@ -35,12 +33,10 @@ eb-roms.h: Config
 	mv -f $@.new $@
 
 $T:
-	if ! wget -O _$T $(IPXE_TARBALL_URL); then \
-		$(GIT) clone $(IPXE_GIT_URL) $D.git; \
-		(cd $D.git && $(GIT) archive --format=tar --prefix=$D/ \
-		$(IPXE_GIT_TAG) | gzip >../_$T); \
-		rm -rf $D.git; \
-	fi
+	$(GIT) clone $(IPXE_GIT_URL) $D.git; \
+	(cd $D.git && $(GIT) archive --format=tar --prefix=$D/ \
+	$(IPXE_GIT_TREE) | gzip >../_$T); \
+	rm -rf $D.git; \
 	mv _$T $T
 
 $D/src/arch/i386/Makefile: $T Config
diff -r 03138a08366b -r d61e6300274b tools/firmware/etherboot/patches/boot_prompt_option.patch
--- a/tools/firmware/etherboot/patches/boot_prompt_option.patch	Fri Dec 09 16:19:36 2011 +0000
+++ b/tools/firmware/etherboot/patches/boot_prompt_option.patch	Tue Dec 20 05:20:02 2011 +0100
@@ -1,7 +1,8 @@
-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:
+diff --git a/src/arch/i386/prefix/romprefix.S b/src/arch/i386/prefix/romprefix.S
+index 0f92415..cce7505 100644
+--- a/src/arch/i386/prefix/romprefix.S
++++ b/src/arch/i386/prefix/romprefix.S
+@@ -391,6 +391,7 @@ no_pmm:
  	xorw	%di, %di
  	cs rep	movsb
  
@@ -9,15 +10,15 @@ diff -pruN gpxe/src/arch/i386/prefix/rom
  	/* Prompt for POST-time shell */
  	movw	$init_message_prompt, %si
  	xorw	%di, %di
-@@ -484,6 +485,7 @@ no_pmm:
+@@ -418,6 +419,7 @@ no_pmm:
  	pushw	%cs
  	call	exec
- out:
+ 2:
 +#endif
  	/* Restore registers */
  	popw	%gs
  	popw	%fs
-@@ -538,6 +540,7 @@ init_message_no_pmm:
+@@ -546,6 +548,7 @@ init_message_pmm:
  init_message_int19:
  	.asciz	" INT19"
  	.size	init_message_int19, . - init_message_int19
@@ -25,11 +26,11 @@ diff -pruN gpxe/src/arch/i386/prefix/rom
  init_message_prompt:
  	.asciz	"\nPress Ctrl-B to configure "
  	.size	init_message_prompt, . - init_message_prompt
-@@ -547,6 +550,7 @@ init_message_dots:
+@@ -555,6 +558,7 @@ init_message_dots:
  init_message_done:
  	.asciz	"\n\n"
  	.size	init_message_done, . - init_message_done
 +#endif
  
- /* ROM image location
+ /* PCI bus:dev.fn
   *
diff -r 03138a08366b -r d61e6300274b tools/firmware/etherboot/patches/gpxe-git-0edf2405b457
--- a/tools/firmware/etherboot/patches/gpxe-git-0edf2405b457	Fri Dec 09 16:19:36 2011 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,30 +0,0 @@
-commit 0edf2405b457e542c244a72285511b3ff5c06885
-Author: Michael Brown <mcb30@ipxe.org>
-Date:   Tue Apr 27 09:52:22 2010 +0100
-
-    [build] Fix building with binutils 2.16
-    
-    Signed-off-by: Michael Brown <mcb30@ipxe.org>
-    Signed-off-by: Stefan Hajnoczi <stefanha@gmail.com>
-
-diff --git a/src/arch/i386/scripts/i386.lds b/src/arch/i386/scripts/i386.lds
-index 278a397..0ce2c10 100644
---- a/src/arch/i386/scripts/i386.lds
-+++ b/src/arch/i386/scripts/i386.lds
-@@ -24,6 +24,8 @@ SECTIONS {
-      *
-      */
- 
-+    PROVIDE ( _max_align = 16 );
-+
-     /*
-      * The prefix
-      *
-@@ -169,7 +171,6 @@ SECTIONS {
-      *
-      */
- 
--    PROVIDE ( _max_align = 16 );
-     .			= 0;
- 
-     .			= ALIGN ( _max_align );
diff -r 03138a08366b -r d61e6300274b tools/firmware/etherboot/patches/gpxe-git-a803ef3dfeac
--- a/tools/firmware/etherboot/patches/gpxe-git-a803ef3dfeac	Fri Dec 09 16:19:36 2011 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,125 +0,0 @@
-commit a803ef3dfeac4e8aa35810bba65f9ccab0bdf264
-Author: Michael Brown <mcb30@ipxe.org>
-Date:   Thu Jun 24 01:23:00 2010 +0100
-
-    [build] Avoid hard-coding the path to perl
-    
-    The path "/usr/bin/perl" has been hard-coded since Etherboot 5.1, for
-    no discernible reason.  Use just "perl" instead to fix the
-    inconsistency and allow building on systems with Perl installed
-    outside of /usr/bin.
-    
-    This commit also includes a later fix that removes a dependency on
-    "perl" which broke builds from fully clean trees.
-    
-    Reported-by: Gabor Z. Papp <gzp@papp.hu>
-    Signed-off-by: Michael Brown <mcb30@ipxe.org>
-    Signed-off-by: Stefan Hajnoczi <stefanha@gmail.com>
-
-diff -pruN a/src/arch/i386/Makefile.pcbios b/src/arch/i386/Makefile.pcbios
---- a/src/arch/i386/Makefile.pcbios	2010-06-29 20:31:33.000000000 +0100
-+++ b/src/arch/i386/Makefile.pcbios	2010-07-20 16:07:06.000000000 +0100
-@@ -24,11 +24,11 @@ MEDIA		+= raw
- 
- # Padding rules
- #
--PAD_rom		= $(PADIMG) --blksize=512 --byte=0xff $@
-+PAD_rom		= $(PERL) $(PADIMG) --blksize=512 --byte=0xff $@
- PAD_hrom	= $(PAD_rom)
- PAD_xrom	= $(PAD_rom)
--PAD_dsk		= $(PADIMG) --blksize=512 $@
--PAD_hd		= $(PADIMG) --blksize=32768 $@
-+PAD_dsk		= $(PERL) $(PADIMG) --blksize=512 $@
-+PAD_hd		= $(PERL) $(PADIMG) --blksize=32768 $@
- 
- # rule to make a non-emulation ISO boot image
- NON_AUTO_MEDIA	+= iso
-@@ -67,4 +67,4 @@ NON_AUTO_MEDIA	+= usb
- NON_AUTO_MEDIA += pdsk
- %pdsk : %dsk
- 	$(Q)cp $< $@
--	$(Q)$(PADIMG) --blksize=1474560 $@
-+	$(Q)$(PERL) $(PADIMG) --blksize=1474560 $@
-diff -pruN a/src/Makefile b/src/Makefile
---- a/src/Makefile	2010-06-29 20:31:33.000000000 +0100
-+++ b/src/Makefile	2010-07-20 16:02:56.000000000 +0100
-@@ -20,7 +20,7 @@ MKDIR		:= mkdir
- CP		:= cp
- ECHO		:= echo
- PRINTF		:= printf
--PERL		:= /usr/bin/perl
-+PERL		:= perl
- CC		:= $(CROSS_COMPILE)gcc
- CPP		:= $(CC) -E
- AS		:= $(CROSS_COMPILE)as
-@@ -31,12 +31,12 @@ RANLIB		:= $(CROSS_COMPILE)ranlib
- OBJCOPY		:= $(CROSS_COMPILE)objcopy
- NM		:= $(CROSS_COMPILE)nm
- OBJDUMP		:= $(CROSS_COMPILE)objdump
--PARSEROM	:= $(PERL) ./util/parserom.pl
--MAKEROM		:= $(PERL) ./util/makerom.pl
--SYMCHECK	:= $(PERL) ./util/symcheck.pl
--SORTOBJDUMP	:= $(PERL) ./util/sortobjdump.pl
--PADIMG		:= $(PERL) ./util/padimg.pl
--LICENCE		:= $(PERL) ./util/licence.pl
-+PARSEROM	:= ./util/parserom.pl
-+MAKEROM		:= ./util/makerom.pl
-+SYMCHECK	:= ./util/symcheck.pl
-+SORTOBJDUMP	:= ./util/sortobjdump.pl
-+PADIMG		:= ./util/padimg.pl
-+LICENCE		:= ./util/licence.pl
- NRV2B		:= ./util/nrv2b
- ZBIN		:= ./util/zbin
- ELF2EFI32	:= ./util/elf2efi32
-diff -pruN a/src/Makefile.housekeeping b/src/Makefile.housekeeping
---- a/src/Makefile.housekeeping	2010-06-29 20:31:33.000000000 +0100
-+++ b/src/Makefile.housekeeping	2010-07-20 16:04:42.000000000 +0100
-@@ -486,7 +486,7 @@ define src_template
- 		 '\n$(2) : $$($(4)_DEPS)\n' \
- 		 '\nTAGS : $$($(4)_DEPS)\n' \
- 		>> $(2)
--	@$(PARSEROM) $(1) >> $(2)
-+	@$(PERL) $(PARSEROM) $(1) >> $(2)
- 
- endef
- 
-@@ -695,7 +695,7 @@ $(BIN)/%.tmp : $(BLIB) $(MAKEDEPS) $(LDS
- 	$(QM)$(ECHO) "  [LD] $@"
- 	$(Q)$(LD) $(LDFLAGS) -T $(LDSCRIPT) $(TGT_LD_FLAGS) $(BLIB) -o $@ \
- 		-Map $(BIN)/$*.tmp.map
--	$(Q)$(OBJDUMP) -ht $@ | $(SORTOBJDUMP) >> $(BIN)/$*.tmp.map
-+	$(Q)$(OBJDUMP) -ht $@ | $(PERL) $(SORTOBJDUMP) >> $(BIN)/$*.tmp.map
- 
- # Keep intermediate object file (useful for debugging)
- .PRECIOUS : $(BIN)/%.tmp
-@@ -752,7 +752,7 @@ $(BIN)/%.licence : $(BIN)/%.tmp
- 		echo "files are missing a licence declaration:" ;\
- 		echo $(call unlicensed_deps_list,$<);\
- 		exit 1,\
--		$(LICENCE) $(call licence_list,$<))
-+		$(PERL) $(LICENCE) $(call licence_list,$<))
- 
- # Extract compression information from intermediate object file
- #
-@@ -866,10 +866,10 @@ endif # defined(BIN)
- # the automatic build system and varies by target; it includes the
- # "-p 0x1234,0x5678" string to set the PCI IDs.
- #
--FINALISE_rom	= $(MAKEROM) $(MAKEROM_FLAGS) $(TGT_MAKEROM_FLAGS) \
-+FINALISE_rom	= $(PERL) $(MAKEROM) $(MAKEROM_FLAGS) $(TGT_MAKEROM_FLAGS) \
- 		  -i$(IDENT) -s 0 $@
- FINALISE_hrom	= $(FINALISE_rom)
--FINALISE_xrom	= $(MAKEROM) $(MAKEROM_FLAGS) $(TGT_MAKEROM_FLAGS) \
-+FINALISE_xrom	= $(PERL) $(MAKEROM) $(MAKEROM_FLAGS) $(TGT_MAKEROM_FLAGS) \
- 		  -i$(IDENT) -n -s 0 $@
- 
- # Some ROMs require specific flags to be passed to makerom.pl
-@@ -987,7 +987,7 @@ $(SYMTAB) : $(BLIB)
- CLEANUP	+= $(BIN)/symtab
- 
- symcheck : $(SYMTAB)
--	$(SYMCHECK) $<
-+	$(PERL) $(SYMCHECK) $<
- 
- endif # defined(BIN)
- 
diff -r 03138a08366b -r d61e6300274b tools/firmware/etherboot/patches/series
--- a/tools/firmware/etherboot/patches/series	Fri Dec 09 16:19:36 2011 +0000
+++ b/tools/firmware/etherboot/patches/series	Tue Dec 20 05:20:02 2011 +0100
@@ -1,3 +1,1 @@
 boot_prompt_option.patch
-gpxe-git-0edf2405b457
-gpxe-git-a803ef3dfeac

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] ipxe: update to upstream version
  2011-12-20  4:21 [PATCH] ipxe: update to upstream version Roger Pau Monne
@ 2011-12-21 15:09 ` Jan Beulich
  2011-12-21 15:46   ` Roger Pau Monné
  0 siblings, 1 reply; 4+ messages in thread
From: Jan Beulich @ 2011-12-21 15:09 UTC (permalink / raw)
  To: Roger Pau Monne; +Cc: xen-devel

>>> On 20.12.11 at 05:21, Roger Pau Monne <roger.pau@entel.upc.edu> wrote:
> --- a/tools/firmware/etherboot/Makefile	Fri Dec 09 16:19:36 2011 +0000
> +++ b/tools/firmware/etherboot/Makefile	Tue Dec 20 05:20:02 2011 +0100
> @@ -10,9 +10,7 @@ else
>  IPXE_GIT_URL := git://git.ipxe.org/ipxe.git
>  endif
>  
> -IPXE_GIT_TAG := v1.0.0
> -
> -IPXE_TARBALL_URL := $(XEN_EXTFILES_URL)/ipxe-git-$(IPXE_GIT_TAG).tar.gz
> +IPXE_GIT_TREE := 540e5960dc6b49eacf367f7c319fd0546474b845

Is "TREE" really a meaningful name tag here? "COMMIT" would seem
more reasonable to me.

>  
>  D=ipxe
>  T=ipxe.tar.gz
> @@ -35,12 +33,10 @@ eb-roms.h: Config
>  	mv -f $@.new $@
>  
>  $T:
> -	if ! wget -O _$T $(IPXE_TARBALL_URL); then \
> -		$(GIT) clone $(IPXE_GIT_URL) $D.git; \
> -		(cd $D.git && $(GIT) archive --format=tar --prefix=$D/ \
> -		$(IPXE_GIT_TAG) | gzip >../_$T); \
> -		rm -rf $D.git; \
> -	fi
> +	$(GIT) clone $(IPXE_GIT_URL) $D.git; \
> +	(cd $D.git && $(GIT) archive --format=tar --prefix=$D/ \
> +	$(IPXE_GIT_TREE) | gzip >../_$T); \
> +	rm -rf $D.git; \
>  	mv _$T $T
>  
>  $D/src/arch/i386/Makefile: $T Config

Please retain the option to have a tarball, so one can easily point
this to some local file (and not require a functional network, nor
having to tolerate the slowness of the cloning process, nor having
to have git installed everywhere).

Jan

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] ipxe: update to upstream version
  2011-12-21 15:09 ` Jan Beulich
@ 2011-12-21 15:46   ` Roger Pau Monné
  2011-12-21 16:10     ` Jan Beulich
  0 siblings, 1 reply; 4+ messages in thread
From: Roger Pau Monné @ 2011-12-21 15:46 UTC (permalink / raw)
  To: Jan Beulich; +Cc: xen-devel

2011/12/21 Jan Beulich <JBeulich@suse.com>:
>>>> On 20.12.11 at 05:21, Roger Pau Monne <roger.pau@entel.upc.edu> wrote:
>> --- a/tools/firmware/etherboot/Makefile       Fri Dec 09 16:19:36 2011 +0000
>> +++ b/tools/firmware/etherboot/Makefile       Tue Dec 20 05:20:02 2011 +0100
>> @@ -10,9 +10,7 @@ else
>>  IPXE_GIT_URL := git://git.ipxe.org/ipxe.git
>>  endif
>>
>> -IPXE_GIT_TAG := v1.0.0
>> -
>> -IPXE_TARBALL_URL := $(XEN_EXTFILES_URL)/ipxe-git-$(IPXE_GIT_TAG).tar.gz
>> +IPXE_GIT_TREE := 540e5960dc6b49eacf367f7c319fd0546474b845
>
> Is "TREE" really a meaningful name tag here? "COMMIT" would seem
> more reasonable to me.

Well this hash is actually the tree hash, not the commit hash, see:

https://git.ipxe.org/ipxe.git/commit/9a93db3f0947484e30e753bbd61a10b17336e20e

>>
>>  D=ipxe
>>  T=ipxe.tar.gz
>> @@ -35,12 +33,10 @@ eb-roms.h: Config
>>       mv -f $@.new $@
>>
>>  $T:
>> -     if ! wget -O _$T $(IPXE_TARBALL_URL); then \
>> -             $(GIT) clone $(IPXE_GIT_URL) $D.git; \
>> -             (cd $D.git && $(GIT) archive --format=tar --prefix=$D/ \
>> -             $(IPXE_GIT_TAG) | gzip >../_$T); \
>> -             rm -rf $D.git; \
>> -     fi
>> +     $(GIT) clone $(IPXE_GIT_URL) $D.git; \
>> +     (cd $D.git && $(GIT) archive --format=tar --prefix=$D/ \
>> +     $(IPXE_GIT_TREE) | gzip >../_$T); \
>> +     rm -rf $D.git; \
>>       mv _$T $T
>>
>>  $D/src/arch/i386/Makefile: $T Config
>
> Please retain the option to have a tarball, so one can easily point
> this to some local file (and not require a functional network, nor
> having to tolerate the slowness of the cloning process, nor having
> to have git installed everywhere).

This patch retains the option to have a tarball, if it finds a
ipxe.tar.gz, nothing is downloaded.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] ipxe: update to upstream version
  2011-12-21 15:46   ` Roger Pau Monné
@ 2011-12-21 16:10     ` Jan Beulich
  0 siblings, 0 replies; 4+ messages in thread
From: Jan Beulich @ 2011-12-21 16:10 UTC (permalink / raw)
  To: Roger Pau Monné; +Cc: xen-devel

>>> On 21.12.11 at 16:46, Roger Pau Monné<roger.pau@entel.upc.edu> wrote:
> 2011/12/21 Jan Beulich <JBeulich@suse.com>:
>>>>> On 20.12.11 at 05:21, Roger Pau Monne <roger.pau@entel.upc.edu> wrote:
>>> --- a/tools/firmware/etherboot/Makefile       Fri Dec 09 16:19:36 2011 +0000
>>> +++ b/tools/firmware/etherboot/Makefile       Tue Dec 20 05:20:02 2011 +0100
>>> @@ -10,9 +10,7 @@ else
>>>  IPXE_GIT_URL := git://git.ipxe.org/ipxe.git
>>>  endif
>>>
>>> -IPXE_GIT_TAG := v1.0.0
>>> -
>>> -IPXE_TARBALL_URL := $(XEN_EXTFILES_URL)/ipxe-git-$(IPXE_GIT_TAG).tar.gz
>>> +IPXE_GIT_TREE := 540e5960dc6b49eacf367f7c319fd0546474b845
>>
>> Is "TREE" really a meaningful name tag here? "COMMIT" would seem
>> more reasonable to me.
> 
> Well this hash is actually the tree hash, not the commit hash, see:
> 
> https://git.ipxe.org/ipxe.git/commit/9a93db3f0947484e30e753bbd61a10b17336e20e

As the URL says, this is a commit hash. The representation of the tree at
that commit can be obtained by replacing "commit" with "tree", that's
correct, but according to my (admittedly very limited) git knowledge it's
always commits (and maybe a few other things) that get hashes assigned,
never trees.

>>>
>>>  D=ipxe
>>>  T=ipxe.tar.gz
>>> @@ -35,12 +33,10 @@ eb-roms.h: Config
>>>       mv -f $@.new $@
>>>
>>>  $T:
>>> -     if ! wget -O _$T $(IPXE_TARBALL_URL); then \
>>> -             $(GIT) clone $(IPXE_GIT_URL) $D.git; \
>>> -             (cd $D.git && $(GIT) archive --format=tar --prefix=$D/ \
>>> -             $(IPXE_GIT_TAG) | gzip >../_$T); \
>>> -             rm -rf $D.git; \
>>> -     fi
>>> +     $(GIT) clone $(IPXE_GIT_URL) $D.git; \
>>> +     (cd $D.git && $(GIT) archive --format=tar --prefix=$D/ \
>>> +     $(IPXE_GIT_TREE) | gzip >../_$T); \
>>> +     rm -rf $D.git; \
>>>       mv _$T $T
>>>
>>>  $D/src/arch/i386/Makefile: $T Config
>>
>> Please retain the option to have a tarball, so one can easily point
>> this to some local file (and not require a functional network, nor
>> having to tolerate the slowness of the cloning process, nor having
>> to have git installed everywhere).
> 
> This patch retains the option to have a tarball, if it finds a
> ipxe.tar.gz, nothing is downloaded.

Hmm, okay. But the way you modify the logic things will need to be
reverted once a proper tag becomes available in that tree again.
I'd think such switching around shouldn't (going forward at least)
require more than one or two changed lines. Can't you just
set IPXE_GIT_TAG to the commit hash you want, and leave
everything else untouched?

Jan

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2011-12-21 16:10 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-12-20  4:21 [PATCH] ipxe: update to upstream version Roger Pau Monne
2011-12-21 15:09 ` Jan Beulich
2011-12-21 15:46   ` Roger Pau Monné
2011-12-21 16:10     ` Jan Beulich

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.