Am 31.07.2019 um 20:39 teilte Norbert Preining mit: Hi Norbert,
> But hard-coded rewriting of the actual creating time is wrong. We > need to do something similar to what pdftex/luatex/xetex/... does. If > the variable is set it provides a datetime that should be used > instead of the actual time. > > You can look into the first patch by looking at the texlive-bin > repository with > git show c832647f4d1fe579fd4eb46ff8b505030b5124db > OK, next offer attached. The SOURCE_DATE_EPOCH is now regarded and verbatim copied into the "%%CreationDate:", when it is set. 1. I don't check content of SOURCE_DATE_EPOCH 2. Not sure if "%%CreationDate: 1265974891" is valid Postscript If we need to convert that into human readable string anybody has to implement it. Sorry, I'm not a C programmer. H. -- sigfault #206401 http://counter.li.org
Index: texlive-bin/texk/web2c/mplibdir/psout.w =================================================================== --- texlive-bin.orig/texk/web2c/mplibdir/psout.w 2019-07-31 23:59:05.712816442 +0200 +++ texlive-bin/texk/web2c/mplibdir/psout.w 2019-08-01 00:00:43.476816442 +0200 @@ -5035,6 +5035,7 @@ void mp_print_initial_comment(MP mp,mp_edge_object *hh, int prologues) { int t; /* scaled */ char *s; + char *source_date_epoch; mp_ps_print(mp, "%!PS"); if ( prologues>0 ) mp_ps_print(mp, "-Adobe-3.0 EPSF-3.0"); @@ -5055,10 +5056,15 @@ mp_ps_pair_out(mp, hh->minx,hh->miny); mp_ps_pair_out(mp, hh->maxx,hh->maxy); } + source_date_epoch = getenv("SOURCE_DATE_EPOCH"); mp_ps_print_nl(mp, "%%Creator: MetaPost "); s = mp_metapost_version(); mp_ps_print(mp, s); mp_xfree(s); + if(source_date_epoch) { + mp_ps_print_nl(mp, "%%CreationDate: "); + mp_ps_do_print(mp, source_date_epoch, strlen(source_date_epoch)); + } else { mp_ps_print_nl(mp, "%%CreationDate: "); mp_ps_print_int(mp, round_unscaled(internal_value(mp_year))); mp_ps_print_char(mp, '.'); @@ -5069,6 +5075,7 @@ t = round_unscaled(internal_value(mp_time)); mp_ps_print_dd(mp, t / 60); mp_ps_print_dd(mp, t % 60); + } mp_ps_print_nl(mp, "%%Pages: 1"); }
signature.asc
Description: OpenPGP digital signature