Skip to content
Snippets Groups Projects
100-build-reproducibly.patch 910 B
Newer Older
--- a/build_tools/make_build_h
+++ b/build_tools/make_build_h
@@ -5,6 +5,14 @@ MACHINE=`uname -m  | sed 's/\\\\/\\\\\\\
 OS=`uname -s`
 USER=`id | awk -F")" '{print $1}'| awk -F"(" '{print $2}' | sed 's/\\\\/\\\\\\\\/g'`
 DATE=`date -u "+%Y-%m-%d %H:%M:%S"`
+if [ -n "${SOURCE_DATE_EPOCH}" ]; then
+	# building reproducibly, faking some data
+	HOSTNAME='buildd.debian.org'
+	KERNEL='unknown'
+	MACHINE='unknown'
+	USER='nobody'
+	DATE=`date -u "+%Y-%m-%d %H:%M:%S" -d @${SOURCE_DATE_EPOCH}`
+fi
 cat << END
 /*
  * build.h
--- a/Makefile
+++ b/Makefile
@@ -464,7 +464,7 @@ doc/core-en_US.xml: makeopts .lastclean
 	@echo "<docs xmlns:xi=\"http://www.w3.org/2001/XInclude\">" >> $@
 	@for x in $(MOD_SUBDIRS); do \
 		printf "$$x " ; \
-		for i in `find $$x -name '*.c'`; do \
+		for i in `find $$x -name '*.c' | LC_ALL=C sort`; do \
 			$(AWK) -f build_tools/get_documentation $$i >> $@ ; \
 		done ; \
 	done