Source: blitz++
Severity: normal
Tags: patch
User: reproducible-bui...@lists.alioth.debian.org
Usertags: timestamps
X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org

The file /usr/include/blitz/gnu/bzconfig.h contains an embedded timestamp:

  
https://tests.reproducible-builds.org/debian/rb-pkg/buster/amd64/diffoscope-results/blitz++.html

  421 #define·BZ__config_date·"Sun·Dec··6·02:21:14·-12·2020"·   421 
#define·BZ__config_date·"Sun·Jan··9·11:08:27·+14·2022"·


The attached patch fixes this by patching to use the SOURCE_DATE_EPOCH
environment variable to set the value for DATE.

  https://reproducible-builds.org/docs/source-date-epoch/

The patch relies on gnu date extensions/syntax (--utc, --date) and may
need further work to make it portable across multiple date
implementations for upstream.


Thanks for maintaining blitz++


live well,
  vagrant

From 15a9ee2e96ae41bceb9b7aba4e90f5209d34355f Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagr...@reproducible-builds.org>
Date: Wed, 9 Dec 2020 21:36:25 +0000
Subject: [PATCH 1/2] debian/patches: Patch to use SOURCE_DATE_EPOCH to set
 DATE.

https://reproducible-builds.org/docs/source-date-epoch/
---
 ...ng-SOURCE_DATE_EPOCH-in-m4-ac_check_.patch | 30 +++++++++++++++++++
 debian/patches/series                         |  1 +
 2 files changed, 31 insertions(+)
 create mode 100644 debian/patches/Specify-DATE-using-SOURCE_DATE_EPOCH-in-m4-ac_check_.patch

diff --git a/debian/patches/Specify-DATE-using-SOURCE_DATE_EPOCH-in-m4-ac_check_.patch b/debian/patches/Specify-DATE-using-SOURCE_DATE_EPOCH-in-m4-ac_check_.patch
new file mode 100644
index 0000000..d49c49c
--- /dev/null
+++ b/debian/patches/Specify-DATE-using-SOURCE_DATE_EPOCH-in-m4-ac_check_.patch
@@ -0,0 +1,30 @@
+From 2175a0ad78db56f50f22a0483f6e249ecf17e14c Mon Sep 17 00:00:00 2001
+From: Vagrant Cascadian <vagr...@reproducible-builds.org>
+Date: Wed, 9 Dec 2020 21:25:18 +0000
+Subject: [PATCH 1/2] Specify DATE using SOURCE_DATE_EPOCH in
+ m4/ac_check_cxx_features.m4 for reproducible timestamp.
+
+This uses the gnu date features of --date and --utc, so may not be
+widely portable.
+
+https://reproducible-builds.org/docs/source-date-epoch/
+---
+ m4/ac_check_cxx_features.m4 | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/m4/ac_check_cxx_features.m4 b/m4/ac_check_cxx_features.m4
+index abd6916..3a8a274 100644
+--- a/m4/ac_check_cxx_features.m4
++++ b/m4/ac_check_cxx_features.m4
+@@ -9,7 +9,7 @@ C++ compiler ($CXX $CXXFLAGS $LDFLAGS) characteristics
+ 
+ OS=`uname -a`
+ AC_SUBST(OS)
+-DATE=`date`
++DATE=`LC_ALL=C date --utc --date=@$SOURCE_DATE_EPOCH`
+ AC_SUBST(DATE)
+ 
+ AH_TOP([
+-- 
+2.29.2
+
diff --git a/debian/patches/series b/debian/patches/series
index 24132a8..b37ff35 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -4,3 +4,4 @@ debianization.patch
 debianization-python.patch
 debianization-examples.patch
 debianization-examples-neutralization.patch
+Specify-DATE-using-SOURCE_DATE_EPOCH-in-m4-ac_check_.patch
-- 
2.29.2

Attachment: signature.asc
Description: PGP signature

Reply via email to