Bug#824183: texlive-bin: please set default value of SOURCE_DATE_EPOCH_TEX_PRIMITIVES to 1
Control: tags -1 + patch
With a proposed patch.
Thanks,
Alexis Bienvenüe.
Description: SOURCE_DATE_EPOCH_TEX_PRIMITIVES defaults to 1
If SOURCE_DATE_EPOCH is set, the tex primitives \year, \month, \day, \time
will be set from its value if SOURCE_DATE_EPOCH_TEX_PRIMITIVES is not set
or if SOURCE_DATE_EPOCH_TEX_PRIMITIVES is set to 1.
This helps to make reproducible builds using only the environment variable
SOURCE_DATE_EPOCH - setting some more *tool-specific* environment variables
from dpkg-buildpackage is not possible.
Author: Alexis Bienvenüe <pado@passoire.fr>
Bug-Debian: https://bugs.debian.org/824183
--- texlive-bin-2016.20160512.41045.orig/texk/web2c/lib/texmfmp.c
+++ texlive-bin-2016.20160512.41045/texk/web2c/lib/texmfmp.c
@@ -2248,7 +2248,14 @@ get_date_and_time (integer *minutes, in
struct tm *tmptr;
#ifndef onlyTeX
string sde_texprim = getenv ("SOURCE_DATE_EPOCH_TEX_PRIMITIVES");
- if (sde_texprim && STREQ (sde_texprim, "1")) {
+ /* warn if they gave an invalid value, empty (null string) ok. */
+ if (sde_texprim && strlen (sde_texprim) > 0
+ && !STREQ (sde_texprim, "0") && !STREQ (sde_texprim, "1")) {
+ WARNING1 ("invalid value (expected 0 or 1) for environment variable $SOURCE_DATE_EPOCH_TEX_PRIMITIVES: %s",
+ sde_texprim);
+ }
+ if (getenv ("SOURCE_DATE_EPOCH") &&
+ !(sde_texprim && STREQ (sde_texprim, "0"))) {
init_start_time ();
tmptr = gmtime (&start_time);
} else
@@ -2258,15 +2265,6 @@ get_date_and_time (integer *minutes, in
use current time. */
time_t myclock = time ((time_t *) 0);
tmptr = localtime (&myclock);
-
-#ifndef onlyTeX
- /* warn if they gave an invalid value, empty (null string) ok. */
- if (sde_texprim && strlen (sde_texprim) > 0
- && !STREQ (sde_texprim, "0")) {
-WARNING1 ("invalid value (expected 0 or 1) for environment variable $SOURCE_DATE_EPOCH_TEX_PRIMITIVES: %s",
- sde_texprim);
- }
-#endif /* not onlyTeX */
}
*minutes = tmptr->tm_hour * 60 + tmptr->tm_min;
--- texlive-bin-2016.20160512.41045.orig/texk/web2c/man/pdftex.man
+++ texlive-bin-2016.20160512.41045/texk/web2c/man/pdftex.man
@@ -380,7 +380,7 @@ timestamps in the PDF output, such as th
This is useful for making reproducible builds.
.TP
.B SOURCE_DATE_EPOCH_TEX_PRIMITIVES
-If set to the value "1", the time-related \*(TX primitives
+If not set to the value "0", the time-related \*(TX primitives
.RI ( \eyear ,
.IR \emonth ,
.IR \eday ,
Reply to: