Accepting request 19992 from devel:languages:perl

Copy from devel:languages:perl/perl based on submit request 19992 from user coolo

OBS-URL: https://build.opensuse.org/request/show/19992
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/perl?expand=0&rev=31
This commit is contained in:
OBS User autobuild 2009-09-06 10:05:42 +00:00 committed by Git OBS Bridge
parent af3050af97
commit 73f4c6db03
15 changed files with 392 additions and 236 deletions

70
perl-5.10.0-regexp.diff Normal file
View File

@ -0,0 +1,70 @@
Change 33324 by demerphq@demerphq-gemini on 2008/02/17 15:39:22
Fix perlbug 50114 and document what the code does a bit better
Affected files ...
... //depot/perl/regcomp.c#650 edit
... //depot/perl/t/op/re_tests#129 edit
Differences ...
==== //depot/perl/regcomp.c#650 (text) ====
--- regcomp.c.orig
+++ regcomp.c
@@ -4462,7 +4462,17 @@
regnode *first= scan;
regnode *first_next= regnext(first);
- /* Skip introductions and multiplicators >= 1. */
+ /*
+ * Skip introductions and multiplicators >= 1
+ * so that we can extract the 'meat' of the pattern that must
+ * match in the large if() sequence following.
+ * NOTE that EXACT is NOT covered here, as it is normally
+ * picked up by the optimiser separately.
+ *
+ * This is unfortunate as the optimiser isnt handling lookahead
+ * properly currently.
+ *
+ */
while ((OP(first) == OPEN && (sawopen = 1)) ||
/* An OR of *one* alternative - should not happen now. */
(OP(first) == BRANCH && OP(first_next) != BRANCH) ||
@@ -4474,16 +4484,17 @@
(PL_regkind[OP(first)] == CURLY && ARG1(first) > 0) ||
(OP(first) == NOTHING && PL_regkind[OP(first_next)] != END ))
{
-
+ /*
+ * the only op that could be a regnode is PLUS, all the rest
+ * will be regnode_1 or regnode_2.
+ *
+ */
if (OP(first) == PLUS)
sawplus = 1;
else
first += regarglen[OP(first)];
- if (OP(first) == IFMATCH) {
- first = NEXTOPER(first);
- first += EXTRA_STEP_2ARGS;
- } else /* XXX possible optimisation for /(?=)/ */
- first = NEXTOPER(first);
+
+ first = NEXTOPER(first);
first_next= regnext(first);
}
==== //depot/perl/t/op/re_tests#129 (text) ====
--- t/op/re_tests.orig
+++ t/op/re_tests
@@ -1341,3 +1341,6 @@
.*\z foo\n y - -
^(?:(\d)x)?\d$ 1 y ${\(defined($1)?1:0)} 0
.*?(?:(\w)|(\w))x abx y $1-$2 b-
+
+0{50} 000000000000000000000000000000000000000000000000000 y - -
+

20
perl-5.10.0-warn.diff Normal file
View File

@ -0,0 +1,20 @@
--- Configure
+++ Configure
@@ -10860,7 +10860,7 @@
va_start(args, n);
exit((unsigned long)vsprintf(buf,"%s",args) > 10L);
}
-int main() { xxx(1, "foo"); }
+int main() { xxx(1, "foo"); return 0; }
#else /* I_VARARGS */
@@ -10872,7 +10872,7 @@
va_start(args);
exit((unsigned long)vsprintf(buf,"%s",args) > 10L);
}
-int main() { xxx("foo"); }
+int main() { xxx("foo"); return 0; }
#endif

View File

@ -1,6 +1,6 @@
--- ./Configure.orig 2009-08-18 19:03:53.000000000 +0000
+++ ./Configure 2009-09-04 07:02:18.000000000 +0000
@@ -109,7 +109,7 @@ paths="$paths /usr/5bin /etc /usr/gnu/bi
--- ./Configure.orig 2007-12-18 10:47:07.000000000 +0000
+++ ./Configure 2008-01-07 09:33:53.000000000 +0000
@@ -110,7 +110,7 @@ paths="$paths /usr/5bin /etc /usr/gnu/bi
paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin"
paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb"
paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /opt/ansic/bin /usr/ccs/bin"
@ -9,7 +9,7 @@
paths="$paths /sbin /usr/sbin /usr/libexec"
paths="$paths /system/gnu_library/bin"
@@ -1307,7 +1307,7 @@ loclibpth="/usr/local/lib /opt/local/lib
@@ -1277,7 +1277,7 @@ loclibpth="/usr/local/lib /opt/local/lib
loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib"
: general looking path for locating libraries
@ -18,7 +18,7 @@
glibpth="$glibpth /usr/ccs/lib /usr/ucblib /usr/local/lib"
test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth"
test -f /shlib/libc.so && glibpth="/shlib $glibpth"
@@ -2366,7 +2366,7 @@ uname
@@ -2340,7 +2340,7 @@ uname
zip
"
pth=`echo $PATH | sed -e "s/$p_/ /g"`
@ -27,25 +27,7 @@
for file in $loclist; do
eval xxx=\$$file
case "$xxx" in
@@ -11173,7 +11173,7 @@ void xxx(int n, ...)
va_start(args, n);
exit((unsigned long)vsprintf(buf,"%s",args) > 10L);
}
-int main() { xxx(1, "foo"); }
+int main() { xxx(1, "foo"); return 0; }
#else /* I_VARARGS */
@@ -11185,7 +11185,7 @@ va_dcl
va_start(args);
exit((unsigned long)vsprintf(buf,"%s",args) > 10L);
}
-int main() { xxx("foo"); }
+int main() { xxx("foo"); return 0; }
#endif
@@ -18908,14 +18908,20 @@ int main(int argc, char *argv[])
@@ -18439,14 +18439,20 @@ int main(int argc, char *argv[])
}
EOCP
set try
@ -66,7 +48,7 @@
i_db=$undef
case " $libs " in
*"-ldb "*)
@@ -18958,7 +18964,7 @@ int main()
@@ -18489,7 +18495,7 @@ int main()
}
#endif
EOCP
@ -75,7 +57,7 @@
if $contains warning try.out >>/dev/null 2>&1 ; then
db_hashtype='int'
else
@@ -19003,7 +19009,7 @@ int main()
@@ -18534,7 +18540,7 @@ int main()
}
#endif
EOCP
@ -84,7 +66,7 @@
if $contains warning try.out >>/dev/null 2>&1 ; then
db_prefixtype='int'
else
@@ -22973,7 +22979,7 @@ passcat='$passcat'
@@ -22313,7 +22319,7 @@ passcat='$passcat'
patchlevel='$patchlevel'
path_sep='$path_sep'
perl5='$perl5'
@ -93,8 +75,8 @@
perl_patchlevel='$perl_patchlevel'
perladmin='$perladmin'
perllibs='$perllibs'
--- ./SuSE/SuSEconfig.perl.orig 2009-09-04 07:01:37.000000000 +0000
+++ ./SuSE/SuSEconfig.perl 2009-09-04 07:01:37.000000000 +0000
--- ./SuSE/SuSEconfig.perl.orig 2008-01-07 09:33:53.000000000 +0000
+++ ./SuSE/SuSEconfig.perl 2008-01-07 09:33:53.000000000 +0000
@@ -0,0 +1,76 @@
+#! /bin/bash
+#
@ -172,8 +154,8 @@
+#
+# end of file SuSEconfig.perl
+#
--- ./SuSE/perllocal.SuSE.orig 2009-09-04 07:01:37.000000000 +0000
+++ ./SuSE/perllocal.SuSE 2009-09-04 07:01:37.000000000 +0000
--- ./SuSE/perllocal.SuSE.orig 2008-01-07 09:33:53.000000000 +0000
+++ ./SuSE/perllocal.SuSE 2008-01-07 09:33:53.000000000 +0000
@@ -0,0 +1,84 @@
+#!/usr/bin/perl
+# Copyright (c) 1998 S.u.S.E. Gmbh Fuerth, Germany. All rights reserved.
@ -259,8 +241,8 @@
+ print "SuSEconfig.perl: Can't write to file $Config{'installarchlib'}/perllocal.pod !\n\n";
+}
+
--- ./SuSE/sysconfig.suseconfig-perl.orig 2009-09-04 07:01:37.000000000 +0000
+++ ./SuSE/sysconfig.suseconfig-perl 2009-09-04 07:01:37.000000000 +0000
--- ./SuSE/sysconfig.suseconfig-perl.orig 2008-01-07 09:33:53.000000000 +0000
+++ ./SuSE/sysconfig.suseconfig-perl 2008-01-07 09:33:53.000000000 +0000
@@ -0,0 +1,8 @@
+## Path: System/SuSEconfig
+## Type: yesno
@ -270,8 +252,8 @@
+# May SuSEconfig modify your perllocal.pod? (yes/no)
+#
+CREATE_PERLLOCAL_POD="yes"
--- ./ext/Compress-Raw-Zlib/config.in.orig 2009-04-14 18:20:34.000000000 +0000
+++ ./ext/Compress-Raw-Zlib/config.in 2009-09-04 07:01:37.000000000 +0000
--- ./ext/Compress/Raw/Zlib/config.in.orig 2007-12-18 10:47:07.000000000 +0000
+++ ./ext/Compress/Raw/Zlib/config.in 2008-01-07 17:07:58.000000000 +0000
@@ -16,9 +16,9 @@
# Setting the Gzip OS Code
#
@ -285,8 +267,8 @@
OLD_ZLIB = False
GZIP_OS_CODE = AUTO_DETECT
--- ./ext/DynaLoader/hints/linux.pl.orig 2009-02-12 22:58:11.000000000 +0000
+++ ./ext/DynaLoader/hints/linux.pl 2009-09-04 07:01:37.000000000 +0000
--- ./ext/DynaLoader/hints/linux.pl.orig 2007-12-18 10:47:07.000000000 +0000
+++ ./ext/DynaLoader/hints/linux.pl 2008-01-07 09:33:53.000000000 +0000
@@ -2,4 +2,7 @@
# Some Linux releases like to hide their <nlist.h>
$self->{CCFLAGS} = $Config{ccflags} . ' -I/usr/include/libelf'
@ -295,8 +277,8 @@
+# module, so add cccdlflags if we're going for a shared libperl
+$self->{CCFLAGS} = ($self->{CCFLAGS} || $Config{ccflags}) . " $Config{cccdlflags}" if $Config{'useshrplib'} eq 'true';
1;
--- ./ext/Encode/bin/enc2xs.orig 2009-04-12 17:18:06.000000000 +0000
+++ ./ext/Encode/bin/enc2xs 2009-09-04 07:01:37.000000000 +0000
--- ./ext/Encode/bin/enc2xs.orig 2007-12-18 10:47:07.000000000 +0000
+++ ./ext/Encode/bin/enc2xs 2008-01-18 14:28:14.000000000 +0000
@@ -1005,13 +1005,13 @@ sub make_configlocal_pm {
$LocalMod{$enc} ||= $mod;
}
@ -313,29 +295,29 @@
$_LocalVer = _mkversion();
$_E2X = find_e2x();
$_Inc = $INC{"Encode.pm"};
--- ./ext/NDBM_File/Makefile.PL.orig 2009-04-19 17:02:38.000000000 +0000
+++ ./ext/NDBM_File/Makefile.PL 2009-09-04 07:01:37.000000000 +0000
@@ -2,6 +2,7 @@ use ExtUtils::MakeMaker;
--- ./ext/NDBM_File/Makefile.PL.orig 2007-12-18 10:47:07.000000000 +0000
+++ ./ext/NDBM_File/Makefile.PL 2008-01-07 09:45:05.000000000 +0000
@@ -10,6 +10,7 @@ if($Config{i_gdbm} && $Config{i_gdbm} eq
WriteMakefile(
NAME => 'NDBM_File',
LIBS => ["-L/usr/local/lib -lndbm", "-ldbm -lucb"],
+ CCFLAGS => '-I/usr/include/db1 -Dbool=char -DHAS_BOOL',
DEFINE => $define,
MAN3PODS => {}, # Pods will be built by installman.
XSPROTOARG => '-noprototypes', # XXX remove later?
VERSION_FROM => 'NDBM_File.pm',
INC => ($^O eq "MacOS" ? "-i ::::db:include" : "")
--- ./ext/ODBM_File/Makefile.PL.orig 2009-04-19 17:02:38.000000000 +0000
+++ ./ext/ODBM_File/Makefile.PL 2009-09-04 07:01:37.000000000 +0000
--- ./ext/ODBM_File/Makefile.PL.orig 2007-12-18 10:47:07.000000000 +0000
+++ ./ext/ODBM_File/Makefile.PL 2008-01-07 09:34:08.000000000 +0000
@@ -1,7 +1,7 @@
use ExtUtils::MakeMaker;
WriteMakefile(
NAME => 'ODBM_File',
- LIBS => ["-ldbm -lucb"],
+ LIBS => ["-lgdbm -lucb"],
MAN3PODS => {}, # Pods will be built by installman.
XSPROTOARG => '-noprototypes', # XXX remove later?
VERSION_FROM => 'ODBM_File.pm',
);
--- ./ext/ODBM_File/hints/linux.pl.orig 2009-02-12 22:58:12.000000000 +0000
+++ ./ext/ODBM_File/hints/linux.pl 2009-09-04 07:01:37.000000000 +0000
--- ./ext/ODBM_File/hints/linux.pl.orig 2007-12-18 10:47:07.000000000 +0000
+++ ./ext/ODBM_File/hints/linux.pl 2008-01-07 09:34:08.000000000 +0000
@@ -1,5 +1,5 @@
# uses GDBM dbm compatibility feature - at least on SuSE 8.0
-$self->{LIBS} = ['-lgdbm'];
@ -343,9 +325,9 @@
# Debian/Ubuntu have /usr/lib/libgdbm_compat.so.3* but not this file,
# so linking may fail
--- ./ext/Sys-Syslog/t/syslog.t.orig 2009-06-10 16:53:46.000000000 +0000
+++ ./ext/Sys-Syslog/t/syslog.t 2009-09-04 07:01:37.000000000 +0000
@@ -213,6 +213,7 @@ SKIP: {
--- ./ext/Sys/Syslog/t/syslog.t.orig 2007-12-18 10:47:07.000000000 +0000
+++ ./ext/Sys/Syslog/t/syslog.t 2008-01-07 11:49:53.000000000 +0000
@@ -201,6 +201,7 @@ SKIP: {
}
}
else {
@ -353,9 +335,9 @@
ok( $r, "setlogsock() should return true: '$r'" );
}
--- ./hints/linux.sh.orig 2009-02-12 22:58:12.000000000 +0000
+++ ./hints/linux.sh 2009-09-04 07:01:37.000000000 +0000
@@ -50,12 +50,14 @@ ignore_versioned_solibs='y'
--- ./hints/linux.sh.orig 2007-12-18 10:47:07.000000000 +0000
+++ ./hints/linux.sh 2008-01-07 09:34:08.000000000 +0000
@@ -50,7 +50,9 @@ ignore_versioned_solibs='y'
# BSD compatibility library no longer needed
# 'kaffe' has a /usr/lib/libnet.so which is not at all relevant for perl.
# bind causes issues with several reentrant functions
@ -366,13 +348,7 @@
shift
libswanted="$*"
# Debian 4.0 puts ndbm in the -lgdbm_compat library.
-libswanted="$libswanted gdbm_compat"
+#libswanted="$libswanted gdbm_compat"
# If you have glibc, then report the version for ./myconfig bug reporting.
# (Configure doesn't need to know the specific version since it just uses
@@ -63,7 +65,18 @@ libswanted="$libswanted gdbm_compat"
@@ -60,7 +62,18 @@ libswanted="$*"
# We don't use __GLIBC__ and __GLIBC_MINOR__ because they
# are insufficiently precise to distinguish things like
# libc-2.0.6 and libc-2.0.7.
@ -392,7 +368,7 @@
libc=`ls -l /lib/libc.so.6 | awk '{print $NF}'`
libc=/lib/$libc
fi
@@ -143,9 +156,14 @@ case "$optimize" in
@@ -130,9 +143,14 @@ case "$optimize" in
esac
;;
esac
@ -407,7 +383,7 @@
# Are we using ELF? Thanks to Kenneth Albanowski <kjahds@kjahds.com>
# for this test.
cat >try.c <<'EOM'
@@ -230,6 +248,29 @@ EOM
@@ -217,6 +235,29 @@ EOM
esac
fi
@ -437,7 +413,7 @@
rm -f try.c a.out
if /bin/sh -c exit; then
@@ -279,6 +320,9 @@ else
@@ -266,6 +307,9 @@ else
echo "Couldn't find tcsh. Csh-based globbing might be broken."
fi
fi
@ -447,7 +423,7 @@
# Shimpei Yamashita <shimpei@socrates.patnet.caltech.edu>
# Message-Id: <33EF1634.B36B6500@pobox.com>
@@ -357,6 +401,8 @@ $define|true|[yY]*)
@@ -344,6 +388,8 @@ $define|true|[yY]*)
d_localtime_r_proto="$define"
d_random_r_proto="$define"
@ -456,18 +432,18 @@
;;
esac
EOCBU
--- ./installperl.orig 2009-08-13 22:40:10.000000000 +0000
+++ ./installperl 2009-09-04 07:01:37.000000000 +0000
@@ -235,7 +235,7 @@ if ($Is_VMS) { # Hang in there until Fi
--- ./installperl.orig 2007-12-18 10:47:07.000000000 +0000
+++ ./installperl 2008-01-07 09:34:08.000000000 +0000
@@ -249,7 +249,7 @@ if ($Is_VMS) { # Hang in there until Fi
# Do some quick sanity checks.
-if (!$opts{notify} && $d_dosuid && $>) { die "You must run as root to install suidperl\n"; }
+#if (!$opts{notify} && $d_dosuid && $>) { die "You must run as root to install suidperl\n"; }
-if (!$nonono && $d_dosuid && $>) { die "You must run as root to install suidperl\n"; }
+# if (!$nonono && $d_dosuid && $>) { die "You must run as root to install suidperl\n"; }
$installbin || die "No installbin directory in config.sh\n";
-d $installbin || mkpath($installbin, $opts{verbose}, 0777);
@@ -344,7 +344,11 @@ else {
-d $installbin || mkpath($installbin, $verbose, 0777);
@@ -361,7 +361,11 @@ else {
safe_unlink("$installbin/s$perl_verbase$ver$exe_ext");
if ($d_dosuid) {
copy("suidperl$exe_ext", "$installbin/s$perl_verbase$ver$exe_ext");
@ -480,52 +456,8 @@
}
# Install library files.
--- ./lib/CGI/Fast.pm.orig 2009-02-12 22:58:12.000000000 +0000
+++ ./lib/CGI/Fast.pm 2009-09-04 07:01:37.000000000 +0000
@@ -19,6 +19,9 @@ use CGI;
use FCGI;
@ISA = ('CGI');
+# FCGI is missing from the perl distri
+our $RPM_Ignore_Requires = "perl(FCGI)";
+
# workaround for known bug in libfcgi
while (($ignore) = each %ENV) { }
--- ./lib/CPAN.pm.orig 2009-06-27 21:21:54.000000000 +0000
+++ ./lib/CPAN.pm 2009-09-04 07:01:37.000000000 +0000
@@ -64,7 +64,7 @@ sub _uniq;
no lib ".";
-require Mac::BuildTools if $^O eq 'MacOS';
+#require Mac::BuildTools if $^O eq 'MacOS';
if ($ENV{PERL5_CPAN_IS_RUNNING} && $$ != $ENV{PERL5_CPAN_IS_RUNNING}) {
$ENV{PERL5_CPAN_IS_RUNNING_IN_RECURSION} ||= $ENV{PERL5_CPAN_IS_RUNNING};
my @rec = _uniq split(/,/, $ENV{PERL5_CPAN_IS_RUNNING_IN_RECURSION}), $$;
--- ./lib/CPANPLUS/Internals/Constants/Report.pm.orig 2009-05-03 23:51:10.000000000 +0000
+++ ./lib/CPANPLUS/Internals/Constants/Report.pm 2009-09-04 07:01:37.000000000 +0000
@@ -236,6 +236,8 @@ Thanks! :-)
.
};
+our $RPM_Ignore_Requires = "perl(Your::Module::Here)";
+
use constant REPORT_MISSING_TESTS
=> sub {
return << ".";
--- ./lib/Carp/Heavy.pm.orig 2009-02-12 22:58:13.000000000 +0000
+++ ./lib/Carp/Heavy.pm 2009-09-04 07:01:37.000000000 +0000
@@ -30,6 +30,7 @@ $CarpInternal{warnings}++;
$Internal{Exporter}++;
$Internal{'Exporter::Heavy'}++;
+our $RPM_Ignore_Requires = "perl(Carp::Heavy)";
our ($CarpLevel, $MaxArgNums, $MaxEvalLen, $MaxArgLen, $Verbose);
--- ./lib/ExtUtils/Packlist.pm.orig 2009-02-12 22:58:13.000000000 +0000
+++ ./lib/ExtUtils/Packlist.pm 2009-09-04 07:01:37.000000000 +0000
--- ./lib/ExtUtils/Packlist.pm.orig 2007-12-18 10:47:07.000000000 +0000
+++ ./lib/ExtUtils/Packlist.pm 2008-01-07 09:34:08.000000000 +0000
@@ -202,8 +202,11 @@ foreach my $key (sort(keys(%{$self->{dat
{
if (! -e $key)
@ -540,42 +472,9 @@
}
}
return(@missing);
--- ./lib/File/Spec/VMS.pm.orig 2009-05-10 23:30:12.000000000 +0000
+++ ./lib/File/Spec/VMS.pm 2009-09-04 07:01:37.000000000 +0000
@@ -12,6 +12,8 @@ $VERSION = eval $VERSION;
use File::Basename;
use VMS::Filespec;
+our $RPM_Ignore_Requires = "perl(VMS::Filespec)";
+
=head1 NAME
File::Spec::VMS - methods for VMS file specs
--- ./lib/File/Temp.pm.orig 2009-06-30 13:13:54.000000000 +0000
+++ ./lib/File/Temp.pm 2009-09-04 07:01:37.000000000 +0000
@@ -146,7 +146,7 @@ use File::Path qw/ rmtree /;
use Fcntl 1.03;
use IO::Seekable; # For SEEK_*
use Errno;
-require VMS::Stdio if $^O eq 'VMS';
+#require VMS::Stdio if $^O eq 'VMS';
# pre-emptively load Carp::Heavy. If we don't when we run out of file
# handles and attempt to call croak() we get an error message telling
--- ./lib/Net/Config.pm.orig 2009-02-12 22:58:14.000000000 +0000
+++ ./lib/Net/Config.pm 2009-09-04 07:01:37.000000000 +0000
@@ -37,7 +37,7 @@ eval { local $SIG{__DIE__}; require Net:
# Try to get as much configuration info as possible from InternetConfig
#
$^O eq 'MacOS' and eval <<TRY_INTERNET_CONFIG;
-use Mac::InternetConfig;
+#use Mac::InternetConfig;
{
my %nc = (
--- ./lib/perl5db.pl.orig 2009-07-25 22:36:07.000000000 +0000
+++ ./lib/perl5db.pl 2009-09-04 07:01:37.000000000 +0000
@@ -3396,6 +3396,8 @@ reading another.
--- ./lib/perl5db.pl.orig 2007-12-18 10:47:07.000000000 +0000
+++ ./lib/perl5db.pl 2008-01-07 09:34:12.000000000 +0000
@@ -3386,6 +3386,8 @@ reading another.
open( OUT, ">&STDOUT" ) # XXX: lost message
|| &warn("Can't restore DB::OUT");
}
@ -584,7 +483,7 @@
next CMD;
} ## end unless ($piped = open(OUT,...
@@ -3520,6 +3522,8 @@ our standard filehandles for input and o
@@ -3510,6 +3512,8 @@ our standard filehandles for input and o
# if necessary,
close(SAVEOUT);
select($selected), $selected = "" unless $selected eq "";
@ -593,8 +492,8 @@
# No pipes now.
$piped = "";
--- ./lib/unicore/mktables.orig 2009-04-12 20:56:19.000000000 +0000
+++ ./lib/unicore/mktables 2009-09-04 07:01:37.000000000 +0000
--- ./lib/unicore/mktables.orig 2007-12-18 10:47:07.000000000 +0000
+++ ./lib/unicore/mktables 2008-01-07 09:34:12.000000000 +0000
@@ -149,7 +149,7 @@ foreach my $lib ('To', 'lib',
map {File::Spec->catdir("lib",$_)}
qw(gc_sc dt bc hst ea jt lb nt ccc)) {
@ -603,10 +502,10 @@
+ mkdir $lib, 0755 or $! =~ /exists/i or die "mkdir '$lib': $!";
}
my $LastUnicodeCodepoint = 0x10FFFF; # As of Unicode 5.1.
--- ./locale.c.orig 2009-03-19 19:56:24.000000000 +0000
+++ ./locale.c 2009-09-04 07:01:37.000000000 +0000
@@ -357,9 +357,15 @@ Perl_init_i18nl10n(pTHX_ int printwarn)
my $LastUnicodeCodepoint = 0x10FFFF; # As of Unicode 3.1.1.
--- ./locale.c.orig 2007-12-18 10:47:08.000000000 +0000
+++ ./locale.c 2008-01-07 09:52:47.000000000 +0000
@@ -350,9 +350,15 @@ Perl_init_i18nl10n(pTHX_ int printwarn)
if (setlocale_failure) {
char *p;
@ -622,21 +521,21 @@
if (locwarn) {
#ifdef LC_ALL
--- ./t/TEST.orig 2009-08-04 22:06:15.000000000 +0000
+++ ./t/TEST 2009-09-04 07:01:37.000000000 +0000
@@ -156,6 +156,7 @@ unless (@ARGV) {
next if $skip{$flat_extension}; # Foo/Bar may live in Foo-Bar
--- ./t/TEST.orig 2007-12-18 10:47:08.000000000 +0000
+++ ./t/TEST 2008-01-07 09:34:12.000000000 +0000
@@ -153,6 +153,7 @@ unless (@ARGV) {
next if $skip{$extension};
}
my $path = File::Spec->catfile($updir, $t);
+ next unless -e $path;
push @ARGV, $path;
$::path_to_name{$path} = $t;
}
--- ./t/harness.orig 2009-04-19 16:47:00.000000000 +0000
+++ ./t/harness 2009-09-04 07:01:37.000000000 +0000
@@ -199,7 +199,8 @@ if (@ARGV) {
$flat_extension =~ s!-!/!g;
next if $skip{$flat_extension}; # Foo/Bar may live in Foo-Bar
--- ./t/harness.orig 2007-12-18 10:47:08.000000000 +0000
+++ ./t/harness 2008-01-07 09:39:13.000000000 +0000
@@ -107,7 +107,8 @@ if (@ARGV) {
# XXX Do I want to warn that I'm skipping these?
next if $skip{$extension};
}
- push @manitests, File::Spec->catfile($updir, $test);
+ my $t = File::Spec->catfile($updir, $test);
@ -644,8 +543,8 @@
}
}
close MANI;
--- ./t/op/numconvert.t.orig 2009-06-10 16:53:47.000000000 +0000
+++ ./t/op/numconvert.t 2009-09-04 07:01:37.000000000 +0000
--- ./t/op/numconvert.t.orig 2007-12-18 10:47:08.000000000 +0000
+++ ./t/op/numconvert.t 2008-01-07 09:34:12.000000000 +0000
@@ -46,7 +46,7 @@ my $max_chain = $ENV{PERL_TEST_NUMCONVER
# Bulk out if unsigned type is hopelessly wrong:
@ -655,13 +554,99 @@
my $big_iv = do {use integer; $max_uv1 * 16}; # 16 is an arbitrary number here
my $max_uv_less3 = $max_uv1 - 3;
--- ./utils/perlbug.PL.orig 2009-08-12 18:49:24.000000000 +0000
+++ ./utils/perlbug.PL 2009-09-04 07:01:37.000000000 +0000
@@ -1077,6 +1077,7 @@ sub _message_headers {
$headers{'Cc'} = $cc if ($cc);
$headers{'Message-Id'} = $messageid if ($messageid);
$headers{'Reply-To'} = $from if ($from);
+ $headers{'X-Webfrontend'} = 'perlbug';
return \%headers;
--- ./utils/perlbug.PL.orig 2007-12-18 10:47:08.000000000 +0000
+++ ./utils/perlbug.PL 2008-01-07 09:34:12.000000000 +0000
@@ -929,6 +929,7 @@ sendout:
print SENDMAIL "Cc: $cc\n" if $cc;
print SENDMAIL "Reply-To: $from\n" if $from;
print SENDMAIL "Message-Id: $messageid\n" if $messageid;
+ print SENDMAIL "X-Webfrontend: perlbug\n";
print SENDMAIL "\n\n";
open(REP, "<$filename") or die "Couldn't open `$filename': $!\n";
while (<REP>) { print SENDMAIL $_ }
--- ./lib/CPAN.pm 2007-12-18 11:47:07.000000000 +0100
+++ ./lib/CPAN.pm 2008-02-19 11:57:36.000000000 +0100
@@ -43,7 +43,7 @@
}
no lib ".";
-require Mac::BuildTools if $^O eq 'MacOS';
+#require Mac::BuildTools if $^O eq 'MacOS';
$ENV{PERL5_CPAN_IS_RUNNING}=$$;
$ENV{PERL5_CPANPLUS_IS_RUNNING}=$$; # https://rt.cpan.org/Ticket/Display.html?id=23735
@@ -1647,7 +1647,7 @@
$File::Find::prune++ if $CPAN::Signal;
return if -l $_;
if ($^O eq 'MacOS') {
- require Mac::Files;
+ #require Mac::Files;
my $cat = Mac::Files::FSpGetCatInfo($_);
$Du += $cat->ioFlLgLen() + $cat->ioFlRLgLen() if $cat;
} else {
--- ./lib/File/Spec/VMS.pm 2007-12-18 11:47:07.000000000 +0100
+++ ./lib/File/Spec/VMS.pm 2008-02-19 12:02:21.000000000 +0100
@@ -11,6 +11,8 @@
use File::Basename;
use VMS::Filespec;
+our $RPM_Ignore_Requires = "perl(VMS::Filespec)";
+
=head1 NAME
File::Spec::VMS - methods for VMS file specs
--- ./lib/Net/Config.pm 2007-12-18 11:47:07.000000000 +0100
+++ ./lib/Net/Config.pm 2008-02-19 11:57:58.000000000 +0100
@@ -37,7 +37,7 @@
# Try to get as much configuration info as possible from InternetConfig
#
$^O eq 'MacOS' and eval <<TRY_INTERNET_CONFIG;
-use Mac::InternetConfig;
+#use Mac::InternetConfig;
{
my %nc = (
--- ./lib/Carp/Heavy.pm 2007-12-18 11:47:07.000000000 +0100
+++ ./lib/Carp/Heavy.pm 2008-02-19 13:20:23.000000000 +0100
@@ -30,6 +30,7 @@
$Internal{Exporter}++;
$Internal{'Exporter::Heavy'}++;
+our $RPM_Ignore_Requires = "perl(Carp::Heavy)";
our ($CarpLevel, $MaxArgNums, $MaxEvalLen, $MaxArgLen, $Verbose);
--- ./lib/CPANPLUS/Internals/Constants/Report.pm 2007-12-18 11:47:08.000000000 +0100
+++ ./lib/CPANPLUS/Internals/Constants/Report.pm 2008-02-19 13:49:42.000000000 +0100
@@ -241,6 +241,8 @@
.
};
+our $RPM_Ignore_Requires = "perl(Your::Module::Here)";
+
use constant REPORT_MISSING_TESTS
=> sub {
return << ".";
--- ./lib/File/Temp.pm 2007-12-18 11:47:07.000000000 +0100
+++ ./lib/File/Temp.pm 2008-02-19 15:44:25.000000000 +0100
@@ -142,7 +142,7 @@
use Fcntl 1.03;
use IO::Seekable; # For SEEK_*
use Errno;
-require VMS::Stdio if $^O eq 'VMS';
+#require VMS::Stdio if $^O eq 'VMS';
# pre-emptively load Carp::Heavy. If we don't when we run out of file
# handles and attempt to call croak() we get an error message telling
--- ./lib/CGI/Fast.pm 2007-12-18 11:47:07.000000000 +0100
+++ ./lib/CGI/Fast.pm 2008-02-19 18:16:19.000000000 +0100
@@ -19,6 +19,9 @@
use FCGI;
@ISA = ('CGI');
+# FCGI is missing from the perl distri
+our $RPM_Ignore_Requires = "perl(FCGI)";
+
# workaround for known bug in libfcgi
while (($ignore) = each %ENV) { }

3
perl-5.10.0.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8f736c2006c14404803302f32f583af0cec0dd9cd3b492318b890ae476141165
size 12426003

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0e5a2c46172b5f96de8ddfe9ed5aec5218d656a1ac48a2dae1fe58080c49b806
size 11608186

10
perl-errorcount.diff Normal file
View File

@ -0,0 +1,10 @@
--- toke.c.orig 2007-12-18 10:47:08.000000000 +0000
+++ toke.c 2009-06-10 09:20:40.000000000 +0000
@@ -692,6 +692,7 @@ Perl_lex_start(pTHX_ SV *line, PerlIO *r
#else
parser->nexttoke = 0;
#endif
+ parser->error_count = oparser ? oparser->error_count : 0;
parser->copline = NOLINE;
parser->lex_state = LEX_NORMAL;
parser->expect = XSTATE;

11
perl-fast-syslog.diff Normal file
View File

@ -0,0 +1,11 @@
--- ext/Sys/Syslog/Syslog.pm.orig 2007-12-18 10:47:07.000000000 +0000
+++ ext/Sys/Syslog/Syslog.pm 2009-06-10 09:39:14.000000000 +0000
@@ -741,7 +741,7 @@ sub connection_ok {
my $rin = '';
vec($rin, fileno(SYSLOG), 1) = 1;
- my $ret = select $rin, undef, $rin, 0.25;
+ my $ret = select $rin, undef, $rin, 0;
return ($ret ? 0 : 1);
}

View File

@ -0,0 +1,30 @@
A simple test case for this bug is:
touch foo # permissions 0666 & ~umask
ln -s foo bar
perl -e 'use File::Path rmtree; rmtree bar'
ls -l foo # permissions 0777
The following patch fixes that and the originally reported problem. I
believe the other chmod() calls in the _rmtree subroutine will never be
applied to a sym-link if either (1) no concurrent modifications of the
directory tree or (2) the 'safe' option is used. It would be worthwhile
for someone else to double-check that, though.
Ben.
--- lib/File/Path.pm.orig
+++ lib/File/Path.pm
@@ -351,10 +351,8 @@
}
my $nperm = $perm & 07777 | 0600;
- if ($nperm != $perm and not chmod $nperm, $root) {
- if ($Force_Writeable) {
- _error($arg, "cannot make file writeable", $canon);
- }
+ if ($Force_Writeable && $nperm != $perm and not chmod $nperm, $root) {
+ _error($arg, "cannot make file writeable", $canon);
}
print "unlink $canon\n" if $arg->{verbose};
# delete all versions under VMS

View File

@ -0,0 +1,24 @@
--- lib/File/Path.pm.orig
+++ lib/File/Path.pm
@@ -316,10 +316,8 @@ sub _rmtree {
print "skipped $root\n" if $arg->{verbose};
next ROOT_DIR;
}
- if (!chmod $perm | 0700, $root) {
- if ($Force_Writeable) {
- _error($arg, "cannot make directory writeable", $canon);
- }
+ if ($Force_Writeable && !chmod $perm | 0700, $root) {
+ _error($arg, "cannot make directory writeable", $canon);
}
print "rmdir $root\n" if $arg->{verbose};
if (rmdir $root) {
@@ -328,7 +326,7 @@ sub _rmtree {
}
else {
_error($arg, "cannot remove directory", $canon);
- if (!chmod($perm, ($Is_VMS ? VMS::Filespec::fileify($root) : $root))
+ if ($Force_Writeable && !chmod($perm, ($Is_VMS ? VMS::Filespec::fileify($root) : $root))
) {
_error($arg, sprintf("cannot restore permissions to 0%o",$perm), $canon);
}

View File

@ -1,5 +1,5 @@
--- ./lib/Net/Cmd.pm.orig 2009-09-03 14:32:13.000000000 +0000
+++ ./lib/Net/Cmd.pm 2009-09-03 14:47:30.000000000 +0000
--- lib/Net/Cmd.pm.orig 2009-06-10 09:23:18.000000000 +0000
+++ lib/Net/Cmd.pm 2009-06-10 09:25:49.000000000 +0000
@@ -226,6 +226,10 @@ sub command {
$str = $cmd->toascii($str) if $tr;
$str .= "\015\012";
@ -11,7 +11,7 @@
my $len = length $str;
my $swlen;
@@ -473,6 +477,10 @@ sub rawdatasend {
@@ -471,6 +475,10 @@ sub rawdatasend {
return 0 unless defined(fileno($cmd));

View File

@ -1,6 +1,6 @@
--- ./regcomp.c.orig 2009-07-27 21:37:52.000000000 +0000
+++ ./regcomp.c 2009-09-03 14:36:50.000000000 +0000
@@ -5787,7 +5787,7 @@ S_reg(pTHX_ RExC_state_t *pRExC_state, I
--- regcomp.c
+++ regcomp.c
@@ -5713,7 +5713,7 @@ S_reg(pTHX_ RExC_state_t *pRExC_state, I
ret = reganode(pRExC_state, GOSUB, num);
if (!SIZE_ONLY) {
@ -9,7 +9,7 @@
RExC_parse++;
vFAIL("Reference to nonexistent group");
}
@@ -7234,7 +7234,7 @@ tryagain:
@@ -7132,7 +7132,7 @@ tryagain:
if (num < 1)
vFAIL("Reference to nonexistent or unclosed group");
}
@ -18,7 +18,7 @@
goto defchar;
else {
char * const parse_start = RExC_parse - 1; /* MJD */
@@ -7248,7 +7248,7 @@ tryagain:
@@ -7146,7 +7146,7 @@ tryagain:
RExC_parse++;
}
if (!SIZE_ONLY) {
@ -27,7 +27,7 @@
vFAIL("Reference to nonexistent group");
}
RExC_sawback = 1;
@@ -7425,7 +7425,7 @@ tryagain:
@@ -7323,7 +7323,7 @@ tryagain:
case '0': case '1': case '2': case '3':case '4':
case '5': case '6': case '7': case '8':case '9':
if (*p == '0' ||

View File

@ -1,29 +0,0 @@
--- ext/threads/threads.xs.orig 2009-09-04 06:58:42.000000000 +0000
+++ ext/threads/threads.xs 2009-09-04 07:00:10.000000000 +0000
@@ -603,8 +603,10 @@ S_ithread_create(
ithread *thread;
ithread *current_thread = S_ithread_get(aTHX);
+#if 0
SV **tmps_tmp = PL_tmps_stack;
IV tmps_ix = PL_tmps_ix;
+#endif
#ifndef WIN32
int rc_stack_size = 0;
int rc_thread_create = 0;
@@ -695,6 +697,7 @@ S_ithread_create(
thread->params = sv_dup(params, &clone_param);
SvREFCNT_inc_void(thread->params);
+#if 0
/* The code below checks that anything living on the tmps stack and
* has been cloned (so it lives in the ptr_table) has a refcount
* higher than 0.
@@ -717,6 +720,7 @@ S_ithread_create(
SvREFCNT_dec(sv);
}
}
+#endif
SvTEMP_off(thread->init_function);
ptr_table_free(PL_ptr_table);

20
perl-zlib-growoob.diff Normal file
View File

@ -0,0 +1,20 @@
--- ./ext/Compress/Raw/Zlib/Zlib.xs.orig 2007-12-18 10:47:07.000000000 +0000
+++ ./ext/Compress/Raw/Zlib/Zlib.xs 2009-06-10 09:11:57.000000000 +0000
@@ -1295,7 +1295,7 @@ inflate (s, buf, output, eof=FALSE)
if (s->stream.avail_out == 0 ) {
/* out of space in the output buffer so make it bigger */
- Sv_Grow(output, SvLEN(output) + bufinc) ;
+ Sv_Grow(output, SvLEN(output) + bufinc + 1) ;
cur_length += increment ;
s->stream.next_out = (Bytef*) SvPVbyte_nolen(output) + cur_length ;
increment = bufinc ;
@@ -1336,7 +1336,7 @@ inflate (s, buf, output, eof=FALSE)
s->stream.avail_in = 1;
if (s->stream.avail_out == 0) {
/* out of space in the output buffer so make it bigger */
- Sv_Grow(output, SvLEN(output) + bufinc) ;
+ Sv_Grow(output, SvLEN(output) + bufinc + 1) ;
cur_length += increment ;
s->stream.next_out = (Bytef*) SvPVbyte_nolen(output) + cur_length ;
increment = bufinc ;

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Sat Sep 5 15:47:24 CEST 2009 - coolo@novell.com
- revert to 5.10.0, too many problems (10 failures and 162
cyclic dependencies for d:l:p)
-------------------------------------------------------------------
Thu Sep 3 17:05:44 CEST 2009 - mls@suse.de

View File

@ -1,5 +1,5 @@
#
# spec file for package perl (Version 5.10.1)
# spec file for package perl (Version 5.10.0)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@ -20,8 +20,8 @@
Name: perl
Summary: The Perl interpreter
Version: 5.10.1
Release: 1
Version: 5.10.0
Release: 70
License: Artistic License .. ; GPL v2 or later
Group: Development/Languages/Perl
AutoReqProv: on
@ -30,13 +30,19 @@ Source: perl-%{version}.tar.bz2
Source1: %name-rpmlintrc
Source2: macros.perl
Source3: README.macros
Patch0: perl-%{version}.dif
Patch: perl-%{version}.dif
Patch1: perl-gracefull-net-ftp.diff
Patch2: perl-fix_dbmclose_call.patch
Patch3: perl-regexp-refoverflow.diff
Patch4: perl-nroff.diff
Patch5: perl-netcmdutf8.diff
Patch6: perl-threads.diff
Patch2: perl-5.10.0-regexp.diff
Patch3: perl-fix_dbmclose_call.patch
Patch4: perl-5.10.0-warn.diff
Patch5: perl-regexp-refoverflow.diff
Patch6: perl-file_path_rmtree_chmod.diff
Patch7: perl-file_path_rmtree_chmod_again.diff
Patch8: perl-nroff.diff
Patch9: perl-zlib-growoob.diff
Patch10: perl-errorcount.diff
Patch11: perl-netcmdutf8.diff
Patch12: perl-fast-syslog.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
PreReq: perl-base = %version
#PreReq: %fillup_prereq
@ -129,21 +135,24 @@ Authors:
Larry Wall, Louis J. LaBash, Jr. <llabash@siue.edu>
%prep
%setup -q -n perl-5.10.1
%setup -q -n perl-5.10.0
cp -p %{S:3} .
%patch0
%patch
%patch1
%patch2
%patch3
%patch4
%patch5
%patch6
%patch7
%patch8
%patch9
%patch10
%patch11
%patch12
%build
export SUSE_ASNEEDED=0
export BZIP2_LIB=%{_libdir}
export BZIP2_INCLUDE=%{_includedir}
export BUILD_BZIP2=0
options="-Doptimize='$RPM_OPT_FLAGS -Wall -pipe'"
%ifarch alpha
# -mieee needed for bad alpha gcc optimization