summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/perl/perl-5.20.0/debian/fixes
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/perl/perl-5.20.0/debian/fixes')
-rw-r--r--meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/document_makemaker_ccflags.diff31
-rw-r--r--meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/memoize_storable_nstore.diff110
-rw-r--r--meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/net_smtp_docs.diff25
-rw-r--r--meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/respect_umask.diff153
4 files changed, 319 insertions, 0 deletions
diff --git a/meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/document_makemaker_ccflags.diff b/meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/document_makemaker_ccflags.diff
new file mode 100644
index 0000000000..f4050c01f4
--- /dev/null
+++ b/meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/document_makemaker_ccflags.diff
@@ -0,0 +1,31 @@
1From c7ffe0cc3105cb627fbbb7d0c7dbb53f1f236a17 Mon Sep 17 00:00:00 2001
2From: Niko Tyni <ntyni@debian.org>
3Date: Mon, 30 May 2011 22:54:24 +0300
4Subject: Document that CCFLAGS should include $Config{ccflags}
5
6Bug: https://rt.cpan.org/Public/Bug/Display.html?id=68613
7Bug-Debian: http://bugs.debian.org/628522
8
9Compiling XS extensions without $Config{ccflags} can break the
10binary interface on some platforms.
11
12Patch-Name: fixes/document_makemaker_ccflags.diff
13---
14 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm | 4 ++++
15 1 file changed, 4 insertions(+)
16
17diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
18index d2fabf6..fabb021 100644
19--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
20+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
21@@ -1716,6 +1716,10 @@ currently used by MakeMaker but may be handy in Makefile.PLs.
22 String that will be included in the compiler call command line between
23 the arguments INC and OPTIMIZE.
24
25+The default value is taken from $Config{ccflags}. When overriding
26+CCFLAGS, make sure to include the $Config{ccflags} settings to avoid
27+binary incompatibilities.
28+
29 =item CONFIG
30
31 Arrayref. E.g. [qw(archname manext)] defines ARCHNAME & MANEXT from
diff --git a/meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/memoize_storable_nstore.diff b/meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/memoize_storable_nstore.diff
new file mode 100644
index 0000000000..b9d61c713e
--- /dev/null
+++ b/meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/memoize_storable_nstore.diff
@@ -0,0 +1,110 @@
1From 8b7b31d6b2368717514a05dc0e968c1357511733 Mon Sep 17 00:00:00 2001
2From: Jonathan Nieder <jrnieder@gmail.com>
3Date: Fri, 27 Jul 2012 10:35:07 -0500
4Subject: Memoize::Storable: respect 'nstore' option not respected
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9Memoize(3perl) says:
10
11 tie my %cache => 'Memoize::Storable', $filename, 'nstore';
12 memoize 'function', SCALAR_CACHE => [HASH => \%cache];
13
14 Include the ‘nstore’ option to have the "Storable" database
15 written in ‘network order’. (See Storable for more details
16 about this.)
17
18In fact the "nstore" option does no such thing. Option parsing looks
19like this:
20
21 @options{@_} = ();
22
23$self->{OPTIONS}{'nstore'} is accordingly set to undef. Later
24Memoize::Storable checks if the option is true, and since undef is
25not true, the "else" branch is always taken.
26
27 if ($self->{OPTIONS}{'nstore'}) {
28 Storable::nstore($self->{H}, $self->{FILENAME});
29 } else {
30 Storable::store($self->{H}, $self->{FILENAME});
31 }
32
33Correcting the condition to (exists $self->{OPTIONS}{'nstore'}) fixes
34it.
35
36Noticed because git-svn, which uses the 'nstore' option for its
37on-disk caches, was producing
38
39 Byte order is not compatible at ../../lib/Storable.pm
40
41when run using a perl with a different integer size (and hence
42byteorder).
43
44Reported by Tim Retout (RT#77790)
45
46Bug-Debian: http://bugs.debian.org/587650
47Bug: https://rt.cpan.org/Public/Bug/Display.html?id=77790
48Forwarded: https://rt.cpan.org/Public/Bug/Display.html?id=77790
49Patch-Name: fixes/memoize_storable_nstore.diff
50---
51 cpan/Memoize/Memoize/Storable.pm | 2 +-
52 cpan/Memoize/t/tie_storable.t | 24 ++++++++++++++++++++----
53 2 files changed, 21 insertions(+), 5 deletions(-)
54
55diff --git a/cpan/Memoize/Memoize/Storable.pm b/cpan/Memoize/Memoize/Storable.pm
56index 1314797..87876f2 100644
57--- a/cpan/Memoize/Memoize/Storable.pm
58+++ b/cpan/Memoize/Memoize/Storable.pm
59@@ -55,7 +55,7 @@ sub DESTROY {
60 require Carp if $Verbose;
61 my $self= shift;
62 print STDERR "Memoize::Storable::DESTROY(@_)\n" if $Verbose;
63- if ($self->{OPTIONS}{'nstore'}) {
64+ if (exists $self->{OPTIONS}{'nstore'}) {
65 Storable::nstore($self->{H}, $self->{FILENAME});
66 } else {
67 Storable::store($self->{H}, $self->{FILENAME});
68diff --git a/cpan/Memoize/t/tie_storable.t b/cpan/Memoize/t/tie_storable.t
69index de3b8dc..a624238 100644
70--- a/cpan/Memoize/t/tie_storable.t
71+++ b/cpan/Memoize/t/tie_storable.t
72@@ -31,18 +31,34 @@ if ($@) {
73 exit 0;
74 }
75
76-print "1..4\n";
77+print "1..9\n";
78
79 $file = "storable$$";
80 1 while unlink $file;
81 tryout('Memoize::Storable', $file, 1); # Test 1..4
82 1 while unlink $file;
83+tryout('Memoize::Storable', $file, 5, 'nstore'); # Test 5..8
84+assert_netorder($file, 9); # Test 9
85+1 while unlink $file;
86+
87+
88+sub assert_netorder {
89+ my ($file, $testno) = @_;
90+
91+ my $netorder = Storable::file_magic($file)->{'netorder'};
92+ print ($netorder ? "ok $testno\n" : "not ok $testno\n");
93+}
94
95 sub tryout {
96- my ($tiepack, $file, $testno) = @_;
97+ my ($tiepack, $file, $testno, $option) = @_;
98
99- tie my %cache => $tiepack, $file
100- or die $!;
101+ if (defined $option) {
102+ tie my %cache => $tiepack, $file, $option
103+ or die $!;
104+ } else {
105+ tie my %cache => $tiepack, $file
106+ or die $!;
107+ }
108
109 memoize 'c5',
110 SCALAR_CACHE => [HASH => \%cache],
diff --git a/meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/net_smtp_docs.diff b/meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/net_smtp_docs.diff
new file mode 100644
index 0000000000..b7ccc5757c
--- /dev/null
+++ b/meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/net_smtp_docs.diff
@@ -0,0 +1,25 @@
1From e2e1127a521d942bd9aea4c1290cdf46c15c35fd Mon Sep 17 00:00:00 2001
2From: Brendan O'Dea <bod@debian.org>
3Date: Thu, 20 Sep 2007 19:47:14 +1000
4Subject: Document the Net::SMTP 'Port' option
5
6Bug-Debian: http://bugs.debian.org/100195
7Bug: http://rt.cpan.org/Public/Bug/Display.html?id=36038
8
9Patch-Name: fixes/net_smtp_docs.diff
10---
11 cpan/libnet/Net/SMTP.pm | 1 +
12 1 file changed, 1 insertion(+)
13
14diff --git a/cpan/libnet/Net/SMTP.pm b/cpan/libnet/Net/SMTP.pm
15index 705b5c5..17c1d21 100644
16--- a/cpan/libnet/Net/SMTP.pm
17+++ b/cpan/libnet/Net/SMTP.pm
18@@ -637,6 +637,7 @@ Net::SMTP will attempt to extract the address from the value passed.
19
20 B<Debug> - Enable debugging information
21
22+B<Port> - Select a port on the remote host to connect to (default is 25)
23
24 Example:
25
diff --git a/meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/respect_umask.diff b/meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/respect_umask.diff
new file mode 100644
index 0000000000..e5f116abd4
--- /dev/null
+++ b/meta/recipes-devtools/perl/perl-5.20.0/debian/fixes/respect_umask.diff
@@ -0,0 +1,153 @@
1From f290a5ebd91e89d63b2a1958420f53e22d20c4ee Mon Sep 17 00:00:00 2001
2From: Brendan O'Dea <bod@debian.org>
3Date: Tue, 8 Mar 2005 19:30:38 +1100
4Subject: Respect umask during installation
5
6This is needed to satisfy Debian policy regarding group-writable
7site directories.
8
9Patch-Name: fixes/respect_umask.diff
10---
11 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 18 +++++++++---------
12 dist/ExtUtils-Install/lib/ExtUtils/Install.pm | 18 +++++++++---------
13 2 files changed, 18 insertions(+), 18 deletions(-)
14
15diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
16index 4140432..8fdb67c 100644
17--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
18+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
19@@ -2075,7 +2075,7 @@ doc__install : doc_site_install
20 $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site
21
22 pure_perl_install :: all
23- $(NOECHO) $(MOD_INSTALL) \
24+ $(NOECHO) umask 022; $(MOD_INSTALL) \
25 };
26
27 push @m,
28@@ -2095,7 +2095,7 @@ q{ $(INST_LIB) $(DESTINSTALLPRIVLIB) \
29
30
31 pure_site_install :: all
32- $(NOECHO) $(MOD_INSTALL) \
33+ $(NOECHO) umask 022; $(MOD_INSTALL) \
34 };
35 push @m,
36 q{ read }.$self->catfile('$(SITEARCHEXP)','auto','$(FULLEXT)','.packlist').q{ \
37@@ -2113,7 +2113,7 @@ q{ $(INST_LIB) $(DESTINSTALLSITELIB) \
38 }.$self->catdir('$(PERL_ARCHLIB)','auto','$(FULLEXT)').q{
39
40 pure_vendor_install :: all
41- $(NOECHO) $(MOD_INSTALL) \
42+ $(NOECHO) umask 022; $(MOD_INSTALL) \
43 };
44 push @m,
45 q{ read }.$self->catfile('$(VENDORARCHEXP)','auto','$(FULLEXT)','.packlist').q{ \
46@@ -2145,8 +2145,8 @@ doc_vendor_install :: all
47 push @m, q{
48 doc_perl_install :: all
49 $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod
50- -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB)
51- -$(NOECHO) $(DOC_INSTALL) \
52+ -$(NOECHO) umask 022; $(MKPATH) $(DESTINSTALLARCHLIB)
53+ -$(NOECHO) umask 022; $(DOC_INSTALL) \
54 "Module" "$(NAME)" \
55 "installed into" "$(INSTALLPRIVLIB)" \
56 LINKTYPE "$(LINKTYPE)" \
57@@ -2156,8 +2156,8 @@ doc_perl_install :: all
58
59 doc_site_install :: all
60 $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod
61- -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB)
62- -$(NOECHO) $(DOC_INSTALL) \
63+ -$(NOECHO) umask 022; $(MKPATH) $(DESTINSTALLARCHLIB)
64+ -$(NOECHO) umask 022; $(DOC_INSTALL) \
65 "Module" "$(NAME)" \
66 "installed into" "$(INSTALLSITELIB)" \
67 LINKTYPE "$(LINKTYPE)" \
68@@ -2167,8 +2167,8 @@ doc_site_install :: all
69
70 doc_vendor_install :: all
71 $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod
72- -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB)
73- -$(NOECHO) $(DOC_INSTALL) \
74+ -$(NOECHO) umask 022; $(MKPATH) $(DESTINSTALLARCHLIB)
75+ -$(NOECHO) umask 022; $(DOC_INSTALL) \
76 "Module" "$(NAME)" \
77 "installed into" "$(INSTALLVENDORLIB)" \
78 LINKTYPE "$(LINKTYPE)" \
79diff --git a/dist/ExtUtils-Install/lib/ExtUtils/Install.pm b/dist/ExtUtils-Install/lib/ExtUtils/Install.pm
80index eec57aa..06cc530 100644
81--- a/dist/ExtUtils-Install/lib/ExtUtils/Install.pm
82+++ b/dist/ExtUtils-Install/lib/ExtUtils/Install.pm
83@@ -450,7 +450,7 @@ sub _can_write_dir {
84
85 =pod
86
87-=item _mkpath($dir,$show,$mode,$verbose,$dry_run)
88+=item _mkpath($dir,$show,$verbose,$dry_run)
89
90 Wrapper around File::Path::mkpath() to handle errors.
91
92@@ -467,13 +467,13 @@ writable.
93 =cut
94
95 sub _mkpath {
96- my ($dir,$show,$mode,$verbose,$dry_run)=@_;
97+ my ($dir,$show,$verbose,$dry_run)=@_;
98 if ( $verbose && $verbose > 1 && ! -d $dir) {
99 $show= 1;
100- printf "mkpath(%s,%d,%#o)\n", $dir, $show, $mode;
101+ printf "mkpath(%s,%d)\n", $dir, $show;
102 }
103 if (!$dry_run) {
104- if ( ! eval { File::Path::mkpath($dir,$show,$mode); 1 } ) {
105+ if ( ! eval { File::Path::mkpath($dir,$show); 1 } ) {
106 _choke("Can't create '$dir'","$@");
107 }
108
109@@ -782,7 +782,7 @@ sub install { #XXX OS-SPECIFIC
110 _chdir($cwd);
111 }
112 foreach my $targetdir (sort keys %check_dirs) {
113- _mkpath( $targetdir, 0, 0755, $verbose, $dry_run );
114+ _mkpath( $targetdir, 0, $verbose, $dry_run );
115 }
116 foreach my $found (@found_files) {
117 my ($diff, $ffd, $origfile, $mode, $size, $atime, $mtime,
118@@ -796,7 +796,7 @@ sub install { #XXX OS-SPECIFIC
119 $targetfile= _unlink_or_rename( $targetfile, 'tryhard', 'install' )
120 unless $dry_run;
121 } elsif ( ! -d $targetdir ) {
122- _mkpath( $targetdir, 0, 0755, $verbose, $dry_run );
123+ _mkpath( $targetdir, 0, $verbose, $dry_run );
124 }
125 print "Installing $targetfile\n";
126
127@@ -836,7 +836,7 @@ sub install { #XXX OS-SPECIFIC
128
129 if ($pack{'write'}) {
130 $dir = install_rooted_dir(dirname($pack{'write'}));
131- _mkpath( $dir, 0, 0755, $verbose, $dry_run );
132+ _mkpath( $dir, 0, $verbose, $dry_run );
133 print "Writing $pack{'write'}\n" if $verbose;
134 $packlist->write(install_rooted_file($pack{'write'})) unless $dry_run;
135 }
136@@ -1176,7 +1176,7 @@ be prepended as a directory to each installed file (and directory).
137 sub pm_to_blib {
138 my($fromto,$autodir,$pm_filter) = @_;
139
140- _mkpath($autodir,0,0755);
141+ _mkpath($autodir,0);
142 while(my($from, $to) = each %$fromto) {
143 if( -f $to && -s $from == -s $to && -M $to < -M $from ) {
144 print "Skip $to (unchanged)\n";
145@@ -1199,7 +1199,7 @@ sub pm_to_blib {
146 # we wont try hard here. its too likely to mess things up.
147 forceunlink($to);
148 } else {
149- _mkpath(dirname($to),0,0755);
150+ _mkpath(dirname($to),0);
151 }
152 if ($need_filtering) {
153 run_filter($pm_filter, $from, $to);