summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--[-rwxr-xr-x]Cross/Makefile-cross-SH0
-rw-r--r--[-rwxr-xr-x]Cross/build-arm-n770-sh0
-rw-r--r--[-rwxr-xr-x]Cross/cflags-cross-arm0
-rw-r--r--MANIFEST4
-rw-r--r--[-rwxr-xr-x]Porting/GitUtils.pm0
-rw-r--r--[-rwxr-xr-x]Porting/Maintainers.pl0
-rw-r--r--[-rwxr-xr-x]Porting/bump-perl-version0
-rw-r--r--[-rwxr-xr-x]Porting/cherrymaint0
-rw-r--r--[-rwxr-xr-x]Porting/config_h.pl0
-rw-r--r--[-rwxr-xr-x]Porting/core-cpan-diff0
-rw-r--r--[-rwxr-xr-x]Porting/corelist-perldelta.pl0
-rw-r--r--Porting/exec-bit.txt26
-rwxr-xr-x[-rw-r--r--]Porting/findrfuncs0
-rw-r--r--[-rwxr-xr-x]Porting/findvars0
-rw-r--r--[-rwxr-xr-x]Porting/fixCORE0
-rw-r--r--[-rwxr-xr-x]Porting/fixvars0
-rw-r--r--[-rwxr-xr-x]Porting/git-deltatool0
-rw-r--r--[-rwxr-xr-x]Porting/git-find-p4-change0
-rw-r--r--[-rwxr-xr-x]Porting/make_dot_patch.pl0
-rw-r--r--[-rwxr-xr-x]Porting/make_snapshot.pl0
-rwxr-xr-x[-rw-r--r--]Porting/makerel28
-rw-r--r--[-rwxr-xr-x]Porting/rt_list_patches0
-rw-r--r--[-rwxr-xr-x]cflags.SH0
-rw-r--r--[-rwxr-xr-x]config_h.SH0
-rw-r--r--[-rwxr-xr-x]cpan/CGI/examples/make_links.pl0
-rw-r--r--[-rwxr-xr-x]cpan/CGI/examples/nph-clock.cgi0
-rw-r--r--[-rwxr-xr-x]cpan/CGI/examples/nph-multipart.cgi0
-rw-r--r--[-rwxr-xr-x]cpan/CPAN/scripts/cpan0
-rw-r--r--[-rwxr-xr-x]cpan/Compress-Raw-Zlib/config.in0
-rw-r--r--[-rwxr-xr-x]cpan/Compress-Raw-Zlib/examples/filtdef0
-rw-r--r--[-rwxr-xr-x]cpan/Compress-Raw-Zlib/examples/filtinf0
-rw-r--r--[-rwxr-xr-x]cpan/DB_File/config.in0
-rw-r--r--[-rwxr-xr-x]cpan/Digest-SHA/shasum0
-rw-r--r--[-rwxr-xr-x]cpan/Encode/bin/enc2xs0
-rw-r--r--[-rwxr-xr-x]cpan/Encode/bin/piconv0
-rw-r--r--[-rwxr-xr-x]cpan/Encode/bin/ucm2table0
-rw-r--r--[-rwxr-xr-x]cpan/Encode/bin/ucmsort0
-rw-r--r--[-rwxr-xr-x]cpan/Encode/bin/unidump0
-rw-r--r--[-rwxr-xr-x]cpan/ExtUtils-MakeMaker/bin/instmodsh0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/examples/compress-zlib/filtdef0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/examples/compress-zlib/filtinf0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/examples/compress-zlib/gzcat0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/examples/compress-zlib/gzgrep0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/examples/compress-zlib/gzstream0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/examples/io/anycat0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/examples/io/bzip2/bzcat0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/examples/io/bzip2/bzgrep0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/examples/io/bzip2/bzstream0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/examples/io/gzip/gzcat0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/examples/io/gzip/gzgrep0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/examples/io/gzip/gzstream0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/lib/IO/Uncompress/Adapter/Identity.pm0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/lib/IO/Uncompress/RawInflate.pm0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/t/compress/oneshot.pl0
-rw-r--r--[-rwxr-xr-x]cpan/IO-Compress/t/cz-03zlib-v1.t0
-rw-r--r--[-rwxr-xr-x]cpan/Locale-Codes/t/alias_code.t0
-rw-r--r--[-rwxr-xr-x]cpan/Locale-Codes/t/code2country.t0
-rw-r--r--[-rwxr-xr-x]cpan/Locale-Codes/t/code2currency.t0
-rw-r--r--[-rwxr-xr-x]cpan/Locale-Codes/t/code2language.t0
-rw-r--r--[-rwxr-xr-x]cpan/Locale-Codes/t/code2script.t0
-rw-r--r--[-rwxr-xr-x]cpan/Locale-Codes/t/country.t0
-rw-r--r--[-rwxr-xr-x]cpan/Locale-Codes/t/country2code.t0
-rw-r--r--[-rwxr-xr-x]cpan/Locale-Codes/t/country_code2code.t0
-rw-r--r--[-rwxr-xr-x]cpan/Locale-Codes/t/currency2code.t0
-rw-r--r--[-rwxr-xr-x]cpan/Locale-Codes/t/language.t0
-rw-r--r--[-rwxr-xr-x]cpan/Locale-Codes/t/language2code.t0
-rw-r--r--[-rwxr-xr-x]cpan/Locale-Codes/t/script2code.t0
-rw-r--r--[-rwxr-xr-x]cpan/Locale-Maketext-Simple/t/1-basic.t0
-rw-r--r--[-rwxr-xr-x]cpan/Locale-Maketext-Simple/t/2-load_po_without_i_default.t0
-rw-r--r--[-rwxr-xr-x]cpan/Locale-Maketext-Simple/t/3-load_po_with_i_default.t0
-rw-r--r--[-rwxr-xr-x]cpan/Module-Build/scripts/config_data0
-rw-r--r--[-rwxr-xr-x]cpan/Module-Build/t/compat/exit.t0
-rw-r--r--[-rwxr-xr-x]cpan/Term-ANSIColor/t/basic.t0
-rw-r--r--[-rwxr-xr-x]cpan/Test-Harness/bin/prove0
-rw-r--r--[-rwxr-xr-x]cpan/Test-Harness/t/bailout.t0
-rw-r--r--[-rwxr-xr-x]cpan/Test-Harness/t/nofork.t0
-rw-r--r--[-rwxr-xr-x]cpan/Test-Harness/t/parse.t0
-rw-r--r--[-rwxr-xr-x]cpan/Test-Harness/t/source.t0
-rw-r--r--[-rwxr-xr-x]cpan/Test-Harness/t/source_tests/psql0
-rw-r--r--[-rwxr-xr-x]cpan/Test-Harness/t/source_tests/psql.bat0
-rw-r--r--[-rwxr-xr-x]cpan/Test-Harness/t/streams.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/lib/Fatal.pm0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/00-load.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/Fatal.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/autodie.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/backcompat.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/basic_exceptions.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/binmode.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/blog_hints.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/caller.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/context.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/context_lexical.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/crickey.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/dbmopen.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/eval_error.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/exception_class.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/exceptions.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/exec.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/filehandles.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/fileno.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/flock.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/format-clobber.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/hints.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/hints_insist.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/hints_pod_examples.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/hints_provider_does.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/hints_provider_easy_does_it.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/hints_provider_isa.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/internal-backcompat.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/internal.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/lethal.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/mkdir.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/open.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/recv.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/repeat.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/scope_leak.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/string-eval-basic.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/string-eval-leak.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/sysopen.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/truncate.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/unlink.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/user-context.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/usersub.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/version.t0
-rw-r--r--[-rwxr-xr-x]cpan/autodie/t/version_tag.t0
-rw-r--r--[-rwxr-xr-x]cpan/libnet/demos/ftp0
-rw-r--r--[-rwxr-xr-x]cpan/libnet/demos/nntp0
-rw-r--r--[-rwxr-xr-x]cpan/libnet/demos/smtp.self0
-rw-r--r--[-rwxr-xr-x]cpan/podlators/t/devise-date.t0
-rw-r--r--[-rwxr-xr-x]cpan/podlators/t/man-heading.t0
-rw-r--r--[-rwxr-xr-x]cpan/podlators/t/overstrike.t0
-rw-r--r--[-rwxr-xr-x]dist/threads/threads.xs0
-rw-r--r--[-rwxr-xr-x]ext/SDBM_File/sdbm/grind0
-rw-r--r--[-rwxr-xr-x]ext/VMS-Stdio/t/vms_stdio.t0
-rw-r--r--[-rwxr-xr-x]genpacksizetables.pl0
-rw-r--r--[-rwxr-xr-x]hints/aix_4.sh0
-rw-r--r--[-rwxr-xr-x]installhtml0
-rw-r--r--[-rwxr-xr-x]mad/p550
-rw-r--r--[-rwxr-xr-x]makedepend.SH0
-rw-r--r--[-rwxr-xr-x]pod/buildtoc0
-rw-r--r--[-rwxr-xr-x]pod/pod2man.PL0
-rw-r--r--[-rwxr-xr-x]pod/pod2text.PL0
-rw-r--r--[-rwxr-xr-x]pod/rofftoc0
-rw-r--r--[-rwxr-xr-x]pod/splitman0
-rw-r--r--[-rwxr-xr-x]pod/splitpod0
-rw-r--r--[-rwxr-xr-x]qnx/ar0
-rw-r--r--[-rwxr-xr-x]qnx/cpp0
-rw-r--r--[-rwxr-xr-x]t/comp/use.t0
-rw-r--r--[-rwxr-xr-x]t/io/openpid.t0
-rw-r--r--[-rwxr-xr-x]t/op/filetest_t.t0
-rw-r--r--[-rwxr-xr-x]t/op/sigdispatch.t0
-rw-r--r--[-rwxr-xr-x]t/porting/diag.t0
-rw-r--r--t/porting/exec-bit.t43
-rw-r--r--[-rwxr-xr-x]t/test.pl0
-rw-r--r--[-rwxr-xr-x]uconfig.sh0
-rwxr-xr-x[-rw-r--r--]vms/ext/filespec.t0
-rw-r--r--[-rwxr-xr-x]win32/distclean.bat0
-rw-r--r--[-rwxr-xr-x]win32/perlexe.manifest0
-rw-r--r--[-rwxr-xr-x]x2p/Makefile.SH0
-rw-r--r--[-rwxr-xr-x]x2p/cflags.SH0
160 files changed, 77 insertions, 24 deletions
diff --git a/Cross/Makefile-cross-SH b/Cross/Makefile-cross-SH
index 79bd165924..79bd165924 100755..100644
--- a/Cross/Makefile-cross-SH
+++ b/Cross/Makefile-cross-SH
diff --git a/Cross/build-arm-n770-sh b/Cross/build-arm-n770-sh
index b3e6a67ca3..b3e6a67ca3 100755..100644
--- a/Cross/build-arm-n770-sh
+++ b/Cross/build-arm-n770-sh
diff --git a/Cross/cflags-cross-arm b/Cross/cflags-cross-arm
index acec8cc80f..acec8cc80f 100755..100644
--- a/Cross/cflags-cross-arm
+++ b/Cross/cflags-cross-arm
diff --git a/MANIFEST b/MANIFEST
index 89b3f968bf..f4ddd0e5d0 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -4059,6 +4059,7 @@ Porting/corelist-perldelta.pl Generates data perldelta from Module::CoreList
Porting/corelist.pl Generates data for Module::CoreList
Porting/curliff.pl Curliff or liff your curliffable files.
Porting/epigraphs.pod the release epigraphs used over the years
+Porting/exec-bit.txt List of files that get +x in release tarball
Porting/expand-macro.pl A tool to expand C macro definitions in the Perl source
Porting/findrfuncs Find reentrant variants of functions used in an executable
Porting/findvars Find occurrences of words
@@ -4572,7 +4573,8 @@ t/porting/args_assert.t Check that all PERL_ARGS_ASSERT* macros are used
t/porting/authors.t Check that all authors have been acknowledged
t/porting/checkcase.t Check whether we are case-insensitive-fs-friendly
t/porting/diag.t Test completeness of perldiag.pod
-t/porting/dual-life.t Check that dual-life bins are in utils
+t/porting/dual-life.t Check that dual-life bins are in utils/
+t/porting/exec-bit.t Check that exec-bit bins are identified
t/porting/maintainers.t Test that Porting/Maintaners.pl is up to date
t/porting/manifest.t Test that this MANIFEST file is well formed
t/porting/podcheck.t Test the POD of shipped modules is well formed
diff --git a/Porting/GitUtils.pm b/Porting/GitUtils.pm
index 9ee6ca58e3..9ee6ca58e3 100755..100644
--- a/Porting/GitUtils.pm
+++ b/Porting/GitUtils.pm
diff --git a/Porting/Maintainers.pl b/Porting/Maintainers.pl
index 09a2408738..09a2408738 100755..100644
--- a/Porting/Maintainers.pl
+++ b/Porting/Maintainers.pl
diff --git a/Porting/bump-perl-version b/Porting/bump-perl-version
index d7aabbab06..d7aabbab06 100755..100644
--- a/Porting/bump-perl-version
+++ b/Porting/bump-perl-version
diff --git a/Porting/cherrymaint b/Porting/cherrymaint
index d1df73c0e0..d1df73c0e0 100755..100644
--- a/Porting/cherrymaint
+++ b/Porting/cherrymaint
diff --git a/Porting/config_h.pl b/Porting/config_h.pl
index cf69b2ad32..cf69b2ad32 100755..100644
--- a/Porting/config_h.pl
+++ b/Porting/config_h.pl
diff --git a/Porting/core-cpan-diff b/Porting/core-cpan-diff
index 75946185bb..75946185bb 100755..100644
--- a/Porting/core-cpan-diff
+++ b/Porting/core-cpan-diff
diff --git a/Porting/corelist-perldelta.pl b/Porting/corelist-perldelta.pl
index d7bcd2ad61..d7bcd2ad61 100755..100644
--- a/Porting/corelist-perldelta.pl
+++ b/Porting/corelist-perldelta.pl
diff --git a/Porting/exec-bit.txt b/Porting/exec-bit.txt
new file mode 100644
index 0000000000..b50517dd33
--- /dev/null
+++ b/Porting/exec-bit.txt
@@ -0,0 +1,26 @@
+# This file contains a list of files that makerel will
+# ensure get an executable bit
+#
+# List files (or glob patterns) one per line relative to the repo root
+# Lines starting with a pound and empty lines will be ignored
+Configure
+configpm
+configure.gnu
+cpan/Test-Harness/t/source_tests/source.sh
+embed.pl
+installperl
+installman
+keywords.pl
+opcode.pl
+t/TEST
+*.SH
+vms/ext/filespec.t
+x2p/*.SH
+Porting/findrfuncs
+Porting/genlog
+Porting/makerel
+Porting/*.pl
+mpeix/nm
+mpeix/relink
+Cross/generate_config_sh
+Cross/warp
diff --git a/Porting/findrfuncs b/Porting/findrfuncs
index c9a7ff80a7..c9a7ff80a7 100644..100755
--- a/Porting/findrfuncs
+++ b/Porting/findrfuncs
diff --git a/Porting/findvars b/Porting/findvars
index b2914f5652..b2914f5652 100755..100644
--- a/Porting/findvars
+++ b/Porting/findvars
diff --git a/Porting/fixCORE b/Porting/fixCORE
index f7f4539fd6..f7f4539fd6 100755..100644
--- a/Porting/fixCORE
+++ b/Porting/fixCORE
diff --git a/Porting/fixvars b/Porting/fixvars
index 201c37f3ad..201c37f3ad 100755..100644
--- a/Porting/fixvars
+++ b/Porting/fixvars
diff --git a/Porting/git-deltatool b/Porting/git-deltatool
index c3946eeb12..c3946eeb12 100755..100644
--- a/Porting/git-deltatool
+++ b/Porting/git-deltatool
diff --git a/Porting/git-find-p4-change b/Porting/git-find-p4-change
index 6363ae29ad..6363ae29ad 100755..100644
--- a/Porting/git-find-p4-change
+++ b/Porting/git-find-p4-change
diff --git a/Porting/make_dot_patch.pl b/Porting/make_dot_patch.pl
index b50fd85a48..b50fd85a48 100755..100644
--- a/Porting/make_dot_patch.pl
+++ b/Porting/make_dot_patch.pl
diff --git a/Porting/make_snapshot.pl b/Porting/make_snapshot.pl
index 70a4c3d66d..70a4c3d66d 100755..100644
--- a/Porting/make_snapshot.pl
+++ b/Porting/make_snapshot.pl
diff --git a/Porting/makerel b/Porting/makerel
index a0ce67beeb..41e757bb56 100644..100755
--- a/Porting/makerel
+++ b/Porting/makerel
@@ -124,29 +124,11 @@ system("find . -type f -print | xargs chmod 0444");
system("find . -type d -print | xargs chmod 0755");
system("find $SEARCH_ROOTS -name '*.t' -print | xargs chmod +x");
system("find $SEARCH_ROOTS -name 'test.pl' -print | xargs chmod +x");
-my @exe = qw(
- Configure
- configpm
- configure.gnu
- cpan/Test-Harness/t/source_tests/source.sh
- embed.pl
- installperl
- installman
- keywords.pl
- opcode.pl
- t/TEST
- *.SH
- vms/ext/filespec.t
- x2p/*.SH
- Porting/findrfuncs
- Porting/genlog
- Porting/makerel
- Porting/*.pl
- mpeix/nm
- mpeix/relink
- Cross/generate_config_sh
- Cross/warp
-);
+my @exe = map { my ($f) = split; glob($f) }
+ grep { $_ !~ /\A#/ && $_ !~ /\A\s*\z/ }
+ map { split "\n" }
+ do { local (@ARGV, $/) = 'Porting/exec-bit.txt'; <> };
+
system("chmod +x @exe") == 0
or die "system: $!";
diff --git a/Porting/rt_list_patches b/Porting/rt_list_patches
index 71145d4f6f..71145d4f6f 100755..100644
--- a/Porting/rt_list_patches
+++ b/Porting/rt_list_patches
diff --git a/cflags.SH b/cflags.SH
index a5d71b928c..a5d71b928c 100755..100644
--- a/cflags.SH
+++ b/cflags.SH
diff --git a/config_h.SH b/config_h.SH
index 0e4c3a7c8d..0e4c3a7c8d 100755..100644
--- a/config_h.SH
+++ b/config_h.SH
diff --git a/cpan/CGI/examples/make_links.pl b/cpan/CGI/examples/make_links.pl
index a0aa824556..a0aa824556 100755..100644
--- a/cpan/CGI/examples/make_links.pl
+++ b/cpan/CGI/examples/make_links.pl
diff --git a/cpan/CGI/examples/nph-clock.cgi b/cpan/CGI/examples/nph-clock.cgi
index f34fde27e9..f34fde27e9 100755..100644
--- a/cpan/CGI/examples/nph-clock.cgi
+++ b/cpan/CGI/examples/nph-clock.cgi
diff --git a/cpan/CGI/examples/nph-multipart.cgi b/cpan/CGI/examples/nph-multipart.cgi
index f8cea59a87..f8cea59a87 100755..100644
--- a/cpan/CGI/examples/nph-multipart.cgi
+++ b/cpan/CGI/examples/nph-multipart.cgi
diff --git a/cpan/CPAN/scripts/cpan b/cpan/CPAN/scripts/cpan
index 5e5609555f..5e5609555f 100755..100644
--- a/cpan/CPAN/scripts/cpan
+++ b/cpan/CPAN/scripts/cpan
diff --git a/cpan/Compress-Raw-Zlib/config.in b/cpan/Compress-Raw-Zlib/config.in
index c56cc03099..c56cc03099 100755..100644
--- a/cpan/Compress-Raw-Zlib/config.in
+++ b/cpan/Compress-Raw-Zlib/config.in
diff --git a/cpan/Compress-Raw-Zlib/examples/filtdef b/cpan/Compress-Raw-Zlib/examples/filtdef
index 3c6565042f..3c6565042f 100755..100644
--- a/cpan/Compress-Raw-Zlib/examples/filtdef
+++ b/cpan/Compress-Raw-Zlib/examples/filtdef
diff --git a/cpan/Compress-Raw-Zlib/examples/filtinf b/cpan/Compress-Raw-Zlib/examples/filtinf
index 1a99e885b0..1a99e885b0 100755..100644
--- a/cpan/Compress-Raw-Zlib/examples/filtinf
+++ b/cpan/Compress-Raw-Zlib/examples/filtinf
diff --git a/cpan/DB_File/config.in b/cpan/DB_File/config.in
index 292b09a5fb..292b09a5fb 100755..100644
--- a/cpan/DB_File/config.in
+++ b/cpan/DB_File/config.in
diff --git a/cpan/Digest-SHA/shasum b/cpan/Digest-SHA/shasum
index 3c0185892f..3c0185892f 100755..100644
--- a/cpan/Digest-SHA/shasum
+++ b/cpan/Digest-SHA/shasum
diff --git a/cpan/Encode/bin/enc2xs b/cpan/Encode/bin/enc2xs
index 773c0a09fb..773c0a09fb 100755..100644
--- a/cpan/Encode/bin/enc2xs
+++ b/cpan/Encode/bin/enc2xs
diff --git a/cpan/Encode/bin/piconv b/cpan/Encode/bin/piconv
index 9fdebd193c..9fdebd193c 100755..100644
--- a/cpan/Encode/bin/piconv
+++ b/cpan/Encode/bin/piconv
diff --git a/cpan/Encode/bin/ucm2table b/cpan/Encode/bin/ucm2table
index 66e63fcdb9..66e63fcdb9 100755..100644
--- a/cpan/Encode/bin/ucm2table
+++ b/cpan/Encode/bin/ucm2table
diff --git a/cpan/Encode/bin/ucmsort b/cpan/Encode/bin/ucmsort
index 3e037dc02b..3e037dc02b 100755..100644
--- a/cpan/Encode/bin/ucmsort
+++ b/cpan/Encode/bin/ucmsort
diff --git a/cpan/Encode/bin/unidump b/cpan/Encode/bin/unidump
index ae0da30852..ae0da30852 100755..100644
--- a/cpan/Encode/bin/unidump
+++ b/cpan/Encode/bin/unidump
diff --git a/cpan/ExtUtils-MakeMaker/bin/instmodsh b/cpan/ExtUtils-MakeMaker/bin/instmodsh
index 5874aa61c7..5874aa61c7 100755..100644
--- a/cpan/ExtUtils-MakeMaker/bin/instmodsh
+++ b/cpan/ExtUtils-MakeMaker/bin/instmodsh
diff --git a/cpan/IO-Compress/examples/compress-zlib/filtdef b/cpan/IO-Compress/examples/compress-zlib/filtdef
index 57dfeb9068..57dfeb9068 100755..100644
--- a/cpan/IO-Compress/examples/compress-zlib/filtdef
+++ b/cpan/IO-Compress/examples/compress-zlib/filtdef
diff --git a/cpan/IO-Compress/examples/compress-zlib/filtinf b/cpan/IO-Compress/examples/compress-zlib/filtinf
index 1df202b1d7..1df202b1d7 100755..100644
--- a/cpan/IO-Compress/examples/compress-zlib/filtinf
+++ b/cpan/IO-Compress/examples/compress-zlib/filtinf
diff --git a/cpan/IO-Compress/examples/compress-zlib/gzcat b/cpan/IO-Compress/examples/compress-zlib/gzcat
index 5241a5a11f..5241a5a11f 100755..100644
--- a/cpan/IO-Compress/examples/compress-zlib/gzcat
+++ b/cpan/IO-Compress/examples/compress-zlib/gzcat
diff --git a/cpan/IO-Compress/examples/compress-zlib/gzgrep b/cpan/IO-Compress/examples/compress-zlib/gzgrep
index 324d3e615f..324d3e615f 100755..100644
--- a/cpan/IO-Compress/examples/compress-zlib/gzgrep
+++ b/cpan/IO-Compress/examples/compress-zlib/gzgrep
diff --git a/cpan/IO-Compress/examples/compress-zlib/gzstream b/cpan/IO-Compress/examples/compress-zlib/gzstream
index faacb0a0dd..faacb0a0dd 100755..100644
--- a/cpan/IO-Compress/examples/compress-zlib/gzstream
+++ b/cpan/IO-Compress/examples/compress-zlib/gzstream
diff --git a/cpan/IO-Compress/examples/io/anycat b/cpan/IO-Compress/examples/io/anycat
index b7f7001b5e..b7f7001b5e 100755..100644
--- a/cpan/IO-Compress/examples/io/anycat
+++ b/cpan/IO-Compress/examples/io/anycat
diff --git a/cpan/IO-Compress/examples/io/bzip2/bzcat b/cpan/IO-Compress/examples/io/bzip2/bzcat
index 81123200c5..81123200c5 100755..100644
--- a/cpan/IO-Compress/examples/io/bzip2/bzcat
+++ b/cpan/IO-Compress/examples/io/bzip2/bzcat
diff --git a/cpan/IO-Compress/examples/io/bzip2/bzgrep b/cpan/IO-Compress/examples/io/bzip2/bzgrep
index ceb4e8412b..ceb4e8412b 100755..100644
--- a/cpan/IO-Compress/examples/io/bzip2/bzgrep
+++ b/cpan/IO-Compress/examples/io/bzip2/bzgrep
diff --git a/cpan/IO-Compress/examples/io/bzip2/bzstream b/cpan/IO-Compress/examples/io/bzip2/bzstream
index 3e88d68258..3e88d68258 100755..100644
--- a/cpan/IO-Compress/examples/io/bzip2/bzstream
+++ b/cpan/IO-Compress/examples/io/bzip2/bzstream
diff --git a/cpan/IO-Compress/examples/io/gzip/gzcat b/cpan/IO-Compress/examples/io/gzip/gzcat
index 5572bae959..5572bae959 100755..100644
--- a/cpan/IO-Compress/examples/io/gzip/gzcat
+++ b/cpan/IO-Compress/examples/io/gzip/gzcat
diff --git a/cpan/IO-Compress/examples/io/gzip/gzgrep b/cpan/IO-Compress/examples/io/gzip/gzgrep
index 33820ba064..33820ba064 100755..100644
--- a/cpan/IO-Compress/examples/io/gzip/gzgrep
+++ b/cpan/IO-Compress/examples/io/gzip/gzgrep
diff --git a/cpan/IO-Compress/examples/io/gzip/gzstream b/cpan/IO-Compress/examples/io/gzip/gzstream
index 9d03bc5749..9d03bc5749 100755..100644
--- a/cpan/IO-Compress/examples/io/gzip/gzstream
+++ b/cpan/IO-Compress/examples/io/gzip/gzstream
diff --git a/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Identity.pm b/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Identity.pm
index 2ba1a6266f..2ba1a6266f 100755..100644
--- a/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Identity.pm
+++ b/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Identity.pm
diff --git a/cpan/IO-Compress/lib/IO/Uncompress/RawInflate.pm b/cpan/IO-Compress/lib/IO/Uncompress/RawInflate.pm
index 609928fd4e..609928fd4e 100755..100644
--- a/cpan/IO-Compress/lib/IO/Uncompress/RawInflate.pm
+++ b/cpan/IO-Compress/lib/IO/Uncompress/RawInflate.pm
diff --git a/cpan/IO-Compress/t/compress/oneshot.pl b/cpan/IO-Compress/t/compress/oneshot.pl
index 78d17275b7..78d17275b7 100755..100644
--- a/cpan/IO-Compress/t/compress/oneshot.pl
+++ b/cpan/IO-Compress/t/compress/oneshot.pl
diff --git a/cpan/IO-Compress/t/cz-03zlib-v1.t b/cpan/IO-Compress/t/cz-03zlib-v1.t
index cb9ff1fcb5..cb9ff1fcb5 100755..100644
--- a/cpan/IO-Compress/t/cz-03zlib-v1.t
+++ b/cpan/IO-Compress/t/cz-03zlib-v1.t
diff --git a/cpan/Locale-Codes/t/alias_code.t b/cpan/Locale-Codes/t/alias_code.t
index b763372100..b763372100 100755..100644
--- a/cpan/Locale-Codes/t/alias_code.t
+++ b/cpan/Locale-Codes/t/alias_code.t
diff --git a/cpan/Locale-Codes/t/code2country.t b/cpan/Locale-Codes/t/code2country.t
index 43c06a03a5..43c06a03a5 100755..100644
--- a/cpan/Locale-Codes/t/code2country.t
+++ b/cpan/Locale-Codes/t/code2country.t
diff --git a/cpan/Locale-Codes/t/code2currency.t b/cpan/Locale-Codes/t/code2currency.t
index 6b32b311e7..6b32b311e7 100755..100644
--- a/cpan/Locale-Codes/t/code2currency.t
+++ b/cpan/Locale-Codes/t/code2currency.t
diff --git a/cpan/Locale-Codes/t/code2language.t b/cpan/Locale-Codes/t/code2language.t
index a0308d4e5b..a0308d4e5b 100755..100644
--- a/cpan/Locale-Codes/t/code2language.t
+++ b/cpan/Locale-Codes/t/code2language.t
diff --git a/cpan/Locale-Codes/t/code2script.t b/cpan/Locale-Codes/t/code2script.t
index ba700f956f..ba700f956f 100755..100644
--- a/cpan/Locale-Codes/t/code2script.t
+++ b/cpan/Locale-Codes/t/code2script.t
diff --git a/cpan/Locale-Codes/t/country.t b/cpan/Locale-Codes/t/country.t
index 830fa55392..830fa55392 100755..100644
--- a/cpan/Locale-Codes/t/country.t
+++ b/cpan/Locale-Codes/t/country.t
diff --git a/cpan/Locale-Codes/t/country2code.t b/cpan/Locale-Codes/t/country2code.t
index 1eacf466ee..1eacf466ee 100755..100644
--- a/cpan/Locale-Codes/t/country2code.t
+++ b/cpan/Locale-Codes/t/country2code.t
diff --git a/cpan/Locale-Codes/t/country_code2code.t b/cpan/Locale-Codes/t/country_code2code.t
index 5ec8117fe4..5ec8117fe4 100755..100644
--- a/cpan/Locale-Codes/t/country_code2code.t
+++ b/cpan/Locale-Codes/t/country_code2code.t
diff --git a/cpan/Locale-Codes/t/currency2code.t b/cpan/Locale-Codes/t/currency2code.t
index 6df23cd7c3..6df23cd7c3 100755..100644
--- a/cpan/Locale-Codes/t/currency2code.t
+++ b/cpan/Locale-Codes/t/currency2code.t
diff --git a/cpan/Locale-Codes/t/language.t b/cpan/Locale-Codes/t/language.t
index 14364e7245..14364e7245 100755..100644
--- a/cpan/Locale-Codes/t/language.t
+++ b/cpan/Locale-Codes/t/language.t
diff --git a/cpan/Locale-Codes/t/language2code.t b/cpan/Locale-Codes/t/language2code.t
index 2e5bb23dc1..2e5bb23dc1 100755..100644
--- a/cpan/Locale-Codes/t/language2code.t
+++ b/cpan/Locale-Codes/t/language2code.t
diff --git a/cpan/Locale-Codes/t/script2code.t b/cpan/Locale-Codes/t/script2code.t
index 415e1a6c53..415e1a6c53 100755..100644
--- a/cpan/Locale-Codes/t/script2code.t
+++ b/cpan/Locale-Codes/t/script2code.t
diff --git a/cpan/Locale-Maketext-Simple/t/1-basic.t b/cpan/Locale-Maketext-Simple/t/1-basic.t
index 91d033b795..91d033b795 100755..100644
--- a/cpan/Locale-Maketext-Simple/t/1-basic.t
+++ b/cpan/Locale-Maketext-Simple/t/1-basic.t
diff --git a/cpan/Locale-Maketext-Simple/t/2-load_po_without_i_default.t b/cpan/Locale-Maketext-Simple/t/2-load_po_without_i_default.t
index 47a982307e..47a982307e 100755..100644
--- a/cpan/Locale-Maketext-Simple/t/2-load_po_without_i_default.t
+++ b/cpan/Locale-Maketext-Simple/t/2-load_po_without_i_default.t
diff --git a/cpan/Locale-Maketext-Simple/t/3-load_po_with_i_default.t b/cpan/Locale-Maketext-Simple/t/3-load_po_with_i_default.t
index a8807106dd..a8807106dd 100755..100644
--- a/cpan/Locale-Maketext-Simple/t/3-load_po_with_i_default.t
+++ b/cpan/Locale-Maketext-Simple/t/3-load_po_with_i_default.t
diff --git a/cpan/Module-Build/scripts/config_data b/cpan/Module-Build/scripts/config_data
index d08a5f3b1f..d08a5f3b1f 100755..100644
--- a/cpan/Module-Build/scripts/config_data
+++ b/cpan/Module-Build/scripts/config_data
diff --git a/cpan/Module-Build/t/compat/exit.t b/cpan/Module-Build/t/compat/exit.t
index 3672c938c3..3672c938c3 100755..100644
--- a/cpan/Module-Build/t/compat/exit.t
+++ b/cpan/Module-Build/t/compat/exit.t
diff --git a/cpan/Term-ANSIColor/t/basic.t b/cpan/Term-ANSIColor/t/basic.t
index c6fed3e54c..c6fed3e54c 100755..100644
--- a/cpan/Term-ANSIColor/t/basic.t
+++ b/cpan/Term-ANSIColor/t/basic.t
diff --git a/cpan/Test-Harness/bin/prove b/cpan/Test-Harness/bin/prove
index 8264171431..8264171431 100755..100644
--- a/cpan/Test-Harness/bin/prove
+++ b/cpan/Test-Harness/bin/prove
diff --git a/cpan/Test-Harness/t/bailout.t b/cpan/Test-Harness/t/bailout.t
index e10b133e0f..e10b133e0f 100755..100644
--- a/cpan/Test-Harness/t/bailout.t
+++ b/cpan/Test-Harness/t/bailout.t
diff --git a/cpan/Test-Harness/t/nofork.t b/cpan/Test-Harness/t/nofork.t
index 00b8dd6dd5..00b8dd6dd5 100755..100644
--- a/cpan/Test-Harness/t/nofork.t
+++ b/cpan/Test-Harness/t/nofork.t
diff --git a/cpan/Test-Harness/t/parse.t b/cpan/Test-Harness/t/parse.t
index 68c1df53db..68c1df53db 100755..100644
--- a/cpan/Test-Harness/t/parse.t
+++ b/cpan/Test-Harness/t/parse.t
diff --git a/cpan/Test-Harness/t/source.t b/cpan/Test-Harness/t/source.t
index 3950143e0d..3950143e0d 100755..100644
--- a/cpan/Test-Harness/t/source.t
+++ b/cpan/Test-Harness/t/source.t
diff --git a/cpan/Test-Harness/t/source_tests/psql b/cpan/Test-Harness/t/source_tests/psql
index f32e6a7ff6..f32e6a7ff6 100755..100644
--- a/cpan/Test-Harness/t/source_tests/psql
+++ b/cpan/Test-Harness/t/source_tests/psql
diff --git a/cpan/Test-Harness/t/source_tests/psql.bat b/cpan/Test-Harness/t/source_tests/psql.bat
index 8f43ddd768..8f43ddd768 100755..100644
--- a/cpan/Test-Harness/t/source_tests/psql.bat
+++ b/cpan/Test-Harness/t/source_tests/psql.bat
diff --git a/cpan/Test-Harness/t/streams.t b/cpan/Test-Harness/t/streams.t
index f4e97671e8..f4e97671e8 100755..100644
--- a/cpan/Test-Harness/t/streams.t
+++ b/cpan/Test-Harness/t/streams.t
diff --git a/cpan/autodie/lib/Fatal.pm b/cpan/autodie/lib/Fatal.pm
index aabdf781de..aabdf781de 100755..100644
--- a/cpan/autodie/lib/Fatal.pm
+++ b/cpan/autodie/lib/Fatal.pm
diff --git a/cpan/autodie/t/00-load.t b/cpan/autodie/t/00-load.t
index d07fcaefbe..d07fcaefbe 100755..100644
--- a/cpan/autodie/t/00-load.t
+++ b/cpan/autodie/t/00-load.t
diff --git a/cpan/autodie/t/Fatal.t b/cpan/autodie/t/Fatal.t
index a291837d13..a291837d13 100755..100644
--- a/cpan/autodie/t/Fatal.t
+++ b/cpan/autodie/t/Fatal.t
diff --git a/cpan/autodie/t/autodie.t b/cpan/autodie/t/autodie.t
index c528a160a4..c528a160a4 100755..100644
--- a/cpan/autodie/t/autodie.t
+++ b/cpan/autodie/t/autodie.t
diff --git a/cpan/autodie/t/backcompat.t b/cpan/autodie/t/backcompat.t
index acb81245b8..acb81245b8 100755..100644
--- a/cpan/autodie/t/backcompat.t
+++ b/cpan/autodie/t/backcompat.t
diff --git a/cpan/autodie/t/basic_exceptions.t b/cpan/autodie/t/basic_exceptions.t
index c732dd587d..c732dd587d 100755..100644
--- a/cpan/autodie/t/basic_exceptions.t
+++ b/cpan/autodie/t/basic_exceptions.t
diff --git a/cpan/autodie/t/binmode.t b/cpan/autodie/t/binmode.t
index 317a41303c..317a41303c 100755..100644
--- a/cpan/autodie/t/binmode.t
+++ b/cpan/autodie/t/binmode.t
diff --git a/cpan/autodie/t/blog_hints.t b/cpan/autodie/t/blog_hints.t
index 395cb14342..395cb14342 100755..100644
--- a/cpan/autodie/t/blog_hints.t
+++ b/cpan/autodie/t/blog_hints.t
diff --git a/cpan/autodie/t/caller.t b/cpan/autodie/t/caller.t
index 1874353627..1874353627 100755..100644
--- a/cpan/autodie/t/caller.t
+++ b/cpan/autodie/t/caller.t
diff --git a/cpan/autodie/t/context.t b/cpan/autodie/t/context.t
index 39b86497c6..39b86497c6 100755..100644
--- a/cpan/autodie/t/context.t
+++ b/cpan/autodie/t/context.t
diff --git a/cpan/autodie/t/context_lexical.t b/cpan/autodie/t/context_lexical.t
index ce50b75c4b..ce50b75c4b 100755..100644
--- a/cpan/autodie/t/context_lexical.t
+++ b/cpan/autodie/t/context_lexical.t
diff --git a/cpan/autodie/t/crickey.t b/cpan/autodie/t/crickey.t
index 91a7d7837a..91a7d7837a 100755..100644
--- a/cpan/autodie/t/crickey.t
+++ b/cpan/autodie/t/crickey.t
diff --git a/cpan/autodie/t/dbmopen.t b/cpan/autodie/t/dbmopen.t
index 31698e65be..31698e65be 100755..100644
--- a/cpan/autodie/t/dbmopen.t
+++ b/cpan/autodie/t/dbmopen.t
diff --git a/cpan/autodie/t/eval_error.t b/cpan/autodie/t/eval_error.t
index a2aa8939a0..a2aa8939a0 100755..100644
--- a/cpan/autodie/t/eval_error.t
+++ b/cpan/autodie/t/eval_error.t
diff --git a/cpan/autodie/t/exception_class.t b/cpan/autodie/t/exception_class.t
index 127893bcbf..127893bcbf 100755..100644
--- a/cpan/autodie/t/exception_class.t
+++ b/cpan/autodie/t/exception_class.t
diff --git a/cpan/autodie/t/exceptions.t b/cpan/autodie/t/exceptions.t
index 2f8c2382fc..2f8c2382fc 100755..100644
--- a/cpan/autodie/t/exceptions.t
+++ b/cpan/autodie/t/exceptions.t
diff --git a/cpan/autodie/t/exec.t b/cpan/autodie/t/exec.t
index 0d4439a8c1..0d4439a8c1 100755..100644
--- a/cpan/autodie/t/exec.t
+++ b/cpan/autodie/t/exec.t
diff --git a/cpan/autodie/t/filehandles.t b/cpan/autodie/t/filehandles.t
index 5bdf732e2c..5bdf732e2c 100755..100644
--- a/cpan/autodie/t/filehandles.t
+++ b/cpan/autodie/t/filehandles.t
diff --git a/cpan/autodie/t/fileno.t b/cpan/autodie/t/fileno.t
index 2b9c2598e7..2b9c2598e7 100755..100644
--- a/cpan/autodie/t/fileno.t
+++ b/cpan/autodie/t/fileno.t
diff --git a/cpan/autodie/t/flock.t b/cpan/autodie/t/flock.t
index 6421a56aac..6421a56aac 100755..100644
--- a/cpan/autodie/t/flock.t
+++ b/cpan/autodie/t/flock.t
diff --git a/cpan/autodie/t/format-clobber.t b/cpan/autodie/t/format-clobber.t
index ee8e8bd5c8..ee8e8bd5c8 100755..100644
--- a/cpan/autodie/t/format-clobber.t
+++ b/cpan/autodie/t/format-clobber.t
diff --git a/cpan/autodie/t/hints.t b/cpan/autodie/t/hints.t
index b508fee235..b508fee235 100755..100644
--- a/cpan/autodie/t/hints.t
+++ b/cpan/autodie/t/hints.t
diff --git a/cpan/autodie/t/hints_insist.t b/cpan/autodie/t/hints_insist.t
index ab618d2325..ab618d2325 100755..100644
--- a/cpan/autodie/t/hints_insist.t
+++ b/cpan/autodie/t/hints_insist.t
diff --git a/cpan/autodie/t/hints_pod_examples.t b/cpan/autodie/t/hints_pod_examples.t
index a3c6f0f553..a3c6f0f553 100755..100644
--- a/cpan/autodie/t/hints_pod_examples.t
+++ b/cpan/autodie/t/hints_pod_examples.t
diff --git a/cpan/autodie/t/hints_provider_does.t b/cpan/autodie/t/hints_provider_does.t
index a671b73e13..a671b73e13 100755..100644
--- a/cpan/autodie/t/hints_provider_does.t
+++ b/cpan/autodie/t/hints_provider_does.t
diff --git a/cpan/autodie/t/hints_provider_easy_does_it.t b/cpan/autodie/t/hints_provider_easy_does_it.t
index 2606ff8cb3..2606ff8cb3 100755..100644
--- a/cpan/autodie/t/hints_provider_easy_does_it.t
+++ b/cpan/autodie/t/hints_provider_easy_does_it.t
diff --git a/cpan/autodie/t/hints_provider_isa.t b/cpan/autodie/t/hints_provider_isa.t
index 022b34f525..022b34f525 100755..100644
--- a/cpan/autodie/t/hints_provider_isa.t
+++ b/cpan/autodie/t/hints_provider_isa.t
diff --git a/cpan/autodie/t/internal-backcompat.t b/cpan/autodie/t/internal-backcompat.t
index 59898366c0..59898366c0 100755..100644
--- a/cpan/autodie/t/internal-backcompat.t
+++ b/cpan/autodie/t/internal-backcompat.t
diff --git a/cpan/autodie/t/internal.t b/cpan/autodie/t/internal.t
index c1189444cb..c1189444cb 100755..100644
--- a/cpan/autodie/t/internal.t
+++ b/cpan/autodie/t/internal.t
diff --git a/cpan/autodie/t/lethal.t b/cpan/autodie/t/lethal.t
index 244d2f82b2..244d2f82b2 100755..100644
--- a/cpan/autodie/t/lethal.t
+++ b/cpan/autodie/t/lethal.t
diff --git a/cpan/autodie/t/mkdir.t b/cpan/autodie/t/mkdir.t
index 7bd6529086..7bd6529086 100755..100644
--- a/cpan/autodie/t/mkdir.t
+++ b/cpan/autodie/t/mkdir.t
diff --git a/cpan/autodie/t/open.t b/cpan/autodie/t/open.t
index 359eb9a9f2..359eb9a9f2 100755..100644
--- a/cpan/autodie/t/open.t
+++ b/cpan/autodie/t/open.t
diff --git a/cpan/autodie/t/recv.t b/cpan/autodie/t/recv.t
index cfaa679144..cfaa679144 100755..100644
--- a/cpan/autodie/t/recv.t
+++ b/cpan/autodie/t/recv.t
diff --git a/cpan/autodie/t/repeat.t b/cpan/autodie/t/repeat.t
index 5f85f1218c..5f85f1218c 100755..100644
--- a/cpan/autodie/t/repeat.t
+++ b/cpan/autodie/t/repeat.t
diff --git a/cpan/autodie/t/scope_leak.t b/cpan/autodie/t/scope_leak.t
index 529daa3ecd..529daa3ecd 100755..100644
--- a/cpan/autodie/t/scope_leak.t
+++ b/cpan/autodie/t/scope_leak.t
diff --git a/cpan/autodie/t/string-eval-basic.t b/cpan/autodie/t/string-eval-basic.t
index 62e55006ea..62e55006ea 100755..100644
--- a/cpan/autodie/t/string-eval-basic.t
+++ b/cpan/autodie/t/string-eval-basic.t
diff --git a/cpan/autodie/t/string-eval-leak.t b/cpan/autodie/t/string-eval-leak.t
index 329bcfa40e..329bcfa40e 100755..100644
--- a/cpan/autodie/t/string-eval-leak.t
+++ b/cpan/autodie/t/string-eval-leak.t
diff --git a/cpan/autodie/t/sysopen.t b/cpan/autodie/t/sysopen.t
index ab489b7830..ab489b7830 100755..100644
--- a/cpan/autodie/t/sysopen.t
+++ b/cpan/autodie/t/sysopen.t
diff --git a/cpan/autodie/t/truncate.t b/cpan/autodie/t/truncate.t
index e69ee32d2e..e69ee32d2e 100755..100644
--- a/cpan/autodie/t/truncate.t
+++ b/cpan/autodie/t/truncate.t
diff --git a/cpan/autodie/t/unlink.t b/cpan/autodie/t/unlink.t
index f301500fda..f301500fda 100755..100644
--- a/cpan/autodie/t/unlink.t
+++ b/cpan/autodie/t/unlink.t
diff --git a/cpan/autodie/t/user-context.t b/cpan/autodie/t/user-context.t
index 65b6a8876a..65b6a8876a 100755..100644
--- a/cpan/autodie/t/user-context.t
+++ b/cpan/autodie/t/user-context.t
diff --git a/cpan/autodie/t/usersub.t b/cpan/autodie/t/usersub.t
index 4266804ca9..4266804ca9 100755..100644
--- a/cpan/autodie/t/usersub.t
+++ b/cpan/autodie/t/usersub.t
diff --git a/cpan/autodie/t/version.t b/cpan/autodie/t/version.t
index a729129e88..a729129e88 100755..100644
--- a/cpan/autodie/t/version.t
+++ b/cpan/autodie/t/version.t
diff --git a/cpan/autodie/t/version_tag.t b/cpan/autodie/t/version_tag.t
index 89e1412e47..89e1412e47 100755..100644
--- a/cpan/autodie/t/version_tag.t
+++ b/cpan/autodie/t/version_tag.t
diff --git a/cpan/libnet/demos/ftp b/cpan/libnet/demos/ftp
index 610e102999..610e102999 100755..100644
--- a/cpan/libnet/demos/ftp
+++ b/cpan/libnet/demos/ftp
diff --git a/cpan/libnet/demos/nntp b/cpan/libnet/demos/nntp
index 7753fbc299..7753fbc299 100755..100644
--- a/cpan/libnet/demos/nntp
+++ b/cpan/libnet/demos/nntp
diff --git a/cpan/libnet/demos/smtp.self b/cpan/libnet/demos/smtp.self
index 5cfbc2b824..5cfbc2b824 100755..100644
--- a/cpan/libnet/demos/smtp.self
+++ b/cpan/libnet/demos/smtp.self
diff --git a/cpan/podlators/t/devise-date.t b/cpan/podlators/t/devise-date.t
index 3cce9f5b01..3cce9f5b01 100755..100644
--- a/cpan/podlators/t/devise-date.t
+++ b/cpan/podlators/t/devise-date.t
diff --git a/cpan/podlators/t/man-heading.t b/cpan/podlators/t/man-heading.t
index f7e470e3c0..f7e470e3c0 100755..100644
--- a/cpan/podlators/t/man-heading.t
+++ b/cpan/podlators/t/man-heading.t
diff --git a/cpan/podlators/t/overstrike.t b/cpan/podlators/t/overstrike.t
index bbfa0db9fb..bbfa0db9fb 100755..100644
--- a/cpan/podlators/t/overstrike.t
+++ b/cpan/podlators/t/overstrike.t
diff --git a/dist/threads/threads.xs b/dist/threads/threads.xs
index f4e6946e35..f4e6946e35 100755..100644
--- a/dist/threads/threads.xs
+++ b/dist/threads/threads.xs
diff --git a/ext/SDBM_File/sdbm/grind b/ext/SDBM_File/sdbm/grind
index 23728b7d49..23728b7d49 100755..100644
--- a/ext/SDBM_File/sdbm/grind
+++ b/ext/SDBM_File/sdbm/grind
diff --git a/ext/VMS-Stdio/t/vms_stdio.t b/ext/VMS-Stdio/t/vms_stdio.t
index 77505d8fac..77505d8fac 100755..100644
--- a/ext/VMS-Stdio/t/vms_stdio.t
+++ b/ext/VMS-Stdio/t/vms_stdio.t
diff --git a/genpacksizetables.pl b/genpacksizetables.pl
index 9dffc2c6ca..9dffc2c6ca 100755..100644
--- a/genpacksizetables.pl
+++ b/genpacksizetables.pl
diff --git a/hints/aix_4.sh b/hints/aix_4.sh
index 08a689480a..08a689480a 100755..100644
--- a/hints/aix_4.sh
+++ b/hints/aix_4.sh
diff --git a/installhtml b/installhtml
index b243df7d96..b243df7d96 100755..100644
--- a/installhtml
+++ b/installhtml
diff --git a/mad/p55 b/mad/p55
index 20b879bbd2..20b879bbd2 100755..100644
--- a/mad/p55
+++ b/mad/p55
diff --git a/makedepend.SH b/makedepend.SH
index 445ccfa667..445ccfa667 100755..100644
--- a/makedepend.SH
+++ b/makedepend.SH
diff --git a/pod/buildtoc b/pod/buildtoc
index 12cbc94592..12cbc94592 100755..100644
--- a/pod/buildtoc
+++ b/pod/buildtoc
diff --git a/pod/pod2man.PL b/pod/pod2man.PL
index 7d7d68f46b..7d7d68f46b 100755..100644
--- a/pod/pod2man.PL
+++ b/pod/pod2man.PL
diff --git a/pod/pod2text.PL b/pod/pod2text.PL
index ede0fe76b0..ede0fe76b0 100755..100644
--- a/pod/pod2text.PL
+++ b/pod/pod2text.PL
diff --git a/pod/rofftoc b/pod/rofftoc
index a2d0e7ba20..a2d0e7ba20 100755..100644
--- a/pod/rofftoc
+++ b/pod/rofftoc
diff --git a/pod/splitman b/pod/splitman
index 9fe404a061..9fe404a061 100755..100644
--- a/pod/splitman
+++ b/pod/splitman
diff --git a/pod/splitpod b/pod/splitpod
index 10fd6afb11..10fd6afb11 100755..100644
--- a/pod/splitpod
+++ b/pod/splitpod
diff --git a/qnx/ar b/qnx/ar
index 21a6709bf6..21a6709bf6 100755..100644
--- a/qnx/ar
+++ b/qnx/ar
diff --git a/qnx/cpp b/qnx/cpp
index 6459af249f..6459af249f 100755..100644
--- a/qnx/cpp
+++ b/qnx/cpp
diff --git a/t/comp/use.t b/t/comp/use.t
index c9b76d79a4..c9b76d79a4 100755..100644
--- a/t/comp/use.t
+++ b/t/comp/use.t
diff --git a/t/io/openpid.t b/t/io/openpid.t
index 946fa5e3c2..946fa5e3c2 100755..100644
--- a/t/io/openpid.t
+++ b/t/io/openpid.t
diff --git a/t/op/filetest_t.t b/t/op/filetest_t.t
index 350856411d..350856411d 100755..100644
--- a/t/op/filetest_t.t
+++ b/t/op/filetest_t.t
diff --git a/t/op/sigdispatch.t b/t/op/sigdispatch.t
index 5d9908e6ed..5d9908e6ed 100755..100644
--- a/t/op/sigdispatch.t
+++ b/t/op/sigdispatch.t
diff --git a/t/porting/diag.t b/t/porting/diag.t
index 7c051721cb..7c051721cb 100755..100644
--- a/t/porting/diag.t
+++ b/t/porting/diag.t
diff --git a/t/porting/exec-bit.t b/t/porting/exec-bit.t
new file mode 100644
index 0000000000..7971ed7c27
--- /dev/null
+++ b/t/porting/exec-bit.t
@@ -0,0 +1,43 @@
+#!/perl -w
+use 5.010;
+use strict;
+
+# This test checks that anything with an executable bit is
+# identified in Porting/exec-bit.txt to makerel will set
+# the exe bit in the release tarball
+
+require './test.pl';
+
+plan('no_plan');
+
+use ExtUtils::Manifest qw(maniread);
+use File::Basename;
+use File::Find;
+use File::Spec::Functions;
+
+# Copied from Porting/makerel - these will get +x in the tarball
+# XXX refactor? -- dagolden, 2010-07-23
+my %exe_list =
+ map { $_ => 1 }
+ map { my ($f) = split; glob($f) }
+ grep { $_ !~ /\A#/ && $_ !~ /\A\s*\z/ }
+ map { split "\n" }
+ do { local (@ARGV, $/) = '../Porting/exec-bit.txt'; <> };
+
+# Get MANIFEST
+$ExtUtils::Manifest::Quiet = 1;
+my @manifest = sort keys %{ maniread("../MANIFEST") };
+
+# Check that +x files in repo get +x from makerel
+for my $f ( @manifest ) {
+ next unless -x "../$f";
+
+ ok( $exe_list{$f}, "tarball will chmod +x $f" )
+ or diag( "Remove the exec bit or add to Porting/exec-bit.txt" );
+
+ delete $exe_list{$f}; # seen it
+}
+
+ok( ! %exe_list, "Everything in Porting/exec-bit.txt has +x in repo" )
+ or diag( "Files missing exec bit:\n " . join("\n ", sort keys %exe_list) . "\n");
+
diff --git a/t/test.pl b/t/test.pl
index 2bf429c11c..2bf429c11c 100755..100644
--- a/t/test.pl
+++ b/t/test.pl
diff --git a/uconfig.sh b/uconfig.sh
index 378c129828..378c129828 100755..100644
--- a/uconfig.sh
+++ b/uconfig.sh
diff --git a/vms/ext/filespec.t b/vms/ext/filespec.t
index b40cc816f3..b40cc816f3 100644..100755
--- a/vms/ext/filespec.t
+++ b/vms/ext/filespec.t
diff --git a/win32/distclean.bat b/win32/distclean.bat
index 18b94b0cec..18b94b0cec 100755..100644
--- a/win32/distclean.bat
+++ b/win32/distclean.bat
diff --git a/win32/perlexe.manifest b/win32/perlexe.manifest
index 24ee19dca4..24ee19dca4 100755..100644
--- a/win32/perlexe.manifest
+++ b/win32/perlexe.manifest
diff --git a/x2p/Makefile.SH b/x2p/Makefile.SH
index 296fdc8efc..296fdc8efc 100755..100644
--- a/x2p/Makefile.SH
+++ b/x2p/Makefile.SH
diff --git a/x2p/cflags.SH b/x2p/cflags.SH
index 255f586f24..255f586f24 100755..100644
--- a/x2p/cflags.SH
+++ b/x2p/cflags.SH