...
 
Commits (14)
......@@ -173,15 +173,11 @@ esac
: is Cwd static or dynamic
static_cwd='define'
storable_limit_dep=''
storable_type=''
list_util_dep='$(PERL_EXE)'
for f in $dynamic_ext; do
case $f in
Cwd) static_cwd='undef' ;;
List/Util) list_util_dep=lib/auto/List/Util/Util.$dlext ;;
Storable) storable_limit_dep=lib/auto/Storable/Storable.$dlext
storable_type='dynamic' ;;
esac
done
......@@ -218,7 +214,6 @@ for f in $static_ext; do
$this_target: lib/auto/List/Util/Util\$(LIB_EXT)" ;;
Unicode/Normalize) extra_dep="$extra_dep
$this_target: uni.data" ;;
Storable) storable_type='static' ;;
esac
done
......@@ -1155,26 +1150,6 @@ no_install no-install: install-notify
install: install-all
!NO!SUBS!
if test "$storable_type" != "" ; then
case "$static_cwd" in
undef) storable_limit_dep="$storable_limit_dep lib/auto/Cwd/Cwd.$dlext" ;;
esac
$spitshell >>$Makefile <<EOT
dist/Storable/lib/Storable/Limit.pm : \$(PERL_EXE) dist/Storable/stacksize $storable_limit_dep
cd dist/Storable ; \$(LDLIBPTH) \$(MAKE) lib/Storable/Limit.pm
lib/Storable/Limit.pm : dist/Storable/lib/Storable/Limit.pm
test -d lib/Storable || mkdir lib/Storable
cp dist/Storable/lib/Storable/Limit.pm lib/Storable/Limit.pm
EOT
common_build_deps="$common_build_deps lib/Storable/Limit.pm"
fi
for name in all notify silent strip verbose; do
flags="--$name";
flags=`echo $flags | sed -e 's/--all//'`
......
# see git-dpm(1) from git-dpm package
428a86833a1016bd9f5e7db65e6b5aa3a6bbbabd
428a86833a1016bd9f5e7db65e6b5aa3a6bbbabd
6dd4a8a26654a282da120b402eb53ed9ffa59cb1
6dd4a8a26654a282da120b402eb53ed9ffa59cb1
533cd3622b6a61a362e7538a26e25b244ca799f2
533cd3622b6a61a362e7538a26e25b244ca799f2
perl_5.28.1.orig.tar.xz
......
perl (5.28.1-4) UNRELEASED; urgency=medium
* Revert to upstream changes for disabling Storable probing.
* Apply upstream patches marking pipes in pipe-open inherit-on-exec.
(Closes: #916313)
-- Niko Tyni <ntyni@debian.org> Tue, 18 Dec 2018 19:07:23 +0200
perl (5.28.1-3) unstable; urgency=low
[ Dominic Hargreaves ]
......
......@@ -10,7 +10,7 @@ Bug-Debian: https://bugs.debian.org/762638
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/Configure b/Configure
index 3be9f05b7d..437b8afc57 100755
index 3be9f05b7..437b8afc5 100755
--- a/Configure
+++ b/Configure
@@ -1483,8 +1483,7 @@ archname=''
......
......@@ -18,7 +18,7 @@ Patch-Name: debian/cpan-missing-site-dirs.diff
1 file changed, 27 insertions(+), 4 deletions(-)
diff --git a/cpan/CPAN/lib/CPAN/FirstTime.pm b/cpan/CPAN/lib/CPAN/FirstTime.pm
index cdf1dc220d..bdb7899bb9 100644
index cdf1dc220..bdb7899bb 100644
--- a/cpan/CPAN/lib/CPAN/FirstTime.pm
+++ b/cpan/CPAN/lib/CPAN/FirstTime.pm
@@ -2067,11 +2067,34 @@ sub _print_urllist {
......
......@@ -14,7 +14,7 @@ Patch-Name: debian/cpan_definstalldirs.diff
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/cpan/CPAN/lib/CPAN/FirstTime.pm b/cpan/CPAN/lib/CPAN/FirstTime.pm
index 49fa8ab7b9..cdf1dc220d 100644
index 49fa8ab7b..cdf1dc220 100644
--- a/cpan/CPAN/lib/CPAN/FirstTime.pm
+++ b/cpan/CPAN/lib/CPAN/FirstTime.pm
@@ -1033,7 +1033,7 @@ sub init {
......
......@@ -13,7 +13,7 @@ Patch-Name: debian/db_file_ver.diff
1 file changed, 2 insertions(+)
diff --git a/cpan/DB_File/version.c b/cpan/DB_File/version.c
index e01f6f6fa3..544e6ee8fb 100644
index e01f6f6fa..544e6ee8f 100644
--- a/cpan/DB_File/version.c
+++ b/cpan/DB_File/version.c
@@ -48,6 +48,7 @@ __getBerkeleyDBInfo()
......
......@@ -10,7 +10,7 @@ Patch-Name: debian/deprecate-with-apt.diff
1 file changed, 17 insertions(+), 1 deletion(-)
diff --git a/lib/deprecate.pm b/lib/deprecate.pm
index 47bc11253e..01d48fa6cc 100644
index 47bc11253..01d48fa6c 100644
--- a/lib/deprecate.pm
+++ b/lib/deprecate.pm
@@ -7,6 +7,16 @@ our $VERSION = 0.03;
......
......@@ -21,7 +21,7 @@ Patch-Name: debian/disable-stack-check.diff
2 files changed, 6 insertions(+)
diff --git a/dump.c b/dump.c
index 227eb996ee..4e1c594ce8 100644
index 227eb996e..4e1c594ce 100644
--- a/dump.c
+++ b/dump.c
@@ -2500,6 +2500,8 @@ Perl_runops_debug(pTHX)
......@@ -33,16 +33,16 @@ index 227eb996ee..4e1c594ce8 100644
if (PL_curstackinfo->si_stack_hwm < PL_stack_sp - PL_stack_base)
Perl_croak_nocontext(
"panic: previous op failed to extend arg stack: "
@@ -2508,6 +2510,7 @@ Perl_runops_debug(pTHX)
@@ -2507,6 +2509,7 @@ Perl_runops_debug(pTHX)
PL_stack_base, PL_stack_sp,
PL_stack_base + PL_curstackinfo->si_stack_hwm);
PL_curstackinfo->si_stack_hwm = PL_stack_sp - PL_stack_base;
#endif
+#endif
#endif
if (PL_debug) {
ENTER;
SAVETMPS;
diff --git a/pp_hot.c b/pp_hot.c
index 56e3cbe6e1..f4e1ae726d 100644
index 56e3cbe6e..f4e1ae726 100644
--- a/pp_hot.c
+++ b/pp_hot.c
@@ -5232,6 +5232,8 @@ PP(pp_entersub)
......@@ -54,11 +54,11 @@ index 56e3cbe6e1..f4e1ae726d 100644
/* This duplicates the check done in runops_debug(), but provides more
* information in the common case of the fault being with an XSUB.
*
@@ -5246,6 +5248,7 @@ PP(pp_entersub)
@@ -5245,6 +5247,7 @@ PP(pp_entersub)
HvNAME(GvSTASH(CvGV(cv))), GvNAME(CvGV(cv)), CvFILE(cv),
PL_stack_base, PL_stack_sp,
PL_stack_base + PL_curstackinfo->si_stack_hwm);
#endif
+#endif
#endif
/* Enforce some sanity in scalar context. */
if (is_scalar) {
SV **svp = PL_stack_base + markix + 1;
......@@ -11,7 +11,7 @@ Patch-Name: debian/doc_info.diff
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/pod/perl.pod b/pod/perl.pod
index fbbb952b6b..bc0f531f86 100644
index fbbb952b6..bc0f531f8 100644
--- a/pod/perl.pod
+++ b/pod/perl.pod
@@ -295,8 +295,16 @@ aux h2ph h2xs perlbug pl2pm pod2html pod2man splain xsubpp
......
......@@ -17,7 +17,7 @@ Patch-Name: debian/enc2xs_inc.diff
2 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/cpan/Encode/bin/enc2xs b/cpan/Encode/bin/enc2xs
index 619b64b757..050c863ef9 100644
index 619b64b75..050c863ef 100644
--- a/cpan/Encode/bin/enc2xs
+++ b/cpan/Encode/bin/enc2xs
@@ -1013,11 +1013,11 @@ use vars qw(
......@@ -53,7 +53,7 @@ index 619b64b757..050c863ef9 100644
for my $enc ( sort keys %LocalMod ) {
$_ModLines .=
diff --git a/t/porting/customized.t b/t/porting/customized.t
index d425e5b775..d906a82553 100644
index d425e5b77..d906a8255 100644
--- a/t/porting/customized.t
+++ b/t/porting/customized.t
@@ -108,8 +108,11 @@ foreach my $module ( sort keys %Modules ) {
......
......@@ -16,7 +16,7 @@ Patch-Name: debian/errno_ver.diff
1 file changed, 16 deletions(-)
diff --git a/ext/Errno/Errno_pm.PL b/ext/Errno/Errno_pm.PL
index d565f31b2f..6a0031f0f7 100644
index d565f31b2..6a0031f0f 100644
--- a/ext/Errno/Errno_pm.PL
+++ b/ext/Errno/Errno_pm.PL
@@ -288,22 +288,6 @@ package Errno;
......
......@@ -12,7 +12,7 @@ Patch-Name: debian/extutils_set_libperl_path.diff
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
index dbb8651a9f..780e390cd9 100644
index dbb8651a9..780e390cd 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
@@ -2564,7 +2564,7 @@ MAP_PRELIBS = $Config{perllibs} $Config{cryptlib}
......
......@@ -16,7 +16,7 @@ Patch-Name: debian/fakeroot.diff
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/Makefile.SH b/Makefile.SH
index 5197009290..48151bce65 100755
index 519700929..48151bce6 100755
--- a/Makefile.SH
+++ b/Makefile.SH
@@ -48,10 +48,7 @@ case "$useshrplib" in
......
......@@ -21,7 +21,7 @@ functionality].
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cpan/CPAN/lib/CPAN/Distribution.pm b/cpan/CPAN/lib/CPAN/Distribution.pm
index 72101afc7b..9f896584d1 100644
index 72101afc7..9f896584d 100644
--- a/cpan/CPAN/lib/CPAN/Distribution.pm
+++ b/cpan/CPAN/lib/CPAN/Distribution.pm
@@ -4149,7 +4149,7 @@ sub _display_url {
......
......@@ -11,7 +11,7 @@ Patch-Name: debian/gdbm-fatal.diff
1 file changed, 3 insertions(+)
diff --git a/ext/GDBM_File/t/fatal.t b/ext/GDBM_File/t/fatal.t
index 0e426d4dbc..3df6878f8c 100644
index 0e426d4db..3df6878f8 100644
--- a/ext/GDBM_File/t/fatal.t
+++ b/ext/GDBM_File/t/fatal.t
@@ -12,6 +12,9 @@ BEGIN {
......
......@@ -16,7 +16,7 @@ Patch-Name: debian/hppa_op_optimize_workaround.diff
1 file changed, 6 insertions(+)
diff --git a/cflags.SH b/cflags.SH
index e60742fed1..3e4526ff8f 100755
index e60742fed..3e4526ff8 100755
--- a/cflags.SH
+++ b/cflags.SH
@@ -497,6 +497,12 @@ for file do
......
......@@ -14,7 +14,7 @@ Patch-Name: debian/hppa_opmini_optimize_workaround.diff
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cflags.SH b/cflags.SH
index 3e4526ff8f..c8231e64e8 100755
index 3e4526ff8..c8231e64e 100755
--- a/cflags.SH
+++ b/cflags.SH
@@ -497,7 +497,7 @@ for file do
......
......@@ -13,7 +13,7 @@ Patch-Name: debian/hurd-softupdates.diff
1 file changed, 1 insertion(+)
diff --git a/t/op/stat.t b/t/op/stat.t
index 8dcb3d3fd5..aa16fe7399 100644
index 8dcb3d3fd..aa16fe739 100644
--- a/t/op/stat.t
+++ b/t/op/stat.t
@@ -100,6 +100,7 @@ print FOO "Now is the time for all good men to come to.\n";
......
......@@ -15,7 +15,7 @@ Patch-Name: debian/installman-utf8.diff
1 file changed, 1 insertion(+)
diff --git a/installman b/installman
index 0154be4d68..fff0ff04a7 100755
index 0154be4d6..fff0ff04a 100755
--- a/installman
+++ b/installman
@@ -161,6 +161,7 @@ sub pod2man {
......
......@@ -9,7 +9,7 @@ Patch-Name: debian/instmodsh_doc.diff
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/cpan/ExtUtils-MakeMaker/bin/instmodsh b/cpan/ExtUtils-MakeMaker/bin/instmodsh
index ab0f9d1ffe..b3b109f475 100644
index ab0f9d1ff..b3b109f47 100644
--- a/cpan/ExtUtils-MakeMaker/bin/instmodsh
+++ b/cpan/ExtUtils-MakeMaker/bin/instmodsh
@@ -19,9 +19,11 @@ instmodsh - A shell to examine installed modules
......
......@@ -16,7 +16,7 @@ Patch-Name: debian/kfreebsd-softupdates.diff
1 file changed, 1 insertion(+)
diff --git a/t/op/stat.t b/t/op/stat.t
index 905eb85fd4..8dcb3d3fd5 100644
index 905eb85fd..8dcb3d3fd 100644
--- a/t/op/stat.t
+++ b/t/op/stat.t
@@ -99,6 +99,7 @@ sleep 3 if $funky_FAT_timestamps;
......
......@@ -9,7 +9,7 @@ Patch-Name: debian/ld_run_path.diff
1 file changed, 2 insertions(+)
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm
index a6da855862..fb849b21ca 100644
index a6da85586..fb849b21c 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm
@@ -62,6 +62,8 @@ sub _unix_os2_ext {
......
......@@ -10,7 +10,7 @@ Patch-Name: debian/libnet_config_path.diff
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/cpan/libnet/lib/Net/Config.pm b/cpan/libnet/lib/Net/Config.pm
index 4f822a40a4..4b39781134 100644
index 4f822a40a..4b3978113 100644
--- a/cpan/libnet/lib/Net/Config.pm
+++ b/cpan/libnet/lib/Net/Config.pm
@@ -72,9 +72,8 @@ my %nc = (
......
......@@ -11,7 +11,7 @@ Patch-Name: debian/libperl_embed_doc.diff
1 file changed, 3 insertions(+)
diff --git a/lib/ExtUtils/Embed.pm b/lib/ExtUtils/Embed.pm
index e75e41f8c4..985c353457 100644
index e75e41f8c..985c35345 100644
--- a/lib/ExtUtils/Embed.pm
+++ b/lib/ExtUtils/Embed.pm
@@ -293,6 +293,9 @@ and extensions in your C/C++ applications.
......
......@@ -15,7 +15,7 @@ Bug-Debian: https://bugs.debian.org/247370
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm
index 1a3893c30b..8bb0ef2ee9 100644
index 1a3893c30..8bb0ef2ee 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm
@@ -1090,8 +1090,8 @@ END
......
......@@ -16,7 +16,7 @@ Patch-Name: debian/makemaker-pasthru.diff
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
index 4977baa15d..bb41b274b3 100644
index 4977baa15..bb41b274b 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
@@ -2955,7 +2955,7 @@ sub pasthru {
......
......@@ -24,7 +24,7 @@ Patch-Name: debian/mod_paths.diff
1 file changed, 58 insertions(+)
diff --git a/perl.c b/perl.c
index e6dfa8dc05..c7828e69ce 100644
index e6dfa8dc0..c7828e69c 100644
--- a/perl.c
+++ b/perl.c
@@ -4674,6 +4674,10 @@ S_init_perllib(pTHX)
......
......@@ -5,25 +5,25 @@ Subject: Don't install .packlist or perllocal.pod for perl or vendor
Patch-Name: debian/no_packlist_perllocal.diff
---
cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 35 +++----------------------
.../lib/ExtUtils/MM_Unix.pm | 35 ++-----------------
1 file changed, 3 insertions(+), 32 deletions(-)
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
index 780e390cd9..4977baa15d 100644
index 780e390cd..4977baa15 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
@@ -2233,11 +2233,6 @@ pure_perl_install :: all
@@ -2232,11 +2232,6 @@ pure_perl_install :: all
$(NOECHO) umask 022; $(MOD_INSTALL) \
};
push @m,
- push @m,
-q{ read "}.$self->catfile('$(PERL_ARCHLIB)','auto','$(FULLEXT)','.packlist').q{" \
- write "}.$self->catfile('$(DESTINSTALLARCHLIB)','auto','$(FULLEXT)','.packlist').q{" \
-} unless $self->{NO_PACKLIST};
-
- push @m,
push @m,
q{ "$(INST_LIB)" "$(DESTINSTALLPRIVLIB)" \
"$(INST_ARCHLIB)" "$(DESTINSTALLARCHLIB)" \
"$(INST_BIN)" "$(DESTINSTALLBIN)" \
@@ -2269,10 +2264,6 @@ q{ "$(INST_LIB)" "$(DESTINSTALLSITELIB)" \
pure_vendor_install :: all
$(NOECHO) umask 022; $(MOD_INSTALL) \
......
......@@ -15,7 +15,7 @@ Patch-Name: debian/patchlevel.diff
1 file changed, 3 insertions(+)
diff --git a/patchlevel.h b/patchlevel.h
index a5ca94bcc0..d126b0df1f 100644
index a5ca94bcc..d126b0df1 100644
--- a/patchlevel.h
+++ b/patchlevel.h
@@ -137,6 +137,9 @@ static const char * const local_patches[] = {
......
......@@ -15,7 +15,7 @@ Patch-Name: debian/perl5db-x-terminal-emulator.patch
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/perl5db.pl b/lib/perl5db.pl
index ecc49a814d..6eb03d7c11 100644
index ecc49a814..6eb03d7c1 100644
--- a/lib/perl5db.pl
+++ b/lib/perl5db.pl
@@ -6987,7 +6987,7 @@ properly set up.
......
......@@ -14,7 +14,7 @@ Patch-Name: debian/perldoc-pager.diff
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cpan/Pod-Perldoc/lib/Pod/Perldoc/ToTerm.pm b/cpan/Pod-Perldoc/lib/Pod/Perldoc/ToTerm.pm
index 9501d6310e..a5aedf6302 100644
index 9501d6310..a5aedf630 100644
--- a/cpan/Pod-Perldoc/lib/Pod/Perldoc/ToTerm.pm
+++ b/cpan/Pod-Perldoc/lib/Pod/Perldoc/ToTerm.pm
@@ -32,7 +32,7 @@ sub pager_configuration {
......
......@@ -26,7 +26,7 @@ Patch-Name: debian/perlivp.diff
1 file changed, 1 insertion(+)
diff --git a/utils/perlivp.PL b/utils/perlivp.PL
index 50d187a544..bd8091c548 100644
index 50d187a54..bd8091c54 100644
--- a/utils/perlivp.PL
+++ b/utils/perlivp.PL
@@ -155,6 +155,7 @@ my $INC_total = 0;
......
......@@ -17,7 +17,7 @@ Patch-Name: debian/prune_libs.diff
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/regen-configure/U/modified/Myinit.U b/regen-configure/U/modified/Myinit.U
index 0e3155aecd..e1d58c2077 100644
index 0e3155aec..e1d58c207 100644
--- a/regen-configure/U/modified/Myinit.U
+++ b/regen-configure/U/modified/Myinit.U
@@ -32,8 +32,7 @@
......@@ -31,7 +31,7 @@ index 0e3155aecd..e1d58c2077 100644
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'`
diff --git a/regen-configure/U/perl/End.U b/regen-configure/U/perl/End.U
index 352071422f..9716623ae0 100644
index 352071422..9716623ae 100644
--- a/regen-configure/U/perl/End.U
+++ b/regen-configure/U/perl/End.U
@@ -37,7 +37,7 @@ sunos*X4*)
......
......@@ -14,7 +14,7 @@ Patch-Name: debian/sh4_op_optimize_workaround.diff
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/cflags.SH b/cflags.SH
index c8231e64e8..3bb0c3e937 100755
index c8231e64e..3bb0c3e93 100755
--- a/cflags.SH
+++ b/cflags.SH
@@ -497,9 +497,9 @@ for file do
......
......@@ -20,7 +20,7 @@ Patch-Name: debian/squelch-locale-warnings.diff
2 files changed, 11 insertions(+)
diff --git a/locale.c b/locale.c
index 7653340477..aedd7da0c5 100644
index 765334047..aedd7da0c 100644
--- a/locale.c
+++ b/locale.c
@@ -3142,6 +3142,9 @@ Perl_init_i18nl10n(pTHX_ int printwarn)
......@@ -34,7 +34,7 @@ index 7653340477..aedd7da0c5 100644
|| (
/* disallow with "" or "0" */
diff --git a/pod/perllocale.pod b/pod/perllocale.pod
index a32f72c88e..e12b81cc4c 100644
index a32f72c88..e12b81cc4 100644
--- a/pod/perllocale.pod
+++ b/pod/perllocale.pod
@@ -1293,6 +1293,14 @@ B<NOTE>: C<PERL_BADLANG> only gives you a way to hide the warning message.
......
From 08c6582c9317ce531100e9a3f38d616aae55273d Mon Sep 17 00:00:00 2001
From: Niko Tyni <ntyni@debian.org>
Date: Sun, 2 Dec 2018 15:39:27 +0200
Subject: Disable Storable stacksize probing when PERL_STORABLE_DONT_PROBE is
set
Bug: https://rt.perl.org/Ticket/Display.html?id=133708
Bug-Debian: https://bugs.debian.org/914133
Patch-Name: debian/storable-disable-probing.diff
---
dist/Storable/Makefile.PL | 2 +-
dist/Storable/stacksize | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/dist/Storable/Makefile.PL b/dist/Storable/Makefile.PL
index 69efc82944..0b59df1a72 100644
--- a/dist/Storable/Makefile.PL
+++ b/dist/Storable/Makefile.PL
@@ -93,7 +93,7 @@ sub depend {
$extra_deps = ' Storable.pm';
}
my $whichperl;
- if ($Config::Config{usecrosscompile}) {
+ if ($Config::Config{usecrosscompile} || $ENV{PERL_STORABLE_DONT_PROBE}) {
$whichperl = '$(PERLRUN)';
}
else {
diff --git a/dist/Storable/stacksize b/dist/Storable/stacksize
index 14e0739734..3db62ec672 100644
--- a/dist/Storable/stacksize
+++ b/dist/Storable/stacksize
@@ -32,7 +32,7 @@ sub is_miniperl {
}
if (is_miniperl()) {
- if ($Config{usecrosscompile}) {
+ if ($Config{usecrosscompile} || $ENV{PERL_STORABLE_DONT_PROBE}) {
write_limits(500, 265);
exit;
}
......@@ -11,7 +11,7 @@ Patch-Name: debian/writable_site_dirs.diff
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
index 274e35c6fc..dbb8651a9f 100644
index 274e35c6f..dbb8651a9 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
@@ -2249,7 +2249,7 @@ q{ "$(INST_LIB)" "$(DESTINSTALLPRIVLIB)" \
......
......@@ -23,7 +23,7 @@ Patch-Name: fixes/autodie-scope.diff
create mode 100755 cpan/autodie/t/no-default.t
diff --git a/cpan/autodie/lib/Fatal.pm b/cpan/autodie/lib/Fatal.pm
index 16e1743474..2058abdab0 100644
index 16e174347..2058abdab 100644
--- a/cpan/autodie/lib/Fatal.pm
+++ b/cpan/autodie/lib/Fatal.pm
@@ -580,7 +580,12 @@ sub unimport {
......@@ -42,7 +42,7 @@ index 16e1743474..2058abdab0 100644
}
diff --git a/cpan/autodie/t/no-all.t b/cpan/autodie/t/no-all.t
new file mode 100755
index 0000000000..1a503f68be
index 000000000..1a503f68b
--- /dev/null
+++ b/cpan/autodie/t/no-all.t
@@ -0,0 +1,22 @@
......@@ -70,7 +70,7 @@ index 0000000000..1a503f68be
+1;
diff --git a/cpan/autodie/t/no-default.t b/cpan/autodie/t/no-default.t
new file mode 100755
index 0000000000..44d2acf27a
index 000000000..44d2acf27
--- /dev/null
+++ b/cpan/autodie/t/no-default.t
@@ -0,0 +1,23 @@
......
......@@ -12,7 +12,7 @@ Patch-Name: fixes/caretx-fallback.diff
1 file changed, 16 insertions(+), 12 deletions(-)
diff --git a/caretx.c b/caretx.c
index d758f730de..247708de8c 100644
index d758f730d..247708de8 100644
--- a/caretx.c
+++ b/caretx.c
@@ -56,7 +56,19 @@ Perl_set_caret_X(pTHX) {
......
......@@ -11,7 +11,7 @@ Patch-Name: fixes/cpan_web_link.diff
1 file changed, 3 insertions(+)
diff --git a/cpan/CPAN/lib/CPAN.pm b/cpan/CPAN/lib/CPAN.pm
index 1f69119e5f..c472effe18 100644
index 1f69119e5..c472effe1 100644
--- a/cpan/CPAN/lib/CPAN.pm
+++ b/cpan/CPAN/lib/CPAN.pm
@@ -3990,6 +3990,9 @@ your operating system) then typing C<cpan> in a console window will
......
......@@ -15,7 +15,7 @@ Patch-Name: fixes/document_makemaker_ccflags.diff
1 file changed, 4 insertions(+)
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
index 90d9eac49c..81bdc96649 100644
index 90d9eac49..81bdc9664 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
@@ -1838,6 +1838,10 @@ currently used by MakeMaker but may be handy in Makefile.PLs.
......
......@@ -25,7 +25,7 @@ Origin: upstream, https://perl5.git.perl.org/perl.git/commit/6c5080f25fa3dcede39
1 file changed, 14 insertions(+), 10 deletions(-)
diff --git a/ext/Errno/Errno_pm.PL b/ext/Errno/Errno_pm.PL
index 6a0031f0f7..9d1454c96a 100644
index 6a0031f0f..9d1454c96 100644
--- a/ext/Errno/Errno_pm.PL
+++ b/ext/Errno/Errno_pm.PL
@@ -2,7 +2,7 @@ use ExtUtils::MakeMaker;
......
......@@ -15,13 +15,13 @@ Bug: https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/pull/330
Bug-Debian: https://bugs.debian.org/913637
Patch-Name: fixes/eumm-usrmerge.diff
---
cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 22 +++++++++++++--
cpan/ExtUtils-MakeMaker/t/fixin.t | 33 +++++++++++++++++++++-
.../t/lib/MakeMaker/Test/Setup/BFD.pm | 3 ++
.../lib/ExtUtils/MM_Unix.pm | 22 +++++++++++--
cpan/ExtUtils-MakeMaker/t/fixin.t | 33 ++++++++++++++++++-
.../t/lib/MakeMaker/Test/Setup/BFD.pm | 3 ++
3 files changed, 55 insertions(+), 3 deletions(-)
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
index bb41b274b3..2e33d0a8ae 100644
index bb41b274b..2e33d0a8a 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
@@ -1243,8 +1243,8 @@ sub _fixin_replace_shebang {
......@@ -61,7 +61,7 @@ index bb41b274b3..2e33d0a8ae 100644
# Figure out how to invoke interpreter on this machine.
diff --git a/cpan/ExtUtils-MakeMaker/t/fixin.t b/cpan/ExtUtils-MakeMaker/t/fixin.t
index 061e456247..872b023c55 100644
index 061e45624..872b023c5 100644
--- a/cpan/ExtUtils-MakeMaker/t/fixin.t
+++ b/cpan/ExtUtils-MakeMaker/t/fixin.t
@@ -9,7 +9,7 @@ BEGIN {
......@@ -109,16 +109,16 @@ index 061e456247..872b023c55 100644
+ );
+}
diff --git a/cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/BFD.pm b/cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/BFD.pm
index 3d093fcfbd..cfe49e5465 100644
index 3d093fcfb..cfe49e546 100644
--- a/cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/BFD.pm
+++ b/cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/BFD.pm
@@ -54,6 +54,9 @@ program - this is a program
@@ -53,6 +53,9 @@ program - this is a program
=cut
1;
END
+END
+ 'Big-Dummy/usrbin/interp' => <<'END',
+This is a dummy interpreter
+END
END
'Big-Dummy/test.pl' => <<'END',
print "1..1\n";
From 428a86833a1016bd9f5e7db65e6b5aa3a6bbbabd Mon Sep 17 00:00:00 2001
From dae6313fd3a259c23bbb13daf6be5fe4863c665b Mon Sep 17 00:00:00 2001
From: Niko Tyni <ntyni@debian.org>
Date: Sun, 2 Dec 2018 11:57:01 +0200
Subject: Fix t/porting/manifest.t failures when run in a foreign git checkout
......@@ -18,7 +18,7 @@ Patch-Name: fixes/fix-manifest-failures.diff
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/t/test.pl b/t/test.pl
index 868911ce39..4d9af221b9 100644
index 868911ce3..4d9af221b 100644
--- a/t/test.pl
+++ b/t/test.pl
@@ -199,7 +199,9 @@ sub find_git_or_skip {
......
......@@ -12,7 +12,7 @@ Patch-Name: fixes/getopt-long-4.diff
1 file changed, 6 insertions(+)
diff --git a/cpan/Getopt-Long/lib/Getopt/Long.pm b/cpan/Getopt-Long/lib/Getopt/Long.pm
index 664c8b63c9..e4e3026db6 100644
index 664c8b63c..e4e3026db 100644
--- a/cpan/Getopt-Long/lib/Getopt/Long.pm
+++ b/cpan/Getopt-Long/lib/Getopt/Long.pm
@@ -1123,6 +1123,12 @@ sub FindOption ($$$$$) {
......
From 20a7d5ad4be9e71ca9a172993c802df57f44f5fb Mon Sep 17 00:00:00 2001
From 35986e17ae5d934ef75f5718fec9c7c0e4b54696 Mon Sep 17 00:00:00 2001
From: Tony Cook <tony@develop-help.com>
Date: Tue, 20 Nov 2018 15:30:20 +1100
Subject: (perl #133659) move argvout cleanup to a new function
......@@ -7,14 +7,14 @@ Bug-Debian: https://bugs.debian.org/914651
Origin: upstream
Patch-Name: fixes/inplace-editing-bugfix/part1.diff
---
doio.c | 62 ++++++++++++++++++++++++++++++++++++++------------------------
doio.c | 62 ++++++++++++++++++++++++++++++++++---------------------
embed.fnc | 1 +
embed.h | 1 +
proto.h | 3 +++
4 files changed, 43 insertions(+), 24 deletions(-)
diff --git a/doio.c b/doio.c
index 309326b27a..39f0c42e7e 100644
index 309326b27..39f0c42e7 100644
--- a/doio.c
+++ b/doio.c
@@ -1526,31 +1526,14 @@ S_dir_unchanged(pTHX_ const char *orig_pv, MAGIC *mg) {
......@@ -96,7 +96,7 @@ index 309326b27a..39f0c42e7e 100644
}
else {
diff --git a/embed.fnc b/embed.fnc
index 454a380e4c..e762fe1eec 100644
index 454a380e4..e762fe1ee 100644
--- a/embed.fnc
+++ b/embed.fnc
@@ -440,6 +440,7 @@ p |bool|do_exec3 |NN const char *incmd|int fd|int do_report
......@@ -108,7 +108,7 @@ index 454a380e4c..e762fe1eec 100644
#if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM)
: Defined in doio.c, used only in pp_sys.c
diff --git a/embed.h b/embed.h
index fb93ebc1cb..a5416a1148 100644
index fb93ebc1c..a5416a114 100644
--- a/embed.h
+++ b/embed.h
@@ -1746,6 +1746,7 @@
......@@ -120,7 +120,7 @@ index fb93ebc1cb..a5416a1148 100644
#define ingroup(a,b) S_ingroup(aTHX_ a,b)
#define openn_cleanup(a,b,c,d,e,f,g,h,i,j,k,l,m) S_openn_cleanup(aTHX_ a,b,c,d,e,f,g,h,i,j,k,l,m)
diff --git a/proto.h b/proto.h
index c91141b9e8..66bb29b132 100644
index c91141b9e..66bb29b13 100644
--- a/proto.h
+++ b/proto.h
@@ -4723,6 +4723,9 @@ STATIC void S_deb_stack_n(pTHX_ SV** stack_base, I32 stack_min, I32 stack_max, I
......
From b8f21ea4b01d14781b0d0ce2e7ddba864b33cab0 Mon Sep 17 00:00:00 2001
From 8888278c06ef34704f88e93bc161f6b65d359550 Mon Sep 17 00:00:00 2001
From: Tony Cook <tony@develop-help.com>
Date: Tue, 20 Nov 2018 16:43:43 +1100
Subject: (perl #133659) tests for global destruction handling of inplace
......@@ -12,7 +12,7 @@ Patch-Name: fixes/inplace-editing-bugfix/part2.diff
1 file changed, 27 insertions(+), 1 deletion(-)
diff --git a/t/io/inplace.t b/t/io/inplace.t
index 98159e06bf..ac50f1ab77 100644
index 98159e06b..ac50f1ab7 100644
--- a/t/io/inplace.t
+++ b/t/io/inplace.t
@@ -5,7 +5,7 @@ require './test.pl';
......
From 485dde7bb62effcc8b6575ad6f493ae09193cc3e Mon Sep 17 00:00:00 2001
From f34bea3ca76ccc171a3460e32f0e76f11a95856d Mon Sep 17 00:00:00 2001
From: Tony Cook <tony@develop-help.com>
Date: Wed, 21 Nov 2018 10:05:27 +1100
Subject: (perl #133659) make an in-place edit successful if the exit status is
......@@ -31,7 +31,7 @@ Patch-Name: fixes/inplace-editing-bugfix/part3.diff
3 files changed, 28 insertions(+), 23 deletions(-)
diff --git a/doio.c b/doio.c
index 39f0c42e7e..f8be31c84a 100644
index 39f0c42e7..f8be31c84 100644
--- a/doio.c
+++ b/doio.c
@@ -1173,34 +1173,39 @@ S_argvout_free(pTHX_ SV *io, MAGIC *mg) {
......@@ -95,7 +95,7 @@ index 39f0c42e7e..f8be31c84a 100644
}
#ifdef ARGV_USE_ATFUNCTIONS
diff --git a/t/io/inplace.t b/t/io/inplace.t
index ac50f1ab77..0403cd9250 100644
index ac50f1ab7..0403cd925 100644
--- a/t/io/inplace.t
+++ b/t/io/inplace.t
@@ -96,7 +96,7 @@ SKIP:
......@@ -108,7 +108,7 @@ index ac50f1ab77..0403cd9250 100644
our $file = tempfile() ;
diff --git a/t/run/switches.t b/t/run/switches.t
index 7ccef1e063..594cad6e7f 100644
index 7ccef1e06..594cad6e7 100644
--- a/t/run/switches.t
+++ b/t/run/switches.t
@@ -429,7 +429,7 @@ __EOF__
......
......@@ -12,7 +12,7 @@ Origin: upstream, https://perl5.git.perl.org/perl.git/commit/a3c63a9402266c2f0e3
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/doio.c b/doio.c
index 16daf9fd11..309326b27a 100644
index 16daf9fd1..309326b27 100644
--- a/doio.c
+++ b/doio.c
@@ -1461,7 +1461,7 @@ Perl_nextargv(pTHX_ GV *gv, bool nomagicopen)
......
......@@ -11,7 +11,7 @@ Patch-Name: fixes/math_complex_doc_angle_units.diff
1 file changed, 5 insertions(+)
diff --git a/cpan/Math-Complex/lib/Math/Trig.pm b/cpan/Math-Complex/lib/Math/Trig.pm
index acad31ff49..bc7ac780e9 100644
index acad31ff4..bc7ac780e 100644
--- a/cpan/Math-Complex/lib/Math/Trig.pm
+++ b/cpan/Math-Complex/lib/Math/Trig.pm
@@ -263,6 +263,11 @@ core Perl which defines only the C<sin()> and C<cos()>. The constant
......
......@@ -11,7 +11,7 @@ Patch-Name: fixes/math_complex_doc_great_circle.diff
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cpan/Math-Complex/lib/Math/Trig.pm b/cpan/Math-Complex/lib/Math/Trig.pm
index 1d9612a41c..efc2ff80ac 100644
index 1d9612a41..efc2ff80a 100644
--- a/cpan/Math-Complex/lib/Math/Trig.pm
+++ b/cpan/Math-Complex/lib/Math/Trig.pm
@@ -608,7 +608,7 @@ or the midpoint if you know the end points:
......
......@@ -11,7 +11,7 @@ Patch-Name: fixes/math_complex_doc_see_also.diff
1 file changed, 2 insertions(+)
diff --git a/cpan/Math-Complex/lib/Math/Trig.pm b/cpan/Math-Complex/lib/Math/Trig.pm
index efc2ff80ac..acad31ff49 100644
index efc2ff80a..acad31ff4 100644
--- a/cpan/Math-Complex/lib/Math/Trig.pm
+++ b/cpan/Math-Complex/lib/Math/Trig.pm
@@ -743,6 +743,8 @@ an answer instead of giving a fatal runtime error.
......
......@@ -11,7 +11,7 @@ Patch-Name: fixes/memoize-pod.diff
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/cpan/Memoize/Memoize.pm b/cpan/Memoize/Memoize.pm
index f4e6522d48..2f28b361f8 100644
index f4e6522d4..2f28b361f 100644
--- a/cpan/Memoize/Memoize.pm
+++ b/cpan/Memoize/Memoize.pm
@@ -752,6 +752,8 @@ cache that was populated by the first call. C<complicated> ends up
......
......@@ -53,7 +53,7 @@ Patch-Name: fixes/memoize_storable_nstore.diff
2 files changed, 21 insertions(+), 5 deletions(-)
diff --git a/cpan/Memoize/Memoize/Storable.pm b/cpan/Memoize/Memoize/Storable.pm
index 1314797297..87876f227e 100644
index 131479729..87876f227 100644
--- a/cpan/Memoize/Memoize/Storable.pm
+++ b/cpan/Memoize/Memoize/Storable.pm
@@ -55,7 +55,7 @@ sub DESTROY {
......@@ -66,7 +66,7 @@ index 1314797297..87876f227e 100644
} else {
Storable::store($self->{H}, $self->{FILENAME});
diff --git a/cpan/Memoize/t/tie_storable.t b/cpan/Memoize/t/tie_storable.t
index de3b8dc26b..a62423850e 100644
index de3b8dc26..a62423850 100644
--- a/cpan/Memoize/t/tie_storable.t
+++ b/cpan/Memoize/t/tie_storable.t
@@ -31,18 +31,34 @@ if ($@) {
......
From 275485f8faa4e3b7af3c838ea40b237ae5ef4b35 Mon Sep 17 00:00:00 2001
From: Leon Timmermans <fawaka@gmail.com>
Date: Sat, 15 Dec 2018 19:08:41 +0100
Subject: Always mark pipe in pipe-open as inherit-on-exec
Since 2cdf406a a lot of file descriptors are opened close-on-exec,
including the pipe that is passed to the child process in a pipe-open.
This is usually fine because a dup2 follows to rename that handle to
stdin/stdout that will set the inherit-on-exec. However, if the pipe
descriptor already has the right value, for example because stdin was
closed, then no dup2 happens and hence it's still marked as
close-on-exec right when we want to perform an exec.
This patch explicitly marks such a handle as inherit-on-exec, to ensure
it will be open for the child process.
Origin: upstream, https://perl5.git.perl.org/perl.git/commit/c6fe5b981b942ddabb23ed4b7602067e906e6d88
Bug: https://rt.perl.org/Public/Bug/Display.html?id=133726
Bug-Debian: https://bugs.debian.org/916313
Patch-Name: fixes/pipe-inherit-on-exec/part1.diff
---
util.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/util.c b/util.c
index 842cc953e..17dfda9bc 100644
--- a/util.c
+++ b/util.c
@@ -2441,8 +2441,10 @@ Perl_my_popen(pTHX_ const char *cmd, const char *mode)
if (p[THAT] != (*mode == 'r')) /* if dup2() didn't close it */
PerlLIO_close(p[THAT]);
}
- else
+ else {
+ setfd_cloexec_or_inhexec_by_sysfdness(p[THIS]);
PerlLIO_close(p[THAT]);
+ }
#ifndef OS2
if (doexec) {
#if !defined(HAS_FCNTL) || !defined(F_SETFD)
From 6dd4a8a26654a282da120b402eb53ed9ffa59cb1 Mon Sep 17 00:00:00 2001
From: Leon Timmermans <fawaka@gmail.com>
Date: Sun, 16 Dec 2018 01:05:06 +0100
Subject: Always mark pipe in list pipe-open as inherit-on-exec
This is the my_popen_list counterpart of
c6fe5b981b942ddabb23ed4b7602067e906e6d88
Origin: upstream, https://perl5.git.perl.org/perl.git/commit/30c869b87739b56280daca3cd44b0588144747b7
Bug: https://rt.perl.org/Public/Bug/Display.html?id=133726
Bug-Debian: https://bugs.debian.org/916313
Patch-Name: fixes/pipe-inherit-on-exec/part2.diff
---
util.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/util.c b/util.c
index 17dfda9bc..25b5c6601 100644
--- a/util.c
+++ b/util.c
@@ -2302,8 +2302,10 @@ Perl_my_popen_list(pTHX_ const char *mode, int n, SV **args)
if (p[THAT] != (*mode == 'r')) /* if dup2() didn't close it */
PerlLIO_close(p[THAT]); /* close parent's end of _the_ pipe */
}
- else
+ else {
+ setfd_cloexec_or_inhexec_by_sysfdness(p[THIS]);
PerlLIO_close(p[THAT]); /* close parent's end of _the_ pipe */
+ }
#if !defined(HAS_FCNTL) || !defined(F_SETFD)
/* No automatic close - do it by hand */
# ifndef NOFILE
......@@ -8,12 +8,12 @@ site directories.
Patch-Name: fixes/respect_umask.diff
---
cpan/ExtUtils-Install/lib/ExtUtils/Install.pm | 18 +++++++++---------
cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 18 +++++++++---------
cpan/ExtUtils-Install/lib/ExtUtils/Install.pm | 18 +++++++++---------
.../ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 18 +++++++++---------
2 files changed, 18 insertions(+), 18 deletions(-)
diff --git a/cpan/ExtUtils-Install/lib/ExtUtils/Install.pm b/cpan/ExtUtils-Install/lib/ExtUtils/Install.pm
index 047c007145..cd7e4f234c 100644
index 047c00714..cd7e4f234 100644
--- a/cpan/ExtUtils-Install/lib/ExtUtils/Install.pm
+++ b/cpan/ExtUtils-Install/lib/ExtUtils/Install.pm
@@ -463,7 +463,7 @@ sub _can_write_dir {
......@@ -88,7 +88,7 @@ index 047c007145..cd7e4f234c 100644
if ($need_filtering) {
run_filter($pm_filter, $from, $to);
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
index fe53be12ef..274e35c6fc 100644
index fe53be12e..274e35c6f 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
@@ -2229,7 +2229,7 @@ doc__install : doc_site_install
......
This diff is collapsed.
From 66cf7a04f70df89ae556be1923a801f0d47e663d Mon Sep 17 00:00:00 2001
From f9647af5e13c7faf414380cc2bb4ea0801c0bc4b Mon Sep 17 00:00:00 2001
From: Sawyer X <xsawyerx@cpan.org>
Date: Fri, 27 Apr 2018 20:35:42 +0300
Subject: Storable: fix for strawberry build failures:
......@@ -6,13 +6,13 @@ Subject: Storable: fix for strawberry build failures:
Provided by Graham @haarg Knop.
Origin: upstream, https://perl5.git.perl.org/perl.git/commit/3f4cad1bbe7c6238adba5abb2415775a74eded4d
Patch-Name: fixes/storable-prereq.diff
Patch-Name: fixes/storable-probing/prereq1.diff
---
dist/Storable/Makefile.PL | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/dist/Storable/Makefile.PL b/dist/Storable/Makefile.PL
index 697750566d..4f02132776 100644
index 697750566..4f0213277 100644
--- a/dist/Storable/Makefile.PL
+++ b/dist/Storable/Makefile.PL
@@ -14,10 +14,12 @@ use File::Spec;
......
From b66b0405f4b6cc045bc87910f4be54a7323e56e7 Mon Sep 17 00:00:00 2001
From b063f2fa567d7f06c3f1fee2bf11166c3511135a Mon Sep 17 00:00:00 2001
From: Tony Cook <tony@develop-help.com>
Date: Mon, 30 Jul 2018 21:00:52 +1000
Subject: (perl #133411) don't try to load Storable with -Dusecrosscompile
Origin: https://perl5.git.perl.org/perl.git/commit/edf639fce3e8c8852ee4179ab902b357b1deba98
Bug: https://rt.perl.org/Public/Bug/Display.html?id=133411
Patch-Name: fixes/storable-crosscompile.diff
Patch-Name: fixes/storable-probing/prereq2.diff
---
dist/Storable/Makefile.PL | 9 ++++++++-
dist/Storable/stacksize | 10 +++++++---
2 files changed, 15 insertions(+), 4 deletions(-)
diff --git a/dist/Storable/Makefile.PL b/dist/Storable/Makefile.PL
index 4f02132776..69efc82944 100644
index 4f0213277..69efc8294 100644
--- a/dist/Storable/Makefile.PL
+++ b/dist/Storable/Makefile.PL
@@ -92,11 +92,18 @@ sub depend {
......@@ -36,7 +36,7 @@ index 4f02132776..69efc82944 100644
release : dist
git tag \$(VERSION)
diff --git a/dist/Storable/stacksize b/dist/Storable/stacksize
index 7abd3a84cc..14e0739734 100644
index 7abd3a84c..14e073973 100644
--- a/dist/Storable/stacksize
+++ b/dist/Storable/stacksize
@@ -7,6 +7,9 @@ use Cwd;
......
......@@ -49,12 +49,12 @@ Bug: https://rt.perl.org/Public/Bug/Display.html?id=133326
Bug-Debian: https://bugs.debian.org/912900
Patch-Name: fixes/storable-recursion.diff
---
dist/Storable/Storable.xs | 98 ++++++++++++++++++++++++++++++-----------------
dist/Storable/t/recurse.t | 16 +++++++-
dist/Storable/Storable.xs | 98 +++++++++++++++++++++++++--------------
dist/Storable/t/recurse.t | 16 ++++++-
2 files changed, 77 insertions(+), 37 deletions(-)
diff --git a/dist/Storable/Storable.xs b/dist/Storable/Storable.xs
index 6a90e24814..f6df32b121 100644
index 6a90e2481..f6df32b12 100644
--- a/dist/Storable/Storable.xs
+++ b/dist/Storable/Storable.xs
@@ -418,6 +418,24 @@ typedef struct stcxt {
......@@ -259,7 +259,7 @@ index 6a90e24814..f6df32b121 100644
--cxt->recur_depth;
}
diff --git a/dist/Storable/t/recurse.t b/dist/Storable/t/recurse.t
index fa8be0b374..63fde90fdf 100644
index fa8be0b37..63fde90fd 100644
--- a/dist/Storable/t/recurse.t
+++ b/dist/Storable/t/recurse.t
@@ -20,7 +20,7 @@ use Storable qw(freeze thaw dclone);
......
......@@ -15,7 +15,7 @@ Patch-Name: fixes/time-local-2020.diff
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/cpan/Time-Local/t/Local.t b/cpan/Time-Local/t/Local.t
index 634139695f..e28c6d2129 100644
index 634139695..e28c6d212 100644
--- a/cpan/Time-Local/t/Local.t
+++ b/cpan/Time-Local/t/Local.t
@@ -96,7 +96,7 @@ SKIP: {
......
......@@ -48,10 +48,12 @@ fixes/eumm-usrmerge.diff
fixes/errno-include-path.diff
fixes/kfreebsd-renameat.diff
fixes/time-local-2020.diff
fixes/storable-prereq.diff
fixes/storable-crosscompile.diff
debian/storable-disable-probing.diff
fixes/inplace-editing-bugfix/part1.diff
fixes/inplace-editing-bugfix/part2.diff
fixes/inplace-editing-bugfix/part3.diff
fixes/fix-manifest-failures.diff
fixes/storable-probing/prereq1.diff
fixes/storable-probing/prereq2.diff
fixes/storable-probing/disable-probing.diff
fixes/pipe-inherit-on-exec/part1.diff
fixes/pipe-inherit-on-exec/part2.diff
......@@ -103,11 +103,6 @@ export BUILD_BZIP2=0
export BZIP2_INCLUDE=/usr/include
export BZIP2_LIB=/usr/lib
# for dist/Storable
# this is a possibly temporary Debian specific hack to disable the
# stacksize probing at build time (see #914133).
export PERL_STORABLE_DONT_PROBE=1
# disable tests declared upstream as not useful for packaging
export PERL_BUILD_PACKAGING=1
......
......@@ -12,15 +12,7 @@ use Config;
use File::Copy qw(move copy);
use File::Spec;
unlink "lib/Storable/Limit.pm";
my $limit_pm = File::Spec->catfile('lib', 'Storable', 'Limit.pm');
my $pm = { 'Storable.pm' => '$(INST_ARCHLIB)/Storable.pm' };
unless ($ENV{PERL_CORE}) {
# the core Makefile takes care of this for core builds
$pm->{$limit_pm} = '$(INST_ARCHLIB)/Storable/Limit.pm';
}
WriteMakefile(
NAME => 'Storable',
......@@ -83,27 +75,7 @@ sub xlinkext {
}
sub depend {
my $extra_deps = "";
my $options = "";
if ($ENV{PERL_CORE}) {
$options = "--core";
}
else {
# blib.pm needs arch/lib
$extra_deps = ' Storable.pm';
}
my $whichperl;
if ($Config::Config{usecrosscompile} || $ENV{PERL_STORABLE_DONT_PROBE}) {
$whichperl = '$(PERLRUN)';
}
else {
$whichperl = '$(FULLPERLRUNINST)';
}
my $linktype = uc($_[0]->{LINKTYPE});
"
$limit_pm : stacksize \$(INST_$linktype)$extra_deps
\$(MKPATH) \$(INST_LIB)
$whichperl stacksize $options
release : dist
git tag \$(VERSION)
......@@ -113,18 +85,6 @@ release : dist
"
}
sub test {
my ($self, %attr) = @_;
my $out = $self->SUPER::test(%attr);
if ($ENV{PERL_CORE}) {
$out =~ s!^(test(?:db)?_(?:static|dynamic)\b.*)!$1 $limit_pm!gm;
}
$out;
}
sub postamble {
'
all :: Storable.pm
......
......@@ -32,8 +32,6 @@ our $VERSION = '3.08';
our $recursion_limit;
our $recursion_limit_hash;
do "Storable/Limit.pm";
$recursion_limit = 512
unless defined $recursion_limit;
$recursion_limit_hash = 256
......@@ -941,13 +939,13 @@ There are a few things you need to know, however:
=item *
Since Storable 3.05 we probe for the stack recursion limit for references,
From Storable 3.05 to 3.13 we probed for the stack recursion limit for references,
arrays and hashes to a maximal depth of ~1200-35000, otherwise we might
fall into a stack-overflow. On JSON::XS this limit is 512 btw. With
references not immediately referencing each other there's no such
limit yet, so you might fall into such a stack-overflow segfault.
This probing and the checks performed have some limitations:
This probing and the checks we performed have some limitations:
=over
......@@ -955,7 +953,9 @@ This probing and the checks performed have some limitations:
the stack size at build time might be different at run time, eg. the
stack size may have been modified with ulimit(1). If it's larger at
run time Storable may fail the freeze() or thaw() unnecessarily.
run time Storable may fail the freeze() or thaw() unnecessarily. If
it's larger at build time Storable may segmentation fault when
processing a deep structure at run time.
=item *
......@@ -970,6 +970,8 @@ stack without triggering Storable's recursion protection.
=back
So these now have simple defaults rather than probing at build-time.
You can control the maximum array and hash recursion depths by
modifying C<$Storable::recursion_limit> and
C<$Storable::recursion_limit_hash> respectively. Either can be set to
......
#!/usr/bin/perl
# binary search maximum stack depth for arrays and hashes
# and store it in lib/Storable/Limit.pm
# and report it to stdout as code to set the limits
use Config;
use Cwd;
use File::Spec;
use strict;
-d "lib" or mkdir "lib";
-d "lib/Storable" or mkdir "lib/Storable";
my $fn = "lib/Storable/Limit.pm";
my $ptrsize = $Config{ptrsize};
my ($bad1, $bad2) = (65001, 25000);
sub QUIET () {
(defined $ENV{MAKEFLAGS} and $ENV{MAKEFLAGS} =~ /\b(s|silent|quiet)\b/
and !defined($ENV{TRAVIS}))
and !defined($ENV{TRAVIS})) || @ARGV && $ARGV[0] eq "-q"
? 1 : 0
}
sub PARALLEL () {
......@@ -32,11 +28,7 @@ sub is_miniperl {
}
if (is_miniperl()) {
if ($Config{usecrosscompile} || $ENV{PERL_STORABLE_DONT_PROBE}) {
write_limits(500, 265);
exit;
}
die "Should not run during miniperl\n";
die "Should not run using miniperl\n";
}
my $prefix = "";
if ($^O eq "MSWin32") {
......@@ -51,58 +43,28 @@ elsif (system("ulimit -c 0 ;") == 0) {
# try to prevent core dumps
$prefix = "ulimit -c 0 ; ";
}
if (@ARGV and $ARGV[0] eq '--core') {
$ENV{PERL_CORE} = 1;
}
my $PERL = $^X;
if ($ENV{PERL_CORE}) {
my $path;
my $ldlib = $Config{ldlibpthname};
if (-d 'dist/Storable') {
chdir 'dist/Storable';
$PERL = "../../$PERL" unless $PERL =~ m|^/|;
}
if ($ldlib) {
$path = getcwd()."/../..";
}
if ($^O eq 'MSWin32' and -d '../dist/Storable') {
chdir '..\dist\Storable';
$PERL = "..\\..\\$PERL" unless $PERL =~ /^[A-Za-z]:\\/;
}
$PERL = "\"$PERL\"" if $PERL =~ / /;
if ($ldlib and $ldlib ne 'PATH') {
$PERL = "$ldlib=$path $PERL";
}
}
if ($^O eq "MSWin32") {
require Win32;
my ($str, $major, $minor) = Win32::GetOSVersion();
if ($major < 6 || $major == 6 && $minor < 1) {
print "Using defaults for older Win32\n";
print "# Using defaults for older Win32\n";
write_limits(500, 256);
exit;
}
}
my ($n, $good, $bad, $found) =
(65000, 100, $bad1, undef);
print "probe for max. stack sizes...\n" unless QUIET;
print "# probe for max. stack sizes...\n" unless QUIET;
# -I. since we're run before pm_to_blib (which is going to copy the
# file we create) and need to load our Storable.pm, not the already
# installed Storable.pm
my $mblib = '-Mblib -I.';
if ($ENV{PERL_CORE}) {
if ($^O eq 'MSWin32') {
$mblib = '-I..\..\lib\auto -I..\..\lib';
} else {
$mblib = '-I../../lib/auto -I../../lib';
}
my $mblib = '';
if (-d 'blib') {
$mblib = '-Mblib -I.';
}
if (PARALLEL) {
# problem with parallel builds. wait for INST_DYNAMIC linking to be done.
# the problem is the RM_F INST_DYNAMIC race.
print "parallel build race - wait for linker ...\n" unless QUIET;
sleep(2.0);
elsif (-f "Configure") {
$mblib = '-Ilib';
}
sub cmd {
......@@ -117,7 +79,7 @@ sub cmd {
sub good {
my $i = shift; # this passed
my $j = $i + abs(int(($bad - $i) / 2));
print "Storable: determining recursion limit: $i passed, try more $j ...\n" unless QUIET;
print "# Storable: determining recursion limit: $i passed, try more $j ...\n" unless QUIET;
$good = $i;
if ($j <= $i) {
$found++;
......@@ -128,7 +90,7 @@ sub good {
sub bad {
my $i = shift; # this failed
my $j = $i - abs(int(($i - $good) / 2));
print "Storable: determining recursion limit: $i too big, try less $j ...\n" unless QUIET;
print "# Storable: determining recursion limit: $i too big, try less $j ...\n" unless QUIET;
$bad = $i;
if ($j >= $i) {
$j = $good;
......@@ -162,7 +124,7 @@ while (!$found) {
$n = bad($n);
}
}
print "MAX_DEPTH = $n\n" unless QUIET;
print "# MAX_DEPTH = $n\n" unless QUIET;
my $max_depth = $n;
($n, $good, $bad, $found) =
......@@ -186,13 +148,13 @@ if ($max_depth == $bad1-1
and $n == $bad2-1)
{
# more likely the shell. travis docker ubuntu, mingw e.g.
print "Error: Apparently your system(SHELLSTRING) cannot catch stack overflows\n"
print "# Apparently your system(SHELLSTRING) cannot catch stack overflows\n"
unless QUIET;
$max_depth = 512;
$n = 256;
print "MAX_DEPTH = $max_depth\n" unless QUIET;
}
print "MAX_DEPTH_HASH = $n\n" unless QUIET;
print "# MAX_DEPTH_HASH = $n\n" unless QUIET;
my $max_depth_hash = $n;
# Previously this calculation was done in the macro, calculate it here
......@@ -203,7 +165,7 @@ my $max_depth_hash = $n;
# several apparently random failures here, eg. working in one
# configuration, but not in a very similar configuration.
$max_depth = int(0.6 * $max_depth);
$max_depth_hash = int(0.6 * $max_depth);
$max_depth_hash = int(0.6 * $max_depth_hash);
my $stack_reserve = $^O eq "MSWin32" ? 32 : 16;
if ($] ge "5.016" && !($^O eq "cygwin" && $ptrsize == 8)) {
......@@ -221,16 +183,11 @@ write_limits($max_depth, $max_depth_hash);
sub write_limits {
my ($max_depth, $max_depth_hash) = @_;
my $f;
open $f, ">", $fn or die "$fn $!";
print $f <<EOS;
print <<EOS;
# bisected by stacksize
\$Storable::recursion_limit = $max_depth
unless defined \$Storable::recursion_limit;
\$Storable::recursion_limit_hash = $max_depth_hash
unless defined \$Storable::recursion_limit_hash;
1;
EOS
close $f
or die "Failed to close $fn: $!\n";
}
......@@ -318,9 +318,11 @@ is($refcount_ok, 1, "check refcount");
# Small 64bit systems fail with 1200 (c++ debugging), with gcc 3000.
# Optimized 64bit allows up to 33.000 recursion depth.
# with asan the limit is 255 though.
local $Storable::recursion_limit = 30;
local $Storable::recursion_limit_hash = 20;
sub MAX_DEPTH () { Storable::stack_depth() }
sub MAX_DEPTH_HASH () { Storable::stack_depth_hash() }
sub OVERFLOW () { 35000 }
{
my $t;
print "# max depth ", MAX_DEPTH, "\n";
......
......@@ -2302,8 +2302,10 @@ Perl_my_popen_list(pTHX_ const char *mode, int n, SV **args)
if (p[THAT] != (*mode == 'r')) /* if dup2() didn't close it */
PerlLIO_close(p[THAT]); /* close parent's end of _the_ pipe */
}
else
else {
setfd_cloexec_or_inhexec_by_sysfdness(p[THIS]);
PerlLIO_close(p[THAT]); /* close parent's end of _the_ pipe */
}
#if !defined(HAS_FCNTL) || !defined(F_SETFD)
/* No automatic close - do it by hand */
# ifndef NOFILE
......@@ -2441,8 +2443,10 @@ Perl_my_popen(pTHX_ const char *cmd, const char *mode)
if (p[THAT] != (*mode == 'r')) /* if dup2() didn't close it */
PerlLIO_close(p[THAT]);
}
else
else {
setfd_cloexec_or_inhexec_by_sysfdness(p[THIS]);
PerlLIO_close(p[THAT]);
}
#ifndef OS2
if (doexec) {
#if !defined(HAS_FCNTL) || !defined(F_SETFD)
......
......@@ -1168,7 +1168,7 @@ CFG_VARS = \
.PHONY: all info
all : info rebasePE Extensions_nonxs $(PERLSTATIC) PostExt
all : info rebasePE Extensions_nonxs $(PERLSTATIC)
info :
@echo # CCTYPE=$(CCTYPE)
......@@ -1612,16 +1612,6 @@ Extensions_clean :
Extensions_realclean :
-if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(PLMAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --all --target=realclean
PostExt : ..\lib\Storable\Limit.pm
# we need the exe, perl(ver).dll, and the Exporter, Storable, Win32 extensions
# rebasePE most of that, including adjustment for static builds, so we
# just need non-xs extensions
..\lib\Storable\Limit.pm : rebasePE Extensions_nonxs
$(PLMAKE) -C ..\dist\Storable lib\Storable\Limit.pm
if not exist ..\lib\Storable mkdir ..\lib\Storable
copy ..\dist\Storable\lib\Storable\Limit.pm ..\lib\Storable\Limit.pm
# all PE files need to be built by the time this target runs, PP files can still
# be running in parallel like UNIDATAFILES, this target a placeholder for the
# future
......
......@@ -939,7 +939,7 @@ CFG_VARS = \
#
all : .\config.h ..\git_version.h $(GLOBEXE) $(CONFIGPM) \
$(UNIDATAFILES) MakePPPort $(PERLEXE) Extensions_nonxs Extensions PostExt \
$(UNIDATAFILES) MakePPPort $(PERLEXE) Extensions_nonxs Extensions \
$(PERLSTATIC)
@echo Everything is up to date. '$(MAKE_BARE) test' to run test suite.
......@@ -1225,13 +1225,6 @@ Extensions_clean:
Extensions_realclean:
-if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --all --target=realclean
PostExt: ..\lib\Storable\Limit.pm
..\lib\Storable\Limit.pm: $(PERLEXE) Extensions
cd ..\dist\Storable && $(MAKE) lib\Storable\Limit.pm
if not exist ..\lib\Storable mkdir ..\lib\Storable
copy ..\dist\Storable\lib\Storable\Limit.pm ..\lib\Storable\Limit.pm
#-------------------------------------------------------------------------------
doc: $(PERLEXE) ..\pod\perltoc.pod
......@@ -1310,7 +1303,6 @@ distclean: realclean
-del /f $(LIBDIR)\Time\HiRes.pm
-del /f $(LIBDIR)\Unicode\Normalize.pm
-del /f $(LIBDIR)\Math\BigInt\FastCalc.pm
-del /f $(LIBDIR)\Storable.pm $(LIBDIR)\Storable\Limit.pm
-del /f $(LIBDIR)\Win32.pm
-del /f $(LIBDIR)\Win32CORE.pm
-del /f $(LIBDIR)\Win32API\File.pm
......
......@@ -1139,7 +1139,7 @@ CFG_VARS = \
# Top targets
#
all : CHECKDMAKE rebasePE Extensions_nonxs $(PERLSTATIC) PostExt
all : CHECKDMAKE rebasePE Extensions_nonxs $(PERLSTATIC)
..\regcomp$(o) : ..\regnodes.h ..\regcharclass.h
......@@ -1563,17 +1563,6 @@ rebasePE : Extensions $(PERLDLL) $(NORMALIZE_DYN) $(PERLEXE)
.ENDIF
$(NOOP)
PostExt : ..\lib\Storable\Limit.pm
$(NOOP)
# we need the exe, perl(ver).dll, and the Exporter, Storable, Win32 extensions
# rebasePE most of that, including adjustment for static builds, so we
# just need non-xs extensions
..\lib\Storable\Limit.pm : rebasePE Extensions_nonxs
cd ..\dist\Storable && $(MAKE) lib\Storable\Limit.pm
if not exist ..\lib\Storable mkdir ..\lib\Storable
copy ..\dist\Storable\lib\Storable\Limit.pm ..\lib\Storable\Limit.pm
#-------------------------------------------------------------------------------
......@@ -1648,7 +1637,7 @@ distclean: realclean
-del /f $(LIBDIR)\Time\HiRes.pm
-del /f $(LIBDIR)\Unicode\Normalize.pm
-del /f $(LIBDIR)\Math\BigInt\FastCalc.pm
-del /f $(LIBDIR)\Storable.pm $(LIBDIR)\Storable\Limit.pm
-del /f $(LIBDIR)\Storable.pm
-del /f $(LIBDIR)\Win32.pm
-del /f $(LIBDIR)\Win32CORE.pm
-del /f $(LIBDIR)\Win32API\File.pm
......