# New Ticket Created by  Jeff Clites 
# Please include the string:  [perl #32245]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org:80/rt3/Ticket/Display.html?id=32245 >


The Makefile uses this in place of the 'touch' command:

        perl -e 'open(A,qq{>>$_}) or die foreach @ARGV'

On Mac OS X at least, this doesn't result in updating the timestamp of 
the passed-in files. (Also, by my reading of the POSIX/SUSv3 spec, this 
is correct behavior--open() isn't supposed to update the timestamp of 
an existing file.)

I wonder if this works on any platform--maybe Win32?

I suggest that the value of TOUCH be configurable, defaulting to the 
'touch' command on Unix-like systems--not sure what to use for other 
systems. Or we could try this, which might work for all systems:

        perl -e '$now = time; open(A,qq{>>$_}) && utime($now, $now, $_) or die 
foreach @ARGV'

I don't know the origin of what we currently have, so I thought I'd 
send this in for comment before supplying a patch.

(I noticed this because the "ast" part of the Makefile was firing for 
me every time.)

JEff

Reply via email to