[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


From: Thien-Thi Nguyen
Subject: Re: INSTALL_DATA += -p
Date: Wed, 04 Nov 2020 18:20:09 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)

() Nick Bowler <>
() Tue, 3 Nov 2020 11:21:51 -0500

   In general, preserving timestamps while copying files cannot
   be done reliably and when it is possible, it is difficult to
   do in a portable fashion.


Right, preservation is not really required.

   > The background reason is that i am installing .scm and .go
   > files (the latter compiled from the former) and the .go
   > files need to have a "later" timestamp than the .scm files
   > for Guile to DTRT.

   "Later" here means "greater than?"  Or is "greater than or
   equal to" acceptable?

I need "greater than or equal", i think (from reading
libguile/load.c func ‘compiled_is_fresh’).

   > I suppose a workaround is to use an installation hook to
   > simply touch(1) the .go files.

   An install hook would be my recommendation.

   You should touch both files, as some "touch" implementations
   truncate timestamps (this means a touched file could
   potentially get an earlier timestamp than an untouched one).

   Touching both files only ensures "greater than or equal to"
   timestamps.  If the timestamps must also be different then
   this is a bit trickier (call touch in a loop until the
   timestamp changes).

Thanks.  I didn't think/know about the (potential) truncation.

Thien-Thi Nguyen -----------------------------------------------
 (defun responsep (query)               ; (2020) Software Libero
   (pcase (context query)               ;       = Dissenso Etico
     (`(technical ,ml) (correctp ml))
     ...))                              748E A0E8 1CB8 A748 9BFA
--------------------------------------- 6CE4 6703 2224 4C80 7502

Attachment: signature.asc
Description: PGP signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]