]> xenbits.xensource.com Git - xen.git/commitdiff
tools/firmware: reproducible seabios build
authorOlaf Hering <olaf@aepfle.de>
Wed, 18 Jul 2018 11:02:38 +0000 (13:02 +0200)
committerWei Liu <wei.liu2@citrix.com>
Wed, 18 Jul 2018 16:32:19 +0000 (17:32 +0100)
The build system of seabios always includes the current time and the
hostname into the resulting binary. To avoid that, it is required to
have a file '.version' in the toplevel directory of seabios-dir-remote.
And it is required to pass EXTRAVERSION= to make because its toplevel
Makefile does not take EXTRAVERSION from environment.

Adjust the code to create a '.version' file with fixed content.
Adjust the code to pass EXTRAVERSION down to make.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Acked-by: Wei Liu <wei.liu2@citrix.com>
tools/firmware/Makefile

index bc84300b693a31c03aa848be10bbccb1416827f6..ed1a1318f6cf6740fe97fccef4e4c892b6729ef8 100644 (file)
@@ -21,6 +21,7 @@ SUBDIRS-y += hvmloader
 
 SEABIOSCC ?= $(CC)
 SEABIOSLD ?= $(LD)
+SEABIOS_EXTRAVERSION ?= "-Xen"
 
 ovmf-dir:
        GIT=$(GIT) $(XEN_ROOT)/scripts/git-checkout.sh $(OVMF_UPSTREAM_URL) $(OVMF_UPSTREAM_REVISION) ovmf-dir
@@ -30,6 +31,8 @@ seabios-dir:
        GIT=$(GIT) $(XEN_ROOT)/scripts/git-checkout.sh $(SEABIOS_UPSTREAM_URL) $(SEABIOS_UPSTREAM_REVISION) seabios-dir
        cp seabios-config seabios-dir/.config;
        $(MAKE) -C seabios-dir olddefconfig CC=$(SEABIOSCC) LD=$(SEABIOSLD)
+       rm -f seabios-dir/.version
+       echo '$(SEABIOS_UPSTREAM_REVISION)' > seabios-dir/.version
 
 .PHONY: all
 all: $(SUBDIRS-y)
@@ -136,4 +139,4 @@ subtree-force-update-all:
        $(MAKE) ovmf-dir-force-update
 
 subdir-all-seabios-dir: seabios-dir
-       $(MAKE) -C $< CC=$(SEABIOSCC) LD=$(SEABIOSLD) PYTHON=$(PYTHON) all;
+       $(MAKE) -C $< CC=$(SEABIOSCC) LD=$(SEABIOSLD) PYTHON=$(PYTHON) EXTRAVERSION=$(SEABIOS_EXTRAVERSION) all;