To allow reproducible builds of hvmloader introduce a make variable SMBIOS_REL_DATE=mm/dd/yyyy to provide a fixed date string. Without this change the hvmloader binary changes with every rebuild.
Signed-off-by: Olaf Hering <o...@aepfle.de> Acked-by: Jan Beulich <jbeul...@suse.com> Cc: Keir Fraser <k...@xen.org> Cc: Jan Beulich <jbeul...@suse.com> Cc: Andrew Cooper <andrew.coop...@citrix.com> Cc: Ian Jackson <ian.jack...@eu.citrix.com> Cc: Stefano Stabellini <stefano.stabell...@eu.citrix.com> Cc: Ian Campbell <ian.campb...@citrix.com> Cc: Wei Liu <wei.l...@citrix.com> --- INSTALL | 1 + tools/firmware/hvmloader/Makefile | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/INSTALL b/INSTALL index 1ed44bb..bf412ef 100644 --- a/INSTALL +++ b/INSTALL @@ -216,6 +216,7 @@ into the binaries. To allow reproducible builds the following variables can be used to provide fixed timestamps in the expected format. XEN_BUILD_DATE=<output of date(1)> XEN_BUILD_TIME=hh:mm:ss +SMBIOS_REL_DATE=mm/dd/yyyy The following variables can be used to tweak some aspects of the hypervisor build. diff --git a/tools/firmware/hvmloader/Makefile b/tools/firmware/hvmloader/Makefile index cf967fd..34008d2 100644 --- a/tools/firmware/hvmloader/Makefile +++ b/tools/firmware/hvmloader/Makefile @@ -26,6 +26,9 @@ SUBDIRS := acpi # The HVM loader is started in 32-bit mode at the address below: LOADADDR = 0x100000 +# SMBIOS spec requires format mm/dd/yyyy +SMBIOS_REL_DATE ?= $(shell date +%m/%d/%Y) + CFLAGS += $(CFLAGS_xeninclude) OBJS = hvmloader.o mp_tables.o util.o smbios.o @@ -88,7 +91,7 @@ all: subdirs-all $(MAKE) hvmloader ovmf.o rombios.o seabios.o hvmloader.o: roms.inc -smbios.o: CFLAGS += -D__SMBIOS_DATE__="\"$(shell date +%m/%d/%Y)\"" +smbios.o: CFLAGS += -D__SMBIOS_DATE__="$(SMBIOS_REL_DATE)" hvmloader: $(OBJS) acpi/acpi.a $(LD) $(LDFLAGS_DIRECT) -N -Ttext $(LOADADDR) -o hvmloader.tmp $^ _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel