Accepting request 23098 from devel:languages:perl

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

OBS-URL: https://build.opensuse.org/request/show/23098
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/perl?expand=0&rev=34
This commit is contained in:
OBS User autobuild 2009-10-26 16:04:51 +00:00 committed by Git OBS Bridge
parent 574850ba3d
commit a6857230d8
19 changed files with 245 additions and 931 deletions

View File

@ -1,70 +0,0 @@
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 - -
+

View File

@ -1,20 +0,0 @@
--- 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,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8f736c2006c14404803302f32f583af0cec0dd9cd3b492318b890ae476141165
size 12426003

View File

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

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

View File

@ -1,10 +0,0 @@
--- 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;

View File

@ -1,11 +0,0 @@
--- 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

@ -1,30 +0,0 @@
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

@ -1,24 +0,0 @@
--- 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,11 +0,0 @@
--- ./mg.c.orig 2009-09-08 10:41:20.000000000 +0000
+++ ./mg.c 2009-09-08 10:43:29.000000000 +0000
@@ -1543,7 +1543,7 @@ Perl_magic_setisa(pTHX_ SV *sv, MAGIC *m
stash = GvSTASH(
SvTYPE(mg->mg_obj) == SVt_PVGV
? (GV*)mg->mg_obj
- : (GV*)SvMAGIC(mg->mg_obj)->mg_obj
+ : (GV*)mg_find(mg->mg_obj, PERL_MAGIC_isa)->mg_obj
);
mro_isa_changed_in(stash);

View File

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

View File

@ -1,213 +0,0 @@
--- perl/ext/B/t/concise-xs.t#1~32694~ 2007-12-22 01:23:09.000000000 -0800
+++ perl/ext/B/t/concise-xs.t 2008-05-20 05:48:04.000000000 -0700
@@ -177,7 +177,10 @@
},
POSIX => { dflt => 'constant', # all but 252/589
- skip => [qw/ _POSIX_JOB_CONTROL /], # platform varying
+ skip => [qw/ _POSIX_JOB_CONTROL /, # platform varying
+ # Might be XS or imported from Fcntl, depending on your
+ # perl version:
+ qw / S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISREG /],
perl => [qw/ import croak AUTOLOAD /],
XS => [qw/ write wctomb wcstombs uname tzset tzname
--- perl/ext/POSIX/Makefile.PL#1~32694~ 2007-12-22 01:23:09.000000000 -0800
+++ perl/ext/POSIX/Makefile.PL 2008-05-20 05:48:04.000000000 -0700
@@ -48,13 +48,11 @@
MAX_INPUT MB_LEN_MAX MSG_CTRUNC MSG_DONTROUTE MSG_EOR MSG_OOB MSG_PEEK
MSG_TRUNC MSG_WAITALL NAME_MAX NCCS NGROUPS_MAX NOFLSH OPEN_MAX OPOST
PARENB PARMRK PARODD PATH_MAX PIPE_BUF RAND_MAX R_OK SCHAR_MAX
- SCHAR_MIN SEEK_CUR SEEK_END SEEK_SET SHRT_MAX SHRT_MIN SIGABRT SIGALRM
+ SCHAR_MIN SHRT_MAX SHRT_MIN SIGABRT SIGALRM
SIGCHLD SIGCONT SIGFPE SIGHUP SIGILL SIGINT SIGKILL SIGPIPE SIGQUIT
SIGSEGV SIGSTOP SIGTERM SIGTSTP SIGTTIN SIGTTOU
SIGUSR1 SIGUSR2 SIG_BLOCK SIG_SETMASK SIG_UNBLOCK SSIZE_MAX
- STDERR_FILENO STDIN_FILENO STDOUT_FILENO STREAM_MAX
- S_IRGRP S_IROTH S_IRUSR S_IRWXG S_IRWXO S_IRWXU S_ISGID S_ISUID
- S_IWGRP S_IWOTH S_IWUSR S_IXGRP S_IXOTH S_IXUSR TCIFLUSH TCIOFF
+ STDERR_FILENO STDIN_FILENO STDOUT_FILENO STREAM_MAX TCIFLUSH TCIOFF
TCIOFLUSH TCION TCOFLUSH TCOOFF TCOON TCSADRAIN TCSAFLUSH TCSANOW
TMP_MAX TOSTOP TZNAME_MAX VEOF VEOL VERASE VINTR VKILL VMIN VQUIT
VSTART VSTOP VSUSP VTIME WNOHANG WUNTRACED W_OK X_OK
--- perl/ext/POSIX/POSIX.pm#2~33640~ 2008-04-03 09:03:24.000000000 -0700
+++ perl/ext/POSIX/POSIX.pm 2008-05-20 05:48:04.000000000 -0700
@@ -13,7 +13,10 @@
use Fcntl qw(FD_CLOEXEC F_DUPFD F_GETFD F_GETFL F_GETLK F_RDLCK F_SETFD
F_SETFL F_SETLK F_SETLKW F_UNLCK F_WRLCK O_ACCMODE O_APPEND
O_CREAT O_EXCL O_NOCTTY O_NONBLOCK O_RDONLY O_RDWR O_TRUNC
- O_WRONLY);
+ O_WRONLY SEEK_CUR SEEK_END SEEK_SET
+ S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISREG
+ S_IRGRP S_IROTH S_IRUSR S_IRWXG S_IRWXO S_IRWXU S_ISGID S_ISUID
+ S_IWGRP S_IWOTH S_IWUSR S_IXGRP S_IXOTH S_IXUSR);
# Grandfather old foo_h form to new :foo_h form
my $loaded;
@@ -32,9 +35,9 @@
XSLoader::load 'POSIX', $VERSION;
-my %NON_CONSTS = (map {($_,1)}
- qw(S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISREG WEXITSTATUS
- WIFEXITED WIFSIGNALED WIFSTOPPED WSTOPSIG WTERMSIG));
+my %NON_CONSTS
+ = (map {($_,1)} qw(WEXITSTATUS WIFEXITED WIFSIGNALED WIFSTOPPED WSTOPSIG
+ WTERMSIG));
sub AUTOLOAD {
no strict;
--- perl/ext/POSIX/POSIX.xs#2~33119~ 2008-01-30 02:06:52.000000000 -0800
+++ perl/ext/POSIX/POSIX.xs 2008-05-20 05:48:04.000000000 -0700
@@ -404,7 +404,7 @@
use ExtUtils::Constant qw (constant_types C_constant XS_constant);
my $types = {map {($_, 1)} qw(IV)};
-my @names = (qw(S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISREG WEXITSTATUS WIFEXITED
+my @names = (qw(WEXITSTATUS WIFEXITED
WIFSIGNALED WIFSTOPPED WSTOPSIG WTERMSIG));
print constant_types(); # macro defs
@@ -416,65 +416,14 @@
*/
switch (len) {
- case 7:
- /* Names all of length 7. */
- /* S_ISBLK S_ISCHR S_ISDIR S_ISREG */
- /* Offset 5 gives the best switch position. */
- switch (name[5]) {
- case 'E':
- if (memEQ(name, "S_ISREG", 7)) {
- /* ^ */
-#ifdef S_ISREG
- *arg_result = S_ISREG(*arg_result);
- return PERL_constant_ISIV;
-#else
- return PERL_constant_NOTDEF;
-#endif
- }
- break;
- case 'H':
- if (memEQ(name, "S_ISCHR", 7)) {
- /* ^ */
-#ifdef S_ISCHR
- *arg_result = S_ISCHR(*arg_result);
- return PERL_constant_ISIV;
-#else
- return PERL_constant_NOTDEF;
-#endif
- }
- break;
- case 'I':
- if (memEQ(name, "S_ISDIR", 7)) {
- /* ^ */
-#ifdef S_ISDIR
- *arg_result = S_ISDIR(*arg_result);
- return PERL_constant_ISIV;
-#else
- return PERL_constant_NOTDEF;
-#endif
- }
- break;
- case 'L':
- if (memEQ(name, "S_ISBLK", 7)) {
- /* ^ */
-#ifdef S_ISBLK
- *arg_result = S_ISBLK(*arg_result);
- return PERL_constant_ISIV;
-#else
- return PERL_constant_NOTDEF;
-#endif
- }
- break;
- }
- break;
case 8:
/* Names all of length 8. */
- /* S_ISFIFO WSTOPSIG WTERMSIG */
- /* Offset 3 gives the best switch position. */
- switch (name[3]) {
- case 'O':
+ /* WSTOPSIG WTERMSIG */
+ /* Offset 1 gives the best switch position. */
+ switch (name[1]) {
+ case 'S':
if (memEQ(name, "WSTOPSIG", 8)) {
- /* ^ */
+ /* ^ */
#ifdef WSTOPSIG
int i = *arg_result;
*arg_result = WSTOPSIG(WMUNGE(i));
@@ -484,9 +433,9 @@
#endif
}
break;
- case 'R':
+ case 'T':
if (memEQ(name, "WTERMSIG", 8)) {
- /* ^ */
+ /* ^ */
#ifdef WTERMSIG
int i = *arg_result;
*arg_result = WTERMSIG(WMUNGE(i));
@@ -496,17 +445,6 @@
#endif
}
break;
- case 'S':
- if (memEQ(name, "S_ISFIFO", 8)) {
- /* ^ */
-#ifdef S_ISFIFO
- *arg_result = S_ISFIFO(*arg_result);
- return PERL_constant_ISIV;
-#else
- return PERL_constant_NOTDEF;
-#endif
- }
- break;
}
break;
case 9:
--- perl/t/lib/proxy_constant_subs.t#1~32694~ 2007-12-22 01:23:09.000000000 -0800
+++ perl/t/lib/proxy_constant_subs.t 2008-05-20 05:48:04.000000000 -0700
@@ -7,20 +7,20 @@
print "1..0 # Skip -- Perl configured without B module\n";
exit 0;
}
- if ($Config::Config{'extensions'} !~ /\bPOSIX\b/) {
- print "1..0 # Skip -- Perl configured without POSIX\n";
+ if ($Config::Config{'extensions'} !~ /\bFcntl\b/) {
+ print "1..0 # Skip -- Perl configured without Fcntl\n";
exit 0;
}
- # errno is a real subroutine, and acts as control
+ # S_IFMT is a real subroutine, and acts as control
# SEEK_SET is a proxy constant subroutine.
- @symbols = qw(errno SEEK_SET);
+ @symbols = qw(S_IFMT SEEK_SET);
}
use strict;
use warnings;
use Test::More tests => 4 * @symbols;
use B qw(svref_2object GVf_IMPORTED_CV);
-use POSIX @symbols;
+use Fcntl @symbols;
# GVf_IMPORTED_CV should not be set on the original, but should be set on the
# imported GV.
@@ -29,7 +29,7 @@
my ($ps, $ms);
{
no strict 'refs';
- $ps = svref_2object(\*{"POSIX::$symbol"});
+ $ps = svref_2object(\*{"Fcntl::$symbol"});
$ms = svref_2object(\*{"::$symbol"});
}
isa_ok($ps, 'B::GV');

View File

@ -1,252 +0,0 @@
--- perl/ext/B/t/concise-xs.t#42~33829~ 2008-05-15 05:01:42.000000000 -0700
+++ perl/ext/B/t/concise-xs.t 2008-05-21 02:18:00.000000000 -0700
@@ -180,7 +180,13 @@
skip => [qw/ _POSIX_JOB_CONTROL /, # platform varying
# Might be XS or imported from Fcntl, depending on your
# perl version:
- qw / S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISREG /],
+ qw / S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISREG /,
+ # Might be XS or AUTOLOADed, depending on your perl
+ # version:
+ qw /WEXITSTATUS WIFEXITED WIFSIGNALED WIFSTOPPED
+ WSTOPSIG WTERMSIG/,
+ 'int_macro_int', # Removed in POSIX 1.16
+ ],
perl => [qw/ import croak AUTOLOAD /],
XS => [qw/ write wctomb wcstombs uname tzset tzname
@@ -194,7 +200,7 @@
mblen lseek log10 localeconv ldexp lchown
isxdigit isupper isspace ispunct isprint
islower isgraph isdigit iscntrl isalpha
- isalnum int_macro_int getcwd frexp fpathconf
+ isalnum getcwd frexp fpathconf
fmod floor dup2 dup difftime cuserid ctime
ctermid cosh constant close clock ceil
bootstrap atan asin asctime acos access abort
--- perl/ext/POSIX/POSIX.pm#55~33826~ 2008-05-15 04:24:43.000000000 -0700
+++ perl/ext/POSIX/POSIX.pm 2008-05-21 02:18:00.000000000 -0700
@@ -35,10 +35,6 @@
XSLoader::load 'POSIX', $VERSION;
-my %NON_CONSTS
- = (map {($_,1)} qw(WEXITSTATUS WIFEXITED WIFSIGNALED WIFSTOPPED WSTOPSIG
- WTERMSIG));
-
sub AUTOLOAD {
no strict;
no warnings 'uninitialized';
@@ -50,15 +46,9 @@
local $! = 0;
my $constname = $AUTOLOAD;
$constname =~ s/.*:://;
- if ($NON_CONSTS{$constname}) {
- my ($val, $error) = &int_macro_int($constname, $_[0]);
- croak $error if $error;
- *$AUTOLOAD = sub { &int_macro_int($constname, $_[0]) };
- } else {
- my ($error, $val) = constant($constname);
- croak $error if $error;
- *$AUTOLOAD = sub { $val };
- }
+ my ($error, $val) = constant($constname);
+ croak $error if $error;
+ *$AUTOLOAD = sub { $val };
goto &$AUTOLOAD;
}
--- perl/ext/POSIX/POSIX.xs#151~33826~ 2008-05-15 04:24:43.000000000 -0700
+++ perl/ext/POSIX/POSIX.xs 2008-05-21 02:18:00.000000000 -0700
@@ -394,116 +394,6 @@
#include "const-c.inc"
-/* These were implemented in the old "constant" subroutine. They are actually
- macros that take an integer argument and return an integer result. */
-static int
-int_macro_int (const char *name, STRLEN len, IV *arg_result) {
- /* Initially switch on the length of the name. */
- /* This code has been edited from a "constant" function generated by:
-
-use ExtUtils::Constant qw (constant_types C_constant XS_constant);
-
-my $types = {map {($_, 1)} qw(IV)};
-my @names = (qw(WEXITSTATUS WIFEXITED
- WIFSIGNALED WIFSTOPPED WSTOPSIG WTERMSIG));
-
-print constant_types(); # macro defs
-foreach (C_constant ("POSIX", 'int_macro_int', 'IV', $types, undef, 5, @names) ) {
- print $_, "\n"; # C constant subs
-}
-print "#### XS Section:\n";
-print XS_constant ("POSIX", $types);
- */
-
- switch (len) {
- case 8:
- /* Names all of length 8. */
- /* WSTOPSIG WTERMSIG */
- /* Offset 1 gives the best switch position. */
- switch (name[1]) {
- case 'S':
- if (memEQ(name, "WSTOPSIG", 8)) {
- /* ^ */
-#ifdef WSTOPSIG
- int i = *arg_result;
- *arg_result = WSTOPSIG(WMUNGE(i));
- return PERL_constant_ISIV;
-#else
- return PERL_constant_NOTDEF;
-#endif
- }
- break;
- case 'T':
- if (memEQ(name, "WTERMSIG", 8)) {
- /* ^ */
-#ifdef WTERMSIG
- int i = *arg_result;
- *arg_result = WTERMSIG(WMUNGE(i));
- return PERL_constant_ISIV;
-#else
- return PERL_constant_NOTDEF;
-#endif
- }
- break;
- }
- break;
- case 9:
- if (memEQ(name, "WIFEXITED", 9)) {
-#ifdef WIFEXITED
- int i = *arg_result;
- *arg_result = WIFEXITED(WMUNGE(i));
- return PERL_constant_ISIV;
-#else
- return PERL_constant_NOTDEF;
-#endif
- }
- break;
- case 10:
- if (memEQ(name, "WIFSTOPPED", 10)) {
-#ifdef WIFSTOPPED
- int i = *arg_result;
- *arg_result = WIFSTOPPED(WMUNGE(i));
- return PERL_constant_ISIV;
-#else
- return PERL_constant_NOTDEF;
-#endif
- }
- break;
- case 11:
- /* Names all of length 11. */
- /* WEXITSTATUS WIFSIGNALED */
- /* Offset 1 gives the best switch position. */
- switch (name[1]) {
- case 'E':
- if (memEQ(name, "WEXITSTATUS", 11)) {
- /* ^ */
-#ifdef WEXITSTATUS
- int i = *arg_result;
- *arg_result = WEXITSTATUS(WMUNGE(i));
- return PERL_constant_ISIV;
-#else
- return PERL_constant_NOTDEF;
-#endif
- }
- break;
- case 'I':
- if (memEQ(name, "WIFSIGNALED", 11)) {
- /* ^ */
-#ifdef WIFSIGNALED
- int i = *arg_result;
- *arg_result = WIFSIGNALED(WMUNGE(i));
- return PERL_constant_ISIV;
-#else
- return PERL_constant_NOTDEF;
-#endif
- }
- break;
- }
- break;
- }
- return PERL_constant_NOTFOUND;
-}
-
static void
restore_sigmask(pTHX_ SV *osset_sv)
{
@@ -756,47 +646,29 @@
INCLUDE: const-xs.inc
-void
-int_macro_int(sv, iv)
- PREINIT:
- dXSTARG;
- STRLEN len;
- int type;
- INPUT:
- SV * sv;
- const char * s = SvPV(sv, len);
- IV iv;
- PPCODE:
- /* Change this to int_macro_int(s, len, &iv, &nv);
- if you need to return both NVs and IVs */
- type = int_macro_int(s, len, &iv);
- /* Return 1 or 2 items. First is error message, or undef if no error.
- Second, if present, is found value */
- switch (type) {
- case PERL_constant_NOTFOUND:
- sv = sv_2mortal(newSVpvf("%s is not a valid POSIX macro", s));
- EXTEND(SP, 1);
- PUSHs(&PL_sv_undef);
- PUSHs(sv);
- break;
- case PERL_constant_NOTDEF:
- sv = sv_2mortal(newSVpvf(
- "Your vendor has not defined POSIX macro %s, used", s));
- EXTEND(SP, 1);
- PUSHs(&PL_sv_undef);
- PUSHs(sv);
- break;
- case PERL_constant_ISIV:
- PUSHi(iv);
- break;
- default:
- sv = sv_2mortal(newSVpvf(
- "Unexpected return type %d while processing POSIX macro %s, used",
- type, s));
- EXTEND(SP, 1);
- PUSHs(&PL_sv_undef);
- PUSHs(sv);
- }
+int
+WEXITSTATUS(status)
+ int status
+
+int
+WIFEXITED(status)
+ int status
+
+int
+WIFSIGNALED(status)
+ int status
+
+int
+WIFSTOPPED(status)
+ int status
+
+int
+WSTOPSIG(status)
+ int status
+
+int
+WTERMSIG(status)
+ int status
int
isalnum(charstring)

View File

@ -1,61 +0,0 @@
--- perl/ext/POSIX/POSIX.xs#152~33896~ 2008-05-21 02:18:00.000000000 -0700
+++ perl/ext/POSIX/POSIX.xs 2008-05-21 03:31:32.000000000 -0700
@@ -649,26 +649,37 @@
int
WEXITSTATUS(status)
int status
-
-int
-WIFEXITED(status)
- int status
-
-int
-WIFSIGNALED(status)
- int status
-
-int
-WIFSTOPPED(status)
- int status
-
-int
-WSTOPSIG(status)
- int status
-
-int
-WTERMSIG(status)
- int status
+ ALIAS:
+ POSIX::WIFEXITED = 1
+ POSIX::WIFSIGNALED = 2
+ POSIX::WIFSTOPPED = 3
+ POSIX::WSTOPSIG = 4
+ POSIX::WTERMSIG = 5
+ CODE:
+ switch(ix) {
+ case 0:
+ RETVAL = WEXITSTATUS(status);
+ break;
+ case 1:
+ RETVAL = WIFEXITED(status);
+ break;
+ case 2:
+ RETVAL = WIFSIGNALED(status);
+ break;
+ case 3:
+ RETVAL = WIFSTOPPED(status);
+ break;
+ case 4:
+ RETVAL = WSTOPSIG(status);
+ break;
+ case 5:
+ RETVAL = WTERMSIG(status);
+ break;
+ default:
+ Perl_croak(aTHX_ "Illegal alias %d for POSIX::W*", ix);
+ }
+ OUTPUT:
+ RETVAL
int
isalnum(charstring)

View File

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

29
perl-threads.diff Normal file
View File

@ -0,0 +1,29 @@
--- 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);

View File

@ -1,20 +0,0 @@
--- ./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,8 @@
-------------------------------------------------------------------
Sun Oct 25 18:46:40 UTC 2009 - coolo@novell.com
- update to perl-5.10.1 again
------------------------------------------------------------------- -------------------------------------------------------------------
Tue Sep 8 13:43:35 CEST 2009 - mls@suse.de Tue Sep 8 13:43:35 CEST 2009 - mls@suse.de

View File

@ -1,5 +1,5 @@
# #
# spec file for package perl (Version 5.10.0) # spec file for package perl (Version 5.10.1)
# #
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. # Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
# #
@ -20,8 +20,8 @@
Name: perl Name: perl
Summary: The Perl interpreter Summary: The Perl interpreter
Version: 5.10.0 Version: 5.10.1
Release: 71 Release: 2
License: Artistic License .. ; GPL v2 or later License: Artistic License .. ; GPL v2 or later
Group: Development/Languages/Perl Group: Development/Languages/Perl
AutoReqProv: on AutoReqProv: on
@ -30,23 +30,13 @@ Source: perl-%{version}.tar.bz2
Source1: %name-rpmlintrc Source1: %name-rpmlintrc
Source2: macros.perl Source2: macros.perl
Source3: README.macros Source3: README.macros
Patch: perl-%{version}.dif Patch0: perl-%{version}.dif
Patch1: perl-gracefull-net-ftp.diff Patch1: perl-gracefull-net-ftp.diff
Patch2: perl-5.10.0-regexp.diff Patch2: perl-fix_dbmclose_call.patch
Patch3: perl-fix_dbmclose_call.patch Patch3: perl-regexp-refoverflow.diff
Patch4: perl-5.10.0-warn.diff Patch4: perl-nroff.diff
Patch5: perl-regexp-refoverflow.diff Patch5: perl-netcmdutf8.diff
Patch6: perl-file_path_rmtree_chmod.diff Patch6: perl-threads.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
Patch13: perl-isaassert.diff
Patch14: perl-posix-33881.diff
Patch15: perl-posix-33896.diff
Patch16: perl-posix-33897.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRoot: %{_tmppath}/%{name}-%{version}-build
PreReq: perl-base = %version PreReq: perl-base = %version
#PreReq: %fillup_prereq #PreReq: %fillup_prereq
@ -139,28 +129,21 @@ Authors:
Larry Wall, Louis J. LaBash, Jr. <llabash@siue.edu> Larry Wall, Louis J. LaBash, Jr. <llabash@siue.edu>
%prep %prep
%setup -q -n perl-5.10.0 %setup -q -n perl-5.10.1
cp -p %{S:3} . cp -p %{S:3} .
%patch %patch0
%patch1 %patch1
%patch2 %patch2
%patch3 %patch3
%patch4 %patch4
%patch5 %patch5
%patch6 %patch6
%patch7
%patch8
%patch9
%patch10
%patch11
%patch12
%patch13
%patch14 -p1
%patch15 -p1
%patch16 -p1
%build %build
export SUSE_ASNEEDED=0 export SUSE_ASNEEDED=0
export BZIP2_LIB=%{_libdir}
export BZIP2_INCLUDE=%{_includedir}
export BUILD_BZIP2=0
options="-Doptimize='$RPM_OPT_FLAGS -Wall -pipe'" options="-Doptimize='$RPM_OPT_FLAGS -Wall -pipe'"
%ifarch alpha %ifarch alpha
# -mieee needed for bad alpha gcc optimization # -mieee needed for bad alpha gcc optimization
@ -372,6 +355,8 @@ EOF
%exclude /usr/bin/perl %exclude /usr/bin/perl
%exclude /usr/bin/perl%version %exclude /usr/bin/perl%version
%exclude /usr/bin/suidperl %exclude /usr/bin/suidperl
%exclude /usr/lib/perl5/*/Unicode/*/*.txt
%exclude /usr/lib/perl5/*/unicore/*.txt
/usr/bin/* /usr/bin/*
/usr/lib/perl5/* /usr/lib/perl5/*
%config %{_sysconfdir}/rpm/macros.perl %config %{_sysconfdir}/rpm/macros.perl
@ -388,5 +373,7 @@ EOF
%doc /usr/share/man/man1/* %doc /usr/share/man/man1/*
%doc /usr/share/man/man3/* %doc /usr/share/man/man3/*
%doc /usr/lib/perl5/*/pod %doc /usr/lib/perl5/*/pod
%doc /usr/lib/perl5/*/Unicode/*/*.txt
%doc /usr/lib/perl5/*/unicore/*.txt
%changelog %changelog