[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] Fetch the OVMF repository from specific git mirror and enable it



On Wed, 2012-02-29 at 19:37 +0000, Attilio Rao wrote:
> - Fetch the OVMF parent tree from: http://github.com/tianocore/edk2.git
> - Add a simple Makefile to edk2 that automagically runs the right scripts
>   to build OVMF and setles the resulting binary properly
> 
> Signed-off-by: Attilio Rao <attilio.rao@xxxxxxxxxx>

This looks good to me but we would usually mirror the git tree on
xenbits to avoid consuming 3rd party resources.

Do we want to track upstream's master branch, which would require us to
have a staging->tested push gateway, or have a particular tag which we
update in order to upgrade? In the latter case ideally it would be a
meaningful tag (e.g. a stable release) but if none such exist (which
appears to be the case) then we could just pick some reasonable point in
the development history.

Ian.

> 
> diff -r d7fe4cd831a0 -r 7bdf0747c170 Config.mk
> --- a/Config.mk       Wed Feb 29 17:01:41 2012 +0000
> +++ b/Config.mk       Wed Feb 29 19:37:29 2012 +0000
> @@ -187,12 +187,15 @@ QEMU_REMOTE=git://xenbits.xensource.com/
>  endif
>  
>  ifeq ($(GIT_HTTP),y)
> +OVMF_UPSTREAM_URL ?= http://github.com/tianocore/edk2.git
>  QEMU_UPSTREAM_URL ?= 
> http://xenbits.xen.org/git-http/qemu-upstream-unstable.git
>  SEABIOS_UPSTREAM_URL ?= http://xenbits.xen.org/git-http/seabios.git
>  else
> +OVMF_UPSTREAM_URL ?= git://github.com/tianocore/edk2.git
>  QEMU_UPSTREAM_URL ?= git://xenbits.xen.org/qemu-upstream-unstable.git
>  SEABIOS_UPSTREAM_URL ?= git://xenbits.xen.org/seabios.git
>  endif
> +OVMF_UPSTREAM_REVISION ?= master
>  QEMU_UPSTREAM_REVISION ?= master
>  SEABIOS_UPSTREAM_TAG ?= c69e288adfe6c273df4b1f3d9c223d8a4fb613cd
>  # Wed Feb 8 20:23:36 2012 -0500
> @@ -200,7 +203,7 @@ SEABIOS_UPSTREAM_TAG ?= c69e288adfe6c273
>  
>  ETHERBOOT_NICS ?= rtl8139 8086100e
>  
> -CONFIG_OVMF ?= n
> +CONFIG_OVMF ?= y
>  CONFIG_ROMBIOS ?= y
>  CONFIG_SEABIOS ?= y
>  
> diff -r d7fe4cd831a0 -r 7bdf0747c170 tools/firmware/Makefile
> --- a/tools/firmware/Makefile Wed Feb 29 17:01:41 2012 +0000
> +++ b/tools/firmware/Makefile Wed Feb 29 19:37:29 2012 +0000
> @@ -6,12 +6,17 @@ TARGET      := hvmloader/hvmloader
>  INST_DIR := $(DESTDIR)$(XENFIRMWAREDIR)
>  
>  SUBDIRS-y :=
> +SUBDIRS-$(CONFIG_OVMF) += ovmf
>  SUBDIRS-$(CONFIG_SEABIOS) += seabios-dir
>  SUBDIRS-$(CONFIG_ROMBIOS) += rombios
>  SUBDIRS-$(CONFIG_ROMBIOS) += vgabios
>  SUBDIRS-$(CONFIG_ROMBIOS) += etherboot
>  SUBDIRS-y += hvmloader
>  
> +ovmf:
> +     GIT=$(GIT) $(XEN_ROOT)/scripts/git-checkout.sh $(OVMF_UPSTREAM_URL) 
> $(OVMF_UPSTREAM_REVISION) ovmf
> +     cp ovmf-makefile ovmf/Makefile;
> +
>  seabios-dir:
>       GIT=$(GIT) $(XEN_ROOT)/scripts/git-checkout.sh $(SEABIOS_UPSTREAM_URL) 
> $(SEABIOS_UPSTREAM_TAG) seabios-dir
>       cp seabios-config seabios-dir/.config;
> @@ -44,9 +49,21 @@ distclean: subdirs-distclean
>  subdir-distclean-etherboot: .phony
>       $(MAKE) -C etherboot distclean
>  
> +subdir-distclean-ovmf: .phony
> +     rm -rf ovmf ovmf-remote
> +
>  subdir-distclean-seabios-dir: .phony
>       rm -rf seabios-dir seabios-dir-remote
>  
> +.PHONY: ovmf-force-update
> +ovmf-force-update:
> +     set -ex; \
> +     if [ "$(OVMF_UPSTREAM_REVISION)" ]; then \
> +             cd ovmf-remote; \
> +             $(GIT) fetch origin; \
> +             $(GIT) reset --hard $(OVMF_UPSTREAM_REVISION); \
> +     fi
> +
>  .PHONY: seabios-dir-force-update
>  seabios-dir-force-update:
>       set -ex; \
> diff -r d7fe4cd831a0 -r 7bdf0747c170 tools/firmware/ovmf-makefile
> --- /dev/null Thu Jan 01 00:00:00 1970 +0000
> +++ b/tools/firmware/ovmf-makefile    Wed Feb 29 19:37:29 2012 +0000
> @@ -0,0 +1,17 @@
> +# OVMF building system is not ready yet to run in parallel.
> +# Force it to be serial in order to exploit parallelism for neighbors.
> +
> +.NOTPARALLEL:
> +MAKEFLAGS  += -j1
> +
> +.PHONY: all
> +all: ovmf.bin
> +
> +.PHONY: ovmf.bin
> +ovmf.bin:
> +     OvmfPkg/build.sh -a X64
> +     cp Build/OvmfX64/DEBUG_GCC44/FV/OVMF.fd ovmf.bin
> +
> +.PHONY: clean
> +clean:
> +     rm -rf ovmf.bin Build/*
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxx
> http://lists.xen.org/xen-devel



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.