From . From 98acae1a6f2c9b2e6014eac4070a817c9d0fd8a2 Mon Sep 17 00:00:00 2001 From: "Bernhard M. Wiedemann" Date: Sun, 23 Jul 2017 07:02:28 +0200 Subject: [PATCH] Allow to override build date 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 uses UTC to be independent of timezone settings. --- Makefile | 2 +- ipath/Makefile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index d79c4bd..99406ef 100644 --- a/Makefile +++ b/Makefile @@ -270,7 +270,7 @@ ${TARGLIB}.so.${MAJOR}: ${TARGLIB}.so.${MAJOR}.${MINOR} # file around. Generate it such that the ident command can find it # and strings -a | grep InfiniPath does a reasonable job as well. ${TARGLIB}.so.${MAJOR}.${MINOR}: ${${TARGLIB}-objs} - date +'char psmi_infinipath_revision[] ="$$""Date: %F %R ${rpm_extra_description}InfiniPath $$";' > ${lib_build_dir}/_revision.c + date -u -d@$${SOURCE_DATE_EPOCH:-$$(date +%s)} +'char psmi_infinipath_revision[] ="$$""Date: %F %R ${rpm_extra_description}InfiniPath $$";' > ${lib_build_dir}/_revision.c $(CC) -c $(BASECFLAGS) $(INCLUDES) _revision.c -o _revision.o $(CC) $(LDFLAGS) -o $@ -Wl,-soname=${TARGLIB}.so.${MAJOR} -shared -Wl,--unique='*fastpath*' \ ${${TARGLIB}-objs} _revision.o -L$(build_dir)/ipath $(LDLIBS) diff --git a/ipath/Makefile b/ipath/Makefile index 8c2cc6e..73abd6f 100644 --- a/ipath/Makefile +++ b/ipath/Makefile @@ -70,7 +70,7 @@ ${TARGLIB}.so.${MAJOR}: ${TARGLIB}.so.${MAJOR}.${MINOR} # file around. Generate it such that the ident command can find it # and strings -a | grep InfiniPath does a reasonable job as well. ${TARGLIB}.so.${MAJOR}.${MINOR}: ${${TARGLIB}-objs} - date +'static __attribute__ ((unused)) char __psc_infinipath_revision[] ="$$""Date: %F %R ${rpm_extra_description}InfiniPath $$";' > _revision.c + date -u -d@$${SOURCE_DATE_EPOCH:-$$(date +%s)} +'static __attribute__ ((unused)) char __psc_infinipath_revision[] ="$$""Date: %F %R ${rpm_extra_description}InfiniPath $$";' > _revision.c $(CC) -c $(BASECFLAGS) $(INCLUDES) _revision.c -o _revision.o $(CC) -o $@ -Wl,-soname=${TARGLIB}.so.${MAJOR} -shared \ -Wl,--unique='*fastpath*' \ eCommit message (Expand)Author 2020-12-15serialization: 'restore-file' sets canonical timestamp and permissions....* guix/serialization.scm (restore-file): Set the permissions and mtime of FILE. * guix/nar.scm (finalize-store-file): Pass #:reset-timestamps? #f to 'register-items'. * tests/nar.scm (rm-rf): Add 'chmod' calls to ensure files are writable. ("write-file + restore-file with symlinks"): Ensure every file in OUTPUT passes 'canonical-file?'. * tests/guix-archive.sh: Run "chmod -R +w" before "rm -rf". Ludovic Courtès 2020-09-28tests: Simplify shell exit status negation;...* tests/guix-archive.sh, tests/guix-build-branch.sh, tests/guix-build.sh, tests/guix-daemon.sh, tests/guix-download.sh, tests/guix-environment.sh, tests/guix-gc.sh, tests/guix-git-authenticate.sh, tests/guix-graph.sh, tests/guix-hash.sh, tests/guix-lint.sh, tests/guix-pack-relocatable.sh, tests/guix-pack.sh, tests/guix-package-aliases.sh, tests/guix-package-net.sh, tests/guix-package.sh: Use the shell '!' keyword to negate command exit status in place of 'if ...; then false; else true; fi' Eric Bavier 2019-12-12guix archive: Add '--list'....* guix/scripts/archive.scm (show-help, %options): Add '--list'. (list-contents): New procedure. (guix-archive): Honor the '--list' option. * tests/guix-archive.sh: Test it. * doc/guix.texi (Invoking guix archive): Document it. Ludovic Courtès