* [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 external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.