File reproducible.patch of Package pw3270
https://github.com/PerryWerneck/pw3270/pull/2
Author: Bernhard M. Wiedemann <bwiedemann@suse.de>
Date: Thu Dec 5 18:57:54 2019 +0100
Allow to override build date with SOURCE_DATE_EPOCH
in order to make builds reproducible.
See https://reproducible-builds.org/ for why this is good
and https://reproducible-builds.org/specs/source-date-epoch/
for the definition of this variable.
Also switch to UTC to be independent of timezone.
Note: This date call is designed to work with different flavors
of date (GNU, BSD and others).
If only GNU (Linux) support is needed, the patch can be simplified.
This PR was done while working on reproducible builds for openSUSE.
Index: pw3270-5.2/branding/Makefile.in
===================================================================
--- pw3270-5.2.orig/branding/Makefile.in
+++ pw3270-5.2/branding/Makefile.in
@@ -51,7 +51,7 @@ $(BINDIR)/%.png: \
@echo $@ ...
@$(MKDIR) `dirname $@`
- @$(CONVERT) -background transparent $< $@
+ @$(CONVERT) -strip -background transparent $< $@
@$(OPTIPNG) -o7 $@
$(BINDIR)/%.ico: \
Index: pw3270-5.2/src/libpw3270cpp/Makefile.in
===================================================================
--- pw3270-5.2.orig/src/libpw3270cpp/Makefile.in
+++ pw3270-5.2/src/libpw3270cpp/Makefile.in
@@ -61,6 +61,13 @@ VALGRIND=@VALGRIND@
INSTALL_DATA=@INSTALL_DATA@
INSTALL_PROGRAM=@INSTALL_PROGRAM@
+DATE_FMT = +%Y%m%d
+ifdef SOURCE_DATE_EPOCH
+ BUILD_DATE ?= $(shell date -u -d "@$(SOURCE_DATE_EPOCH)" "$(DATE_FMT)" 2>/dev/null || date -u -r "$(SOURCE_DATE_EPOCH)" "$(DATE_FMT)" 2>/dev/null || date -u "$(DATE_FMT)")
+else
+ BUILD_DATE ?= $(shell date "$(DATE_FMT)")
+endif
+
CFLAGS= \
@CFLAGS@ \
-Wno-deprecated-declarations \
@@ -102,7 +109,7 @@ $(OBJRLS)/%.o: \
@$(MKDIR) `dirname $@`
@$(CC) $(CFLAGS) \
@RLS_CFLAGS@ \
- -DBUILD_DATE=`date +"%Y%m%d"` \
+ -DBUILD_DATE=$(BUILD_DATE) \
-o $@ -c $<
$(POTDIR)/%.pot: %.c