unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: perl: Fix autosplitting of 0-time source.
@ 2015-09-10  8:48 ericbavier
  2015-09-10 15:46 ` Ludovic Courtès
  0 siblings, 1 reply; 3+ messages in thread
From: ericbavier @ 2015-09-10  8:48 UTC (permalink / raw)
  To: guix-devel; +Cc: Eric Bavier

From: Eric Bavier <bavier@member.fsf.org>

* gnu/packages/patches/perl-autosplit-default-time.patch: New patch.
* gnu/packages/perl.scm (perl): Use it.
* gnu-system.am (dist_patch_DATA): Add it.
---
 gnu-system.am                                          |  1 +
 gnu/packages/patches/perl-autosplit-default-time.patch | 15 +++++++++++++++
 gnu/packages/perl.scm                                  |  1 +
 3 files changed, 17 insertions(+)
 create mode 100644 gnu/packages/patches/perl-autosplit-default-time.patch

diff --git a/gnu-system.am b/gnu-system.am
index 749d744..40a5841 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -574,6 +574,7 @@ dist_patch_DATA =						\
   gnu/packages/patches/patchelf-rework-for-arm.patch		\
   gnu/packages/patches/patchutils-xfail-gendiff-tests.patch	\
   gnu/packages/patches/patch-hurd-path-max.patch		\
+  gnu/packages/patches/perl-autosplit-default-time.patch	\
   gnu/packages/patches/perl-gd-options-passthrough-and-fontconfig.patch \
   gnu/packages/patches/perl-module-pluggable-search.patch	\
   gnu/packages/patches/perl-net-amazon-s3-moose-warning.patch	\
diff --git a/gnu/packages/patches/perl-autosplit-default-time.patch b/gnu/packages/patches/perl-autosplit-default-time.patch
new file mode 100644
index 0000000..e801ac9
--- /dev/null
+++ b/gnu/packages/patches/perl-autosplit-default-time.patch
@@ -0,0 +1,15 @@
+AutoSplit will fail to create an index for files whose modification time is 0
+because its default time for a non-existent index is 1.  Set this default time
+to -1 instead.
+
+--- perl-5.16.1/cpan/AutoLoader/lib/AutoSplit.pm.orig	2012-02-14 22:44:36.000000000 -0600
++++ perl-5.16.1/cpan/AutoLoader/lib/AutoSplit.pm	2015-09-09 19:59:22.208708921 -0500
+@@ -361,7 +361,7 @@
+     my($al_idx_file) = catfile($autodir, $modpname, $IndexFile);
+ 
+     if ($check_mod_time){
+-	my($al_ts_time) = (stat("$al_idx_file"))[9] || 1;
++	my($al_ts_time) = (stat("$al_idx_file"))[9] || -1;
+ 	if ($al_ts_time >= $pm_mod_time and
+ 	    $al_ts_time >= $self_mod_time){
+ 	    print "AutoSplit skipped ($al_idx_file newer than $filename)\n"
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index f784798..d5015fd 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -47,6 +47,7 @@
                "15qxzba3a50c9nik5ydgyfp62x7h9vxxn12yd1jgl93hb1wj96km"))
              (patches (map search-patch
                            '("perl-no-sys-dirs.patch"
+                             "perl-autosplit-default-time.patch"
                              "perl-module-pluggable-search.patch")))))
     (build-system gnu-build-system)
     (arguments
-- 
2.4.3

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] gnu: perl: Fix autosplitting of 0-time source.
  2015-09-10  8:48 [PATCH] gnu: perl: Fix autosplitting of 0-time source ericbavier
@ 2015-09-10 15:46 ` Ludovic Courtès
  2015-09-10 17:13   ` Eric Bavier
  0 siblings, 1 reply; 3+ messages in thread
From: Ludovic Courtès @ 2015-09-10 15:46 UTC (permalink / raw)
  To: ericbavier; +Cc: guix-devel, Eric Bavier

ericbavier@openmailbox.org skribis:

> From: Eric Bavier <bavier@member.fsf.org>
>
> * gnu/packages/patches/perl-autosplit-default-time.patch: New patch.
> * gnu/packages/perl.scm (perl): Use it.
> * gnu-system.am (dist_patch_DATA): Add it.

Good catch, OK for ‘core-updates’.  (It’s the 2nd case where we see
assumptions about the range of an mtime.)

> +AutoSplit will fail to create an index for files whose modification time is 0
> +because its default time for a non-existent index is 1.  Set this default time
> +to -1 instead.

What is the index used for?

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] gnu: perl: Fix autosplitting of 0-time source.
  2015-09-10 15:46 ` Ludovic Courtès
@ 2015-09-10 17:13   ` Eric Bavier
  0 siblings, 0 replies; 3+ messages in thread
From: Eric Bavier @ 2015-09-10 17:13 UTC (permalink / raw)
  To: ludo; +Cc: guix-devel

On 2015-09-10 10:46, ludo@gnu.org wrote:
> ericbavier@openmailbox.org skribis:
> 
>> From: Eric Bavier <bavier@member.fsf.org>
>> 
>> * gnu/packages/patches/perl-autosplit-default-time.patch: New patch.
>> * gnu/packages/perl.scm (perl): Use it.
>> * gnu-system.am (dist_patch_DATA): Add it.
> 
> Good catch, OK for ‘core-updates’.  (It’s the 2nd case where we see
> assumptions about the range of an mtime.)

Ok, will push to 'core-updates'.

>> +AutoSplit will fail to create an index for files whose modification 
>> time is 0
>> +because its default time for a non-existent index is 1.  Set this 
>> default time
>> +to -1 instead.
> 
> What is the index used for?

AutoSplit uses the 'autosplit.ix' index files to catalog the file 
locations of split functions, as well as a timestamp on the last time 
the module was split, as far as I understand.  The AutoLoader module 
looks for these indices and emits a non-fatal but nonetheless 
scary-looking warning of their non-existence at runtime, which is what 
alerted me to the issue.

`~Eric

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-09-10 17:14 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-09-10  8:48 [PATCH] gnu: perl: Fix autosplitting of 0-time source ericbavier
2015-09-10 15:46 ` Ludovic Courtès
2015-09-10 17:13   ` Eric Bavier

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).