Use a fixed build date in binaries

Author: Antoine Le Gonidec <debian@vv221.fr>

---
--- a/mono/mini/Makefile.am
+++ b/mono/mini/Makefile.am
@@ -236,12 +236,12 @@ mono_sgen_CFLAGS = $(AM_CFLAGS) @CXX_REMOVE_CFLAGS@
 # link was done
 if SUPPORT_BOEHM
 buildver-boehm.h: libmini.la $(monodir)/mono/metadata/libmonoruntime.la
-	@echo "const char *build_date = \"`date`\";" > buildver-boehm.h
+	@echo "const char *build_date = \"`date --utc --date="@$$SOURCE_DATE_EPOCH"`\";" > buildver-boehm.h
 libmain_a-main.$(OBJEXT): buildver-boehm.h
 endif
 
 buildver-sgen.h: libmini.la $(monodir)/mono/metadata/libmonoruntimesgen.la $(monodir)/mono/sgen/libmonosgen.la
-	@echo "const char *build_date = \"`date`\";" > buildver-sgen.h
+	@echo "const char *build_date = \"`date --utc --date="@$$SOURCE_DATE_EPOCH"`\";" > buildver-sgen.h
 
 libmain_a-main-sgen.$(OBJEXT): buildver-sgen.h
 
--- a/mono/mini/Makefile.am.in
+++ b/mono/mini/Makefile.am.in
@@ -236,12 +236,12 @@ mono_sgen_CFLAGS = $(AM_CFLAGS) @CXX_REMOVE_CFLAGS@
 # link was done
 if SUPPORT_BOEHM
 buildver-boehm.h: libmini.la $(monodir)/mono/metadata/libmonoruntime.la
-	@echo "const char *build_date = \"`date`\";" > buildver-boehm.h
+	@echo "const char *build_date = \"`date --utc --date="@$$SOURCE_DATE_EPOCH"`\";" > buildver-boehm.h
 libmain_a-main.$(OBJEXT): buildver-boehm.h
 endif
 
 buildver-sgen.h: libmini.la $(monodir)/mono/metadata/libmonoruntimesgen.la $(monodir)/mono/sgen/libmonosgen.la
-	@echo "const char *build_date = \"`date`\";" > buildver-sgen.h
+	@echo "const char *build_date = \"`date --utc --date="@$$SOURCE_DATE_EPOCH"`\";" > buildver-sgen.h
 
 libmain_a-main-sgen.$(OBJEXT): buildver-sgen.h
 
