Re: [bug#61240] [PATCH 2/2] Gracefully degrade if Time::HiRes is not available

Paul Eggert <[email protected]>
Newsgroups gmane.comp.sysutils.autoconf.general
Organization UCLA Computer Science Department
Message-ID <[email protected]>
On 2023-02-07 21:29, Jacob Bachmeyer wrote:
> use Exporter;
> -use Time::HiRes qw(stat);
> use IO::File;
> 
> +# use sub-second resolution timestamps if available,
> +# carry on with one-second resolution timestamps if that is all we have
> +BEGIN { eval { require Time::HiRes; import Time::HiRes qw(stat) } }

Thanks for looking into this. Sorry about the long delay.

My memory was jogged by the recent Autoconf release candidate, which 
requires Perl 5.10 for what I think is the same reason 
<https://lists.gnu.org/r/autoconf/2023-03/msg00020.html>. This release 
candidate didn't build on my Solaris 10 server because Solaris 10 has 
only Perl 5.8.4. Of course I can work around this by also installing a 
recent Perl but that is a bit of a pain. I'll cc this email to 
[email protected] to give them a heads-up about <https://bugs.gnu.org/61240>.

It'd be nice (though not crucial) if we could get to the bottom of this 
for Automake and to sync the result to Autoconf before the new Autoconf 
release comes out, so that Solaris 10 users of the new Autoconf need to 
install only recent GNU M4, and not also a recent Perl.

To get back to the proposed patch quoted above:

Why change from "use Time::HiRes qw(stat);" to "require Time::HiRes; 
import Time::HiRes qw(stat)"? (Again, please bear in mind that my Perl 
is quite rusty.)

The code formerly had "use File::stat;" before it changed to "use 
Time::HiRes qw(stat);". Why doesn't the proposed patch need to fall back 
to "use File::stat;" on older Perls lacking Time::HiRes?

Thanks again for any advice you can provide.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.