Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 15 Sep 2016 17:30:02 +0000 (UTC)
From:      Ed Maste <emaste@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   svn commit: r305845 - in stable/11/sys/boot/efi: boot1 loader
Message-ID:  <201609151730.u8FHU2Wi081886@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: emaste
Date: Thu Sep 15 17:30:01 2016
New Revision: 305845
URL: https://svnweb.freebsd.org/changeset/base/305845

Log:
  MFC r305160: Set UEFI boot loader PE/COFF timestamps to known value for reproducible builds
  
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/11/sys/boot/efi/boot1/Makefile
  stable/11/sys/boot/efi/loader/Makefile
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/boot/efi/boot1/Makefile
==============================================================================
--- stable/11/sys/boot/efi/boot1/Makefile	Thu Sep 15 17:28:03 2016	(r305844)
+++ stable/11/sys/boot/efi/boot1/Makefile	Thu Sep 15 17:30:01 2016	(r305845)
@@ -84,11 +84,15 @@ EFI_TARGET=	efi-app-ia32
 EFI_TARGET=	binary
 .endif
 
+# Arbitrarily set the PE/COFF header timestamps to 1 Jan 2016 00:00:00
+# for build reproducibility.
+SOURCE_DATE_EPOCH?=1451606400
 boot1.efi: ${PROG}
 	if ${NM} ${.ALLSRC} | grep ' U '; then \
 		echo "Undefined symbols in ${.ALLSRC}"; \
 		exit 1; \
 	fi
+	SOURCE_DATE_EPOCH=${SOURCE_DATE_EPOCH} \
 	${OBJCOPY} -j .peheader -j .text -j .sdata -j .data \
 		-j .dynamic -j .dynsym -j .rel.dyn \
 		-j .rela.dyn -j .reloc -j .eh_frame \

Modified: stable/11/sys/boot/efi/loader/Makefile
==============================================================================
--- stable/11/sys/boot/efi/loader/Makefile	Thu Sep 15 17:28:03 2016	(r305844)
+++ stable/11/sys/boot/efi/loader/Makefile	Thu Sep 15 17:30:01 2016	(r305845)
@@ -128,11 +128,15 @@ EFI_TARGET=	efi-app-ia32
 EFI_TARGET=	binary
 .endif
 
+# Arbitrarily set the PE/COFF header timestamps to 1 Jan 2016 00:00:00
+# for build reproducibility.
+SOURCE_DATE_EPOCH?=1451606400
 loader.efi: ${PROG}
 	if ${NM} ${.ALLSRC} | grep ' U '; then \
 		echo "Undefined symbols in ${.ALLSRC}"; \
 		exit 1; \
 	fi
+	SOURCE_DATE_EPOCH=${SOURCE_DATE_EPOCH} \
 	${OBJCOPY} -j .peheader -j .text -j .sdata -j .data \
 		-j .dynamic -j .dynsym -j .rel.dyn \
 		-j .rela.dyn -j .reloc -j .eh_frame -j set_Xcommand_set \



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201609151730.u8FHU2Wi081886>