Source: libjpeg-turbo Severity: normal Version: 1:2.0.5-1.1 Tags: patch User: reproducible-bui...@lists.alioth.debian.org Usertags: timezone X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org
The build date is embedded in various files such as libjpeg.so.62.3.0: libjpeg-turbo·version·2.0.5·(build·20200731) vs. libjpeg-turbo·version·2.0.5·(build·20200801) While CMake respects SOURCE_DATE_EPOCH, it still can produce a different date depending on the timezone of the running system. Applying the attached patch explicitly sets the timezone to UTC and should result in a reproducible build for bullseye: https://tests.reproducible-builds.org/debian/libjpeg-turbo There may be other reproducibility issues caused by changing build path for sid tests that are not addressed by this patch. Thanks for maintaining libjpeg-turbo! live well, vagrant
From 9a7f5e988f982f0e957eb08ad9122388ba376569 Mon Sep 17 00:00:00 2001 From: Vagrant Cascadian <vagr...@reproducible-builds.org> Date: Tue, 18 Aug 2020 18:47:02 +0000 Subject: [PATCH] Add patch to use UTC timestamp to enable reproducible build. --- debian/patches/1001-use-utc-timestamp.patch | 21 +++++++++++++++++++++ debian/patches/series | 1 + 2 files changed, 22 insertions(+) create mode 100644 debian/patches/1001-use-utc-timestamp.patch diff --git a/debian/patches/1001-use-utc-timestamp.patch b/debian/patches/1001-use-utc-timestamp.patch new file mode 100644 index 0000000..e689e4d --- /dev/null +++ b/debian/patches/1001-use-utc-timestamp.patch @@ -0,0 +1,21 @@ +Author: Vagrant Cascadian <vagr...@reproducible-builds.org> +Description: Use UTC timezone for build timestamp + +While CMake respects SOURCE_DATE_EPOCH, it still can produce a +different date depending on the timezone of the running system. + +Specify timezone in UTC to enable a reproducible build. + +Index: libjpeg-turbo/CMakeLists.txt +=================================================================== +--- libjpeg-turbo.orig/CMakeLists.txt ++++ libjpeg-turbo/CMakeLists.txt +@@ -25,7 +25,7 @@ pad_number(VERSION_MINOR 3) + pad_number(VERSION_REVISION 3) + set(LIBJPEG_TURBO_VERSION_NUMBER ${VERSION_MAJOR}${VERSION_MINOR}${VERSION_REVISION}) + +-string(TIMESTAMP DEFAULT_BUILD "%Y%m%d") ++string(TIMESTAMP DEFAULT_BUILD "%Y%m%d" UTC) + set(BUILD ${DEFAULT_BUILD} CACHE STRING "Build string (default: ${DEFAULT_BUILD})") + + # NOTE: On Windows, this does nothing except when using MinGW or Cygwin. diff --git a/debian/patches/series b/debian/patches/series index 281f1c6..c226907 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1 +1,2 @@ +1001-use-utc-timestamp.patch 2001_dont-set-RPATH.patch -- 2.28.0
signature.asc
Description: PGP signature