debian/0000755000000000000000000000000013375014723007173 5ustar debian/perl-doc.moduledocs0000644000000000000000000000002412265313056012752 0ustar Net/Config.eg Net debian/perl-doc.README.Debian0000644000000000000000000000022712265313056012737 0ustar Note that parts of this package, including Perl changelog history since version 5.000, can be found in /usr/share/doc/perl rather than this directory. debian/perl.postinst0000644000000000000000000000136012265313056011740 0ustar #!/bin/sh -e if [ "$1" = configure ] then # The 5.6.0 packages had /usr/share/doc/perl as a symlink to # perl-base, now the reverse. docs=/usr/share/doc if [ -L $docs/perl ] && [ ! -L $docs/perl-base ] && [ -d $docs/perl-base ] then rm -f $docs/perl mv $docs/perl-base $docs/perl ln -s perl $docs/perl-base fi # util-linux has an alternate rename update-alternatives --install /usr/bin/rename rename /usr/bin/prename 60 \ --slave /usr/share/man/man1/rename.1.gz rename.1.gz \ /usr/share/man/man1/prename.1.gz if which dpkg-trigger >/dev/null 2>&1 && \ [ -n "$2" ] && \ dpkg --compare-versions "$2" lt 5.18.0 then dpkg-trigger perl-major-upgrade fi fi exit 0 debian/perl-doc.docs0000644000000000000000000000033612265313056011552 0ustar Porting/pumpkin.pod perl README perl debian/changelog perl-doc/changelog.Debian debian/copyright perl-doc/copyright debian/perl-doc.README.Debian perl-doc/README.Debian cpan/libnet/Config.eg perl-doc/Net/Config.eg debian/perl-base.files.shared0000644000000000000000000000002512265313056013331 0ustar usr/lib/libperl.so.* debian/README.Debian0000644000000000000000000000271312265313056011235 0ustar Perl Packages for Debian ======================== perl - Larry Wall's Practical Extracting and Report Language. perl-base - The Pathologically Eclectic Rubbish Lister. perl-modules - Core Perl modules. perl-doc - Perl documentation. perl-debug - Debug-enabled Perl interpreter. libperl5.18 - Shared Perl library. libperl-dev - Perl library: development files. libcgi-fast-perl - CGI::Fast Perl module. To provide a minimal working perl, the ``perl-base'' package provides the /usr/bin/perl binary plus a basic set of libraries. The remainder of the application is included in the perl, perl-modules and perl-doc packages. libcgi-fast-perl has been split from -modules as it depends on libfcgi-perl. See the 'README.source' file in the perl source package for information on building the package. perl-suid removed ================= suidperl was removed upstream with 5.12, so the perl-suid package which used to be distributed in Debian has been removed too. Possible alternatives include using a simple setuid C wrapper to execute a perl script from a hard-coded location, or using a more general tool like sudo. Credits ------- Previous maintainers of Debian Perl packages: Ray Dassen , Carl Streeter , Robert Sanders and Darren Stalder . -- Brendan O'Dea Tue, 8 Mar 2005 19:30:38 +1100 debian/check-control0000755000000000000000000002107012265313056011652 0ustar #!/usr/bin/perl -w use strict; # Copyright 2011 Niko Tyni # # This program is free software; you can redistribute it and/or modify # it under the same terms as Perl itself. # This script was created for checking the Breaks/Replaces/Provides # triplets in the debian/control file of the Debian perl source package. # # 1) check the versioned Breaks against Module::CoreList information # # 2) check that all Breaks entries have appropriate Replaces and Provides # entries # # 3) check that there are no packages in the Debian archive (as seen via # the local apt package cache) that should have Breaks/Replaces/Provides # entries # # See the the hashes below for hardcoded special cases that will probably # need to be updated in the future. # list special cases of version numbers that are OK here # version numbering discontinuities (epochs, added digits) cause these my %ok = ( "libcgi-pm-perl" => { "3.49" => "3.49-1squeeze1", }, "libextutils-parsexs-perl" => { "2.2002" => "2.2002", }, "libextutils-cbuilder-perl" => { "0.2602" => "0.2602", "0.27" => "0.2700", }, "libparse-cpan-meta-perl" => { "1.39" => "1.39", "1.40" => "1.40", }, "libmath-bigint-perl" => { "1.89" => "1.89", }, "libautodie-perl" => { "2.1001" => "2.10.01", }, ); # list special cases where a Breaks entry doesn't need to imply # Replaces+Provides my %triplet_check_skip = ( "perl-base" => [ "libfile-spec-perl" ], "perl-modules" => [ qw( libswitch-perl libpod-plainer-perl libclass-isa-perl libshell-perl libdevel-dprof-perl )], ); # list special cases where the name of the Debian package does not # match a module name that has a right $VERSION entry my %special_modules = ( "libcgi-pm-perl" => 'CGI', "libansicolor-perl" => 'Term::ANSIColor', "libio-compress-perl" => "IO::Compress::Gzip", "libio-compress-zlib-perl" => "IO::Compress::Gzip", "liblocale-codes-perl" => "Locale::Country", "libscalar-list-utils-perl" => "List::Util", ); use Test::More; use Module::CoreList; use Dpkg::Control::Info; use Dpkg::Deps; use AptPkg::Config '$_config'; use AptPkg::System '$_system'; use AptPkg::Cache; _init_AptPkg(); # AptPkg offers a proper Debian version comparison mechanism my $versioning = $_system->versioning; my $apt = AptPkg::Cache->new; # slurp in the control info my $control = Dpkg::Control::Info->new(shift || "debian/control"); my $perl_version = get_perl_version(); # the 5.10 packaging used Conflicts; 5.12 onwards uses Breaks my $breaksname = ($perl_version <= 5.010001 ? "Conflicts" : "Breaks"); # initialize the corelist info my $corelist = $Module::CoreList::version{$perl_version}; die(qq(no Module::CoreList information found for $perl_version (try "perl -Idist/Module-CoreList/lib $0"))) if !defined $corelist; # for the known modules in the corelist, create a mapping # from a probable Debian package name to the CPAN distribution name # # this is mostly to get the casing right (Io vs. IO etc.) my %debian_from_cpan_guess; for my $cpan_name (keys %$corelist) { my $guess = "lib" . (lc $cpan_name) . "-perl"; $guess =~ s/::/-/g; $debian_from_cpan_guess{$guess} = $cpan_name; } # we also store the other way around so we don't have to do # the above dance every time my %cpan_from_debian_guess = reverse %debian_from_cpan_guess; # cache the list of our own binary packages for later my %is_perl_binary; my %deps_found; my $breaks_total = 0; for my $perl_package_info ($control->get_packages) { my $perl_package_name = $perl_package_info->{Package}; my $dep_found = $deps_found{$perl_package_name} ||= {}; $is_perl_binary{$perl_package_name}++; next if !exists $perl_package_info->{$breaksname}; # cache all the targets for Breaks, Replaces and Provides for later # we store Dpkg::Deps::Simple objects for each target for my $deptype ($breaksname, "Replaces", "Provides") { next if !exists $perl_package_info->{$deptype}; # Dpkg::Deps cannot parse unsubstituted substvars so remove this $perl_package_info->{$deptype} =~ s/\${perlapi:Provides}//; my $parsed = deps_parse($perl_package_info->{$deptype}); next if !defined $parsed; for my $target ($parsed->get_deps) { $dep_found->{$deptype}{$target->{package}} = $target; $breaks_total++ if $deptype eq $breaksname; } } } plan tests => 3 * $breaks_total + 2; ok($breaks_total, "successfully parsed debian/control"); for my $perl_package_name (keys %deps_found) { my $dep_found = $deps_found{$perl_package_name}; # go through all the Breaks targets # check the version against Module::CoreList # check for appropriate Replaces and Provides entries # # the number of digits is a pain # we use the current version in the Debian archive to determine # how many we need for my $broken (keys %{$dep_found->{$breaksname}}) { my $module = deb2cpan($broken); my ($archive_epoch, $archive_digits) = get_archive_info($broken); my $broken_version = $dep_found->{$breaksname}{$broken}{version}; $broken_version =~ s/-\d+$//; # remove the Debian revision SKIP: { skip("$module is unknown to Module::CoreList", 3) if !exists $corelist->{$module}; my $corelist_version = cpan_version_to_deb($corelist->{$module}, $broken, $archive_digits); $corelist_version = $archive_epoch . ":". $corelist_version if $archive_epoch; is($broken_version, $corelist_version, "Breaks for $broken in $perl_package_name matches Module::CoreList for $module"); skip("not checking Replaces and Provides for $broken in $perl_package_name", 2) if $triplet_check_skip{$perl_package_name} && grep { $_ eq $broken } @{$triplet_check_skip{$perl_package_name}}; for my $dep (qw(Replaces Provides)) { ok(exists $dep_found->{$dep}{$broken}, "Breaks for $broken in $perl_package_name implies $dep"); } } } } # finally, also check if there are any (new?) packages in the archive # that match Module::CoreList my @found_in_archive; for my $module (keys %$corelist) { my $package = $cpan_from_debian_guess{$module}; next if grep $deps_found{$_}{$breaksname}{$package}, keys %deps_found; next if $is_perl_binary{$package}; push @found_in_archive, $package if exists $apt->{$package} && exists $apt->{$package}{VersionList}; } my $found_in_archive = join(" ", @found_in_archive); is($found_in_archive, "", "no potential packages for new Provides/Replaces/Breaks found in the archive"); # convert libfoo-bar-perl to Foo::Bar sub deb2cpan { local $_ = shift; return $special_modules{$_} if exists $special_modules{$_}; return $debian_from_cpan_guess{$_} if exists $debian_from_cpan_guess{$_}; s/^lib(.*)-perl/$1/; s/-/::/g; s/(\w+)/\u$1/g; return $_; } sub cpan_version_to_deb { my $cpan_version = shift; my $package = shift; my $digits = shift; # cpan_version # digits # result # 1.15_02, 2 => 1.15.02 # 1.15_02, 4 => 1.1502 # 1.15_02, 0 => 1.15.02 # # 1.15_021, 2 => 1.15.021 # 1.15_021, 4 => 1.1500.021 # 1.15_021, 0 => 1.15.021 # # 1.15, 1 => 1.15 # 1.15, 2 => 1.15 # 1.15, 4 => 1.1500 # 1.15, 0 => 1.15 return $ok{$package}{$cpan_version} if exists $ok{$package}{$cpan_version}; # 1.15_02 => (1, 15, 02) my ($major, $prefix, $suffix) = ($cpan_version =~ /^(\d+\.)(\d+)(?:_(\d+))?$/); die("no match with $cpan_version?") if !$major; $suffix ||= ""; if (length($suffix) + length($prefix) == $digits) { $prefix .= $suffix; $suffix = ""; } if (length($suffix) + length($prefix) < $digits) { $prefix .= "0" while length($prefix) < $digits; } $suffix = ".$suffix" if $suffix ne ""; $major.$prefix.$suffix; } sub get_archive_info { my $p = shift; return (0, 0) if !exists $apt->{$p}; return (0, 0) if !exists $apt->{$p}{VersionList}; # virtual package my $latest = (sort byversion @{$apt->{$p}{VersionList}})[-1]; my $v = $latest->{VerStr}; my ($epoch, $major, $prefix, $suffix, $revision) = ($v =~ /^(?:(\d+):)?((?:\d+\.))+(\d+)(?:_(\d+))?(-[^-]+)$/); return ($epoch, length $prefix); } sub byversion { return $versioning->compare($a->{VerStr}, $b->{VerStr}); } sub _init_AptPkg { # From /usr/share/doc/libapt-pkg-perl/examples/apt-cache # # initialise the global config object with the default values and # setup the $_system object $_config->init; $_system = $_config->system; # supress cache building messages $_config->{quiet} = 2; } sub get_perl_version { # if cwd is a perl source directory, we check the corelist information # for that. Otherwise, fall back to the running perl version my $perl_version = qx'dpkg-parsechangelog | \ sed -ne "s/-[^-]\+$//; s/~.*//; s/^Version: *\([0-9]\+:\)*//p"'; chomp $perl_version; $perl_version = version->parse($perl_version || $])->numify; diag("testing for $perl_version"); return $perl_version; } debian/libcgi-fast-perl.files0000644000000000000000000000010012265313056013330 0ustar usr/share/man/man3/CGI::Fast.3perl usr/share/perl/*/CGI/Fast.pm debian/rules0000755000000000000000000003634312265313056010262 0ustar #!/usr/bin/make -f # # debian/rules for perl. # # Note that although this rules file currently invokes tools from dpkg-dev # implemented in perl (such as dpkg-architecture and so on), it aspires # to not use perl at all, so that a new architecture can easily be # bootstrapped. This aspiration should be considered when changing this # file. # # # we use bash-specific functionality, at least "shopt -s globstar" export SHELL = /bin/bash fullversion := $(shell /bin/bash debian/config.debian --full-version) nextversion := $(shell /bin/bash debian/config.debian --next-version) version := $(shell /bin/bash debian/config.debian --version) installtype := $(shell /bin/bash debian/config.debian --install-type) test_target := $(shell /bin/bash debian/config.debian --test-target) strip := $(shell /bin/bash debian/config.debian --strip) srcdir := $(shell pwd) packages := $(shell sed -n 's/^Package: *\(.*\)/\1/p' debian/control) tmp = debian/tmp bin = $(tmp)/usr/bin man = $(tmp)/usr/share/man lib = $(tmp)/usr/lib/perl/$(version) share = $(tmp)/usr/share/perl/$(version) build = debian/build debug = $(build)/perl-debug/usr/lib/debug patches = debian/patches/series patchlevel = patchlevel-debian.h checkdir = test -d debian checkroot = test `id -u` -eq 0 checkperl = $(SHELL) debian/checkperl # this may differ from $(fullversion) for release candidates and the like package_upstream_version = $(shell dpkg-parsechangelog | \ sed -ne 's/-[^-]\+$$//; s/^Version: *\([0-9]\+:\)*//p') package_version = $(shell dpkg-parsechangelog | sed -n 's/^Version: *//p') # this gets prepended to the patch names in patchlevel.h patchprefix = DEBPKG: # control file substitutions subst_upstream = -VUpstream-Version=$(package_upstream_version) subst_perlapi = -Vperlapi:Provides="`./perl.static debian/mkprovides`" subst_next_upstream = -VNext-Upstream-Version=$(nextversion) # for cpan/Compress-Raw-Zlib export BUILD_ZLIB=False export ZLIB_INCLUDE=/usr/include export ZLIB_LIB=/usr/lib # for cpan/Compress-Raw-Bzip2 export BUILD_BZIP2=0 export BZIP2_INCLUDE=/usr/include export BZIP2_LIB=/usr/lib build: build-stamp install: install-stamp build-arch: build build-indep: build build-stamp: $(patchlevel) perl.static perl.debug libperl.so.$(fullversion) touch $@ $(patchlevel): $(patches) $(checkdir) test -f $< # maintainer sanity check debian/gen-patchlevel -p $(patchprefix) -v $(package_version) $< > $@ perl.static: $(checkdir) rm -f libperl.so* # must be built last [ ! -f Makefile ] || $(MAKE) distclean [ -f $(patchlevel) ] || touch $(patchlevel) $(SHELL) debian/config.debian --static $(MAKE) perl $(test_target) mv libperl.a libperl-static mv perl perl.static # for the build log ./perl.static -Ilib -V perl.debug: $(checkdir) rm -f libperl.so* # must be built last [ ! -f Makefile ] || $(MAKE) distclean [ -f $(patchlevel) ] || touch $(patchlevel) $(SHELL) debian/config.debian --debug $(MAKE) perl mv perl perl.debug libperl.so.$(fullversion): $(checkdir) [ ! -f Makefile ] || $(MAKE) distclean [ -f $(patchlevel) ] || touch $(patchlevel) $(SHELL) debian/config.debian --shared $(MAKE) SHRPLDFLAGS='$$(LDDLFLAGS) -Wl,-soname,libperl.so.$(version)' $@ ln -s libperl.so.$(fullversion) libperl.so.$(version) ln -s libperl.so.$(version) libperl.so $(MAKE) all $(test_target) || { rm -f libperl.so*; exit 1; } clean: $(checkdir) $(checkroot) test -f $(patches) # maintainer sanity check [ ! -f Makefile ] || $(MAKE) distclean rm -rf config.over perl.static perl.debug libperl-static libperl.so* \ $(patchlevel) build-stamp install-stamp t/auto debian/shlibs.local \ debian/perl-base.shlibs debian/libperl$(version).shlibs \ debian/substvars debian/files debian/list.tmp $(tmp) $(build) # rm -f cpan/DB_File/DB_File.pm.bak cpan/DB_File/t/db-btree.t.bak \ cpan/DB_File/t/db-hash.t.bak cpan/DB_File/t/db-recno.t.bak install-stamp: build-stamp $(checkdir) $(checkroot) $(checkperl) rm -rf $(tmp) $(build) $(MAKE) install DESTDIR="$(tmp)" # switch man extensions to 1p and 3pm for vendor module installs ./perl.static -i -p \ -e 's/^(man1ext=).*/$$1'\''1p'\''/;' \ -e 's/^(man3ext=).*/$$1'\''3pm'\''/;' \ $(lib)/Config.pm $(lib)/Config_heavy.pl # remove dpkg-buildflags effects from %Config # see #657853 if which dpkg-buildflags >/dev/null 2>&1; then \ for flag in $(shell dpkg-buildflags --get CPPFLAGS) \ $(shell dpkg-buildflags --get CFLAGS); do \ case "$$flag" in -fstack-protector) ;; \ *) ./perl.static -i -pe "/^(cc|cpp)flags/ and \ s/(['\s])\Q$$flag\E(['\s])/\1\2/ and s/ +/ /" \ $(lib)/Config.pm $(lib)/Config_heavy.pl ;; \ esac; done; \ for flag in $(shell dpkg-buildflags --get LDFLAGS); do \ ./perl.static -i -pe "/^ld(dl)?flags/ and \ s/(['\s])\Q$$flag\E(['\s])/\1\2/ and s/ +/ /" \ $(lib)/Config.pm $(lib)/Config_heavy.pl ; \ done; \ fi # convert required header files -cd /usr/include; $(srcdir)/perl.static -I $(srcdir)/lib \ $(srcdir)/utils/h2ph -a -d $(srcdir)/$(lib) \ `cat $(srcdir)/debian/headers` # fix up generated headers ./perl.static -Ilib debian/fixheaders $(lib) # simple wrapper around Errno module cp debian/errno.ph $(lib) ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) ifeq (,$(findstring x-perl-notest,$(DEB_BUILD_OPTIONS))) # Verify that the headers are usable for ph in `< debian/headers sed -e 's/\.h$$/.ph/'`; do \ if [ ! -f $(lib)/$$ph ]; then \ echo "$$ph: missing"; else \ echo $$ph | ./perl.static debian/check-require $(tmp) \ || exit 1; \ fi; \ done endif endif # remove some cruft rm -f $(lib)/.packlist # installperl copies the symlinks as a files rm -f $(lib)/CORE/libperl.so $(lib)/CORE/libperl.so.$(version) # remove versioned binary, relink after moving files rm -f $(bin)/perl$(fullversion) # relocate perl libraries and create links cp libperl-static $(tmp)/usr/lib/libperl.a mv $(lib)/CORE/libperl.so.$(fullversion) $(tmp)/usr/lib ln -s libperl.so.$(fullversion) $(tmp)/usr/lib/libperl.so.$(version) ln -s libperl.so.$(version) $(tmp)/usr/lib/libperl.so # move to full version (symlinks created in perl-base below) mv $(lib) $(tmp)/usr/lib/perl/$(fullversion) mv $(share) $(tmp)/usr/share/perl/$(fullversion) ifeq ($(installtype),static) cp perl.static $(bin)/perl endif # install debug binary as debugperl cp perl.debug $(bin)/debugperl # split packages # Note: this relies on the order of debian/control for p in $(packages); \ do \ mkdir -p $(build)/$$p; \ (cd $(tmp); \ for sfx in '' .$(installtype); \ do \ list=../$$p.files$$sfx; \ test -s $$list || continue; \ shopt -s globstar; \ find `grep -v '^#' $$list` ! -type d; \ done) >debian/list.tmp; \ (cd $(tmp); cpio -vdumpl ../build/$$p) &1 | \ grep -v ' linked to '; \ (cd $(tmp); ../../perl.static -nle unlink) &2; \ fi; \ done # remove some linked man pages (symlinked later and cause # problems as-is when compressing) rm -f $(build)/perl/usr/share/man/man1/pstruct.1 \ $(build)/perl/usr/share/man/man1/perlthanks.1 \ $(build)/perl/usr/share/man/man1/psed.1 # the diagnostics module needs perldiag.pod mkdir $(build)/perl-modules/usr/share/perl/$(fullversion)/pod mv $(build)/perl-doc/usr/share/perl/$(fullversion)/pod/perldiag.pod \ $(build)/perl-modules/usr/share/perl/$(fullversion)/pod # copy dummy perldoc to perl package cp debian/perl.perldoc $(build)/perl/usr/bin/perldoc chmod 755 $(build)/perl/usr/bin/perldoc # install rename script to bin (as prename, alternative configured) cp debian/rename $(build)/perl/usr/bin/prename chmod 755 $(build)/perl/usr/bin/prename ./perl.static -Ilib $(build)/perl/usr/bin/pod2man --official \ debian/rename >$(build)/perl/usr/share/man/man1/prename.1 # install docs for p in $(packages); \ do \ doc=$(build)/$$p/usr/share/doc; \ test -d $$doc || mkdir -p $$doc; \ if test -f debian/$$p.docs; \ then \ while read src target; \ do \ d=`echo $$target | sed 's,/[^/]*$$,,'`; \ test -d $$doc/$$d || mkdir -p $$doc/$$d; \ cp -p $$src $$doc/$$target; \ done $(build)/$$p/DEBIAN/conffiles; \ (cd $(build)/$$p; find usr -type f -print | xargs -r md5sum) \ >$(build)/$$p/DEBIAN/md5sums; \ chmod 644 $(build)/$$p/DEBIAN/md5sums; \ dpkg-gencontrol -p$$p -isp -P$(build)/$$p $(subst_upstream) $(subst_next_upstream); \ dpkg --build $(build)/$$p ..; \ done # Build architecture-dependent files here. binary-arch: build-stamp install-stamp $(checkdir) $(checkroot) ifeq ($(installtype),static) echo 'libperl $(version) libperl$(version) (= $${source:Version})' \ >debian/shlibs.local echo 'libperl $(version) libperl$(version) (>= $(package_upstream_version))' \ >debian/libperl$(version).shlibs else echo 'libperl $(version)' >debian/shlibs.local echo 'libperl $(version) libperl$(version) (>= $(package_upstream_version))' \ >debian/perl-base.shlibs endif for p in `./perl.static -l -00ne 'print $$1 if /^Architecture:\s+any/m \ and /^Package:\s+(.*)/m' debian/control`; \ do \ rm -rf $(build)/$$p/DEBIAN debian/substvars; \ mkdir $(build)/$$p/DEBIAN; \ for c in preinst postinst prerm postrm shlibs; \ do \ test -f debian/$$p.$$c || continue; \ cp debian/$$p.$$c $(build)/$$p/DEBIAN/$$c; \ chmod 755 $(build)/$$p/DEBIAN/$$c; \ done; \ ! test -f $(build)/$$p/DEBIAN/shlibs || chmod 644 $(build)/$$p/DEBIAN/shlibs; \ (cd $(build)/$$p; find usr -type f -print | xargs -r md5sum) \ >$(build)/$$p/DEBIAN/md5sums; \ chmod 644 $(build)/$$p/DEBIAN/md5sums; \ done # dpkg-shlibdeps needs to be run only after all the shlibs are present for p in `./perl.static -l -00ne 'print $$1 if /^Architecture:\s+any/m \ and /^Package:\s+(.*)/m' debian/control`; \ do \ find $(build)/$$p/usr -type f \ \( -perm /111 -o -name \*.so\* \) -print | \ fgrep -v /usr/lib/debug/ | \ xargs -r dpkg-shlibdeps -S$(srcdir)/$(build)/libperl$(version) \ -S$(srcdir)/$(build)/perl-base 2>&1 | \ fgrep -v 'File format not recognized'; # scripts \ dpkg-gencontrol -p$$p -isp -P$(build)/$$p $(subst_perlapi) $(subst_upstream); \ dpkg --build $(build)/$$p ..; \ done binary: binary-indep binary-arch .NOTPARALLEL: .PHONY: build clean binary-indep binary-arch binary install build-arch build-indep debian/splitdoc0000644000000000000000000000241412265313056010736 0ustar #!./perl.static -w # # Split POD documentation out of base modules and remove auto-loaded # subroutines # BEGIN { unshift @INC, 'lib' } use strict; use File::Find; use File::Path; use IO::File; my @args = @ARGV; @ARGV = (); find sub { push @ARGV, $File::Find::name if -f and /\.pm$/ }, @args; die "$0: no modules under @args?\n" unless @ARGV; $^I = ''; $/ = ''; my %auto; my $in_pod; my $pod; while (<>) { if ($in_pod ||= /^=\w/) { unless ($pod) { my $file = $ARGV; my $dir; for ($file) { s/\.pm$/.pod/; s/perl-base/perl-doc/; s!/usr/lib/!/usr/share/!; ($dir) = m!(.*)/!; } mkpath $dir unless -d $dir; $pod = IO::File->new(">$file") or die "$0: can't create $file ($!)\n"; } if (/^=cut\n/) { $in_pod = 0; } else { $pod->print($_); } } else { $auto{$ARGV}++ if /(use|require)\s+AutoLoader\b/; print; } } continue { if (eof) { close ARGV; if ($pod) { $pod->print("=cut\n"); $pod->close; undef $pod; } $in_pod = 0; } } # strip everyting following __END__ in modules which use AutoLoader $/ = "\n"; my $end; exit unless @ARGV = keys %auto; while (<>) { print unless $end ||= /^__END__$/; } continue { if (eof) { close ARGV; $end = 0; } } exit debian/perl-debug.files0000644000000000000000000000002212265313056012235 0ustar usr/bin/debugperl debian/released-versions0000644000000000000000000000016312265313056012546 0ustar 5.005 5.6.0 5.6.1 5.8.0 5.8.1 5.8.2 5.8.3 5.8.4 5.8.6 5.8.7 5.8.8 5.10.0 5.10.1 5.12.3 5.12.4 5.14.2 5.18.1 5.18.2 debian/control0000644000000000000000000003001612665306500010574 0ustar Source: perl Section: perl Priority: standard Maintainer: Ubuntu Developers XSBC-Original-Maintainer: Niko Tyni Uploaders: Dominic Hargreaves Standards-Version: 3.9.3 Homepage: http://dev.perl.org/perl5/ Build-Depends: file, cpio, libdb-dev, libgdbm-dev, netbase [!hurd-any], procps [!hurd-any], zlib1g-dev | libz-dev, libbz2-dev, dpkg-dev (>= 1.16.0) Build-Conflicts: libterm-readline-gnu-perl (<< 1.17), libfile-sharedir-perl Vcs-Git: git://anonscm.debian.org/perl/perl.git -b debian-5.18 Vcs-Browser: http://anonscm.debian.org/gitweb/?p=perl/perl.git Package: perl-base Essential: yes Priority: required Architecture: any Pre-Depends: ${shlibs:Depends}, dpkg (>= 1.14.20) Conflicts: safe-rm (<< 0.8), update-inetd (<< 4.41), defoma (<< 0.11.12), doc-base (<< 0.10.3), mono-gac (<< 2.10.8.1-3), libscalar-list-utils-perl Breaks: autoconf2.13 (<< 2.13-45), libfile-spec-perl (<< 3.4000), libxsloader-perl (<< 0.16), libmarc-charset-perl (<< 1.2), libsocket-perl (<< 2.009), libcommon-sense-perl (<< 3.72-2~) Replaces: perl (<< 5.10.1-12), perl-modules (<< 5.10.1-1), libperl5.8 (<< 5.8.0-20), libscalar-list-utils-perl, libxsloader-perl, libsocket-perl Provides: perl5-base, ${perlapi:Provides}, libscalar-list-utils-perl, libxsloader-perl, libsocket-perl Suggests: perl Description: minimal Perl system Perl is a scripting language used in many system scripts and utilities. . This package provides a Perl interpreter and the small subset of the standard run-time library required to perform basic tasks. For a full Perl installation, install "perl" (and its dependencies, "perl-modules" and "perl-doc"). Package: libcgi-fast-perl Priority: optional Architecture: all Depends: perl (>= ${source:Version}), perl (<< ${Next-Upstream-Version}~), libfcgi-perl Description: CGI::Fast Perl module CGI::Fast is a subclass of the CGI object created by CGI.pm. It is specialized to work well with the Open Market FastCGI standard, which greatly speeds up CGI scripts by turning them into persistently running server processes. Scripts that perform time-consuming initialization processes, such as loading large modules or opening persistent database connections, will see large performance improvements. Package: perl-doc Section: doc Priority: optional Architecture: all Depends: perl (>= ${Upstream-Version}-1) Suggests: man-browser, groff Description: Perl documentation Perl manual pages, POD documentation and the `perldoc' program. If you are writing Perl programs, you almost certainly need this. Package: perl-debug Section: debug Priority: extra Architecture: any Depends: perl (= ${binary:Version}), ${shlibs:Depends} Description: debug-enabled Perl interpreter debugperl provides a debug-enabled version of Perl which can produce extensive information about the interpreter as it compiles and executes a program (see the -D switch in perlrun(1)). . Note that this package is primarily of use in debugging *Perl* rather than perl programs, which may be traced/debugged using the standard perl binary using the -d switch (see perldebug(1)). Package: libperl5.18 Section: libs Priority: optional Architecture: any Depends: ${shlibs:Depends}, perl-base (= ${binary:Version}) Replaces: perl-base (<= 5.8.7-4) Description: shared Perl library This package is required by programs which embed a Perl interpreter to ensure that the correct version of `perl-base' is installed. It additionally contains the shared Perl library on architectures where the perl binary is linked to libperl.a (currently only i386, for performance reasons). In other cases the actual library is in the `perl-base' package. Package: libperl-dev Section: libdevel Priority: optional Architecture: any Depends: perl (= ${binary:Version}), libperl5.18 (= ${binary:Version}), libc6-dev | libc-dev Description: Perl library: development files Files for developing applications which embed a Perl interpreter. Package: perl-modules Priority: standard Architecture: all Depends: perl (>= ${Upstream-Version}-1) Recommends: libarchive-extract-perl, libmodule-pluggable-perl, libpod-latex-perl, libterm-ui-perl, libtext-soundex-perl Suggests: libb-lint-perl, libcpanplus-dist-build-perl, libcpanplus-perl, libfile-checktree-perl, liblog-message-simple-perl, liblog-message-perl, libobject-accessor-perl Conflicts: defoma (<< 0.11.12), mono-gac (<< 2.10.8.1-3) Breaks: libpod-parser-perl (<< 1.60), libansicolor-perl (<< 4.02), libfile-temp-perl (<< 0.23), libnet-perl (<= 1:1.22), libattribute-handlers-perl (<< 0.94), libcgi-pm-perl (<< 3.63), libi18n-langtags-perl (<< 0.39), liblocale-maketext-perl (<< 1.23), libmath-bigint-perl (<< 1.9991), libnet-ping-perl (<< 2.41), libtest-harness-perl (<< 3.26), libtest-simple-perl (<< 0.98), liblocale-codes-perl (<< 3.25), libmodule-corelist-perl (<< 3.03), libio-zlib-perl (<< 1.10), libarchive-tar-perl (<< 1.90), libextutils-cbuilder-perl (<< 0.280210), libmodule-build-perl (<< 0.400300), libmodule-load-perl (<< 0.24), liblocale-maketext-simple-perl (<< 0.21), libparams-check-perl (<< 0.36), libmodule-pluggable-perl (<< 4.7), libmodule-load-conditional-perl (<< 0.54), libcpanplus-perl (<< 0.9135), libversion-perl (<< 1:0.9902), libpod-simple-perl (<< 3.28), libextutils-parsexs-perl (<< 3.180000), libpod-escapes-perl (<< 1.04), libparse-cpan-meta-perl (<< 1.4404), libparent-perl (<< 0.225), libautodie-perl (<< 2.13), libthread-queue-perl (<< 3.02), libfile-spec-perl (<< 3.4000), libtime-local-perl (<< 1.2300), podlators-perl (<< 2.3.1), libunicode-collate-perl (<< 0.97), libcpan-meta-perl (<< 2.120921), libmath-complex-perl (<< 1.59), libextutils-command-perl (<< 1.17), libmodule-metadata-perl (<< 1.000011), libjson-pp-perl (<< 2.27202), libperl-ostype-perl (<< 1.003), libversion-requirements-perl(<< 0.101022), libcpan-meta-yaml-perl (<< 0.008), libdigest-perl (<< 1.17), libextutils-install-perl (<< 1.59), libhttp-tiny-perl (<< 0.025), libfile-path-perl (<< 2.09), libcpan-meta-requirements-perl (<< 2.122), liblog-message-simple-perl (<< 0.10), libfile-checktree-perl (<< 4.42), libpod-latex-perl (<< 0.61), libterm-ui-perl (<< 0.34), libcpanplus-dist-build-perl (<< 0.70), libarchive-extract-perl (<< 0.68), libtext-soundex-perl (<< 3.04), libb-lint-perl (<< 1.17), liblog-message-perl (<< 0.06), libobject-accessor-perl (<< 0.46), Replaces: libpod-parser-perl, libansicolor-perl, libfile-temp-perl, libnet-perl, libattribute-handlers-perl, libcgi-pm-perl, libi18n-langtags-perl, liblocale-maketext-perl, libmath-bigint-perl, libnet-ping-perl, libtest-harness-perl, libtest-simple-perl, liblocale-codes-perl, libmodule-corelist-perl, libio-zlib-perl, libarchive-tar-perl, libextutils-cbuilder-perl, libmodule-build-perl, libmodule-load-perl, liblocale-maketext-simple-perl, libparams-check-perl, libmodule-pluggable-perl, libmodule-load-conditional-perl, libversion-perl, libpod-simple-perl, libextutils-parsexs-perl, libcpanplus-perl, libpod-escapes-perl, libparse-cpan-meta-perl, libparent-perl, libautodie-perl, libthread-queue-perl, libfile-spec-perl, libtime-local-perl, podlators-perl, libunicode-collate-perl, libcpan-meta-perl, libmath-complex-perl, libextutils-command-perl, libmodule-metadata-perl, libjson-pp-perl, libperl-ostype-perl, libversion-requirements-perl, libcpan-meta-yaml-perl, libdigest-perl, libextutils-install-perl, libhttp-tiny-perl, libfile-path-perl, libcpan-meta-requirements-perl, liblog-message-simple-perl, libfile-checktree-perl, libpod-latex-perl, libterm-ui-perl, libcpanplus-dist-build-perl, libarchive-extract-perl, libtext-soundex-perl, libb-lint-perl, liblog-message-perl, libobject-accessor-perl Provides: libpod-parser-perl, libansicolor-perl, libfile-temp-perl, libnet-perl, libattribute-handlers-perl, libcgi-pm-perl, libi18n-langtags-perl, liblocale-maketext-perl, libmath-bigint-perl, libnet-ping-perl, libtest-harness-perl, libtest-simple-perl, liblocale-codes-perl, libmodule-corelist-perl, libio-zlib-perl, libarchive-tar-perl, libextutils-cbuilder-perl, libmodule-build-perl, libmodule-load-perl, liblocale-maketext-simple-perl, libparams-check-perl, libmodule-load-conditional-perl, libversion-perl, libpod-simple-perl, libextutils-parsexs-perl, libpod-escapes-perl, libparse-cpan-meta-perl, libparent-perl, libautodie-perl, libthread-queue-perl, libfile-spec-perl, libtime-local-perl, podlators-perl, libunicode-collate-perl, libcpan-meta-perl, libmath-complex-perl, libextutils-command-perl, libmodule-metadata-perl, libjson-pp-perl, libperl-ostype-perl, libversion-requirements-perl, libcpan-meta-yaml-perl, libdigest-perl, libextutils-install-perl, libhttp-tiny-perl, libfile-path-perl, libcpan-meta-requirements-perl Description: Core Perl modules Architecture independent Perl modules. These modules are part of Perl and required if the `perl' package is installed. . Note that this package only exists to save archive space and should be considered an internal implementation detail of the `perl' package. Other packages should not depend on `perl-modules' directly, they should use `perl' (which depends on `perl-modules') instead. Package: perl Priority: standard Architecture: any Depends: perl-base (= ${binary:Version}), perl-modules (>= ${source:Version}), ${shlibs:Depends} Conflicts: libjson-pp-perl (<< 2.27200-2) Breaks: perl-doc (<< ${Upstream-Version}-1), libdigest-md5-perl (<< 2.52), libmime-base64-perl (<< 3.13), libtime-hires-perl (<< 1.9725), libstorable-perl (<< 2.41), libdigest-sha-perl (<< 5.84.01), libsys-syslog-perl (<< 0.32), libcompress-zlib-perl (<< 2.060), libcompress-raw-zlib-perl (<< 2.060), libcompress-raw-bzip2-perl (<< 2.060), libio-compress-zlib-perl (<< 2.060), libio-compress-bzip2-perl (<< 2.060), libio-compress-base-perl (<< 2.060), libio-compress-perl (<< 2.060), libthreads-perl (<< 1.86), libthreads-shared-perl (<< 1.43), libtime-piece-perl (<< 1.20.01), libencode-perl (<< 2.49), mrtg (<< 2.16.3-3.1), libhtml-template-compiled-perl (<< 0.95-1), libperl-apireference-perl (<< 0.09-1), dh-make-perl (<< 0.73-1), libregexp-optimizer-perl (<< 0.15-3), libxml-parser-lite-tree-perl (<< 0.14-1), libyaml-perl (<< 0.73-1), libload-perl (<< 0.20-1), libsoap-lite-perl (<< 0.712-4), libnet-jifty-perl (<< 0.14-1), ftpmirror (<< 1.96+dfsg-13) Replaces: perl-base (<< 5.10.1-12), perl-doc (<< 5.8.0-1), perl-modules (<< 5.8.1-1), libarchive-tar-perl (<= 1.38-2), libdigest-md5-perl, libmime-base64-perl, libtime-hires-perl, libstorable-perl, libdigest-sha-perl, libtime-piece-perl, libsys-syslog-perl, libcompress-zlib-perl, libcompress-raw-zlib-perl, libcompress-raw-bzip2-perl, libio-compress-zlib-perl, libio-compress-bzip2-perl, libio-compress-base-perl, libio-compress-perl, libthreads-perl, libthreads-shared-perl, libmodule-corelist-perl (<< 2.14-2), libencode-perl, Provides: data-dumper, perl5, libdigest-md5-perl, libmime-base64-perl, libtime-hires-perl, libstorable-perl, libdigest-sha-perl, libsys-syslog-perl, libcompress-zlib-perl, libcompress-raw-zlib-perl, libcompress-raw-bzip2-perl, libio-compress-zlib-perl, libio-compress-bzip2-perl, libio-compress-base-perl, libio-compress-perl, libthreads-perl, libthreads-shared-perl, libtime-piece-perl, libencode-perl, Recommends: netbase Suggests: perl-doc, libterm-readline-gnu-perl | libterm-readline-perl-perl, make Description: Larry Wall's Practical Extraction and Report Language Perl is a highly capable, feature-rich programming language with over 20 years of development. Perl 5 runs on over 100 platforms from portables to mainframes. Perl is suitable for both rapid prototyping and large scale development projects. . Perl 5 supports many programming styles, including procedural, functional, and object-oriented. In addition to this, it is supported by an ever-growing collection of reusable modules which accelerate development. Some of these modules include Web frameworks, database integration, networking protocols, and encryption. Perl provides interfaces to C and C++ for custom extension development. debian/libcgi-fast-perl.docs0000644000000000000000000000025012265313056013164 0ustar debian/libcgi-fast-perl.README.Debian libcgi-fast-perl/README.Debian debian/changelog libcgi-fast-perl/changelog.Debian debian/copyright libcgi-fast-perl/copyright debian/watch0000644000000000000000000000016612265313057010226 0ustar version=2 http://www.perl.com/CPAN/src/5.0/ (?:.*/)?perl-(5\.\d*[02468](?:\.[\d.]+)?)\.tar\.(?:bz2|gz) debian uupdate debian/perl.files0000644000000000000000000000027512265313056011163 0ustar # note that this fallback relies on the order of debian/control: # this package needs to come after any other packages with more # specific recipes for the directories usr/bin usr/lib/perl debian/perl-modules.files0000644000000000000000000000026712265313056012632 0ustar # note that this fallback relies on the order of debian/control: # this package needs to come after any other packages with more # specific recipes for the directories usr/share/perl debian/perl-doc.lintian-overrides0000644000000000000000000000007212265313056014255 0ustar # perl-doc needs perl doc-package-depends-on-main-package debian/libcgi-fast-perl.lintian-overrides0000644000000000000000000000012112265313056015667 0ustar # Taken from an upstream text spelling-error-in-copyright explicitely explicitly debian/perl.perldoc0000644000000000000000000000017512265313056011510 0ustar #!/bin/sh # place-holder, diverted by perl-doc echo You need to install the perl-doc package to use this program. >&2 exit 1 debian/perl-doc.preinst0000644000000000000000000000044612265313056012310 0ustar #!/bin/sh -e if [ "$1" = install ] || [ "$1" = upgrade ] then dpkg-divert --add --package perl-doc --rename \ --divert /usr/bin/perldoc.stub /usr/bin/perldoc fi # this used to be a symlink, see #536384 if [ -h /usr/share/doc/perl-doc ]; then rm -f /usr/share/doc/perl-doc fi exit 0 debian/perl.docs0000644000000000000000000000003112265313056010777 0ustar Changes perl/changelog debian/patches/0000755000000000000000000000000013375014665010627 5ustar debian/patches/debian/0000755000000000000000000000000012265313056012042 5ustar debian/patches/debian/squelch-locale-warnings.diff0000644000000000000000000000370712265313056017432 0ustar From 2234e0acdc674695915bd2b0e771ec7c43f78955 Mon Sep 17 00:00:00 2001 From: Niko Tyni Date: Sun, 3 Oct 2010 21:36:17 +0300 Subject: Squelch locale warnings in Debian package maintainer scripts Bug-Debian: http://bugs.debian.org/508764 The system locales are rather frequently out of sync with the C library during package upgrades, causing a huge amount of useless Perl locale warnings. Squelch them when running package maintainer scripts, detected by the DPKG_RUNNING_VERSION environment variable. Any real locale problem will show up after the system upgrade too, and the warning will be triggered normally again at that point. Patch-Name: debian/squelch-locale-warnings.diff --- locale.c | 4 ++++ pod/perllocale.pod | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/locale.c b/locale.c index c10228d..5e171d0 100644 --- a/locale.c +++ b/locale.c @@ -356,6 +356,10 @@ Perl_init_i18nl10n(pTHX_ int printwarn) char *p; const bool locwarn = (printwarn > 1 || (printwarn && + + /* Debian specific change - see http://bugs.debian.org/508764 */ + (!PerlEnv_getenv("DPKG_RUNNING_VERSION")) && + (!(p = PerlEnv_getenv("PERL_BADLANG")) || atoi(p)))); if (locwarn) { diff --git a/pod/perllocale.pod b/pod/perllocale.pod index ad8e64b..f7a699f 100644 --- a/pod/perllocale.pod +++ b/pod/perllocale.pod @@ -965,6 +965,14 @@ B: PERL_BADLANG only gives you a way to hide the warning message. The message tells about some problem in your system's locale support, and you should investigate what the problem is. +=item DPKG_RUNNING_VERSION + +On Debian systems, if the DPKG_RUNNING_VERSION environment variable is +set (to any value), the locale failure warnings will be suppressed just +like with a zero PERL_BADLANG setting. This is done to avoid floods +of spurious warnings during system upgrades. +See L. + =back The following environment variables are not specific to Perl: They are debian/patches/debian/prefix_changes.diff0000644000000000000000000001067512265313056015672 0ustar From 61f6c2c320156fe91c507d0ad9f0c64de4b1edc6 Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Tue, 8 Mar 2005 19:30:38 +1100 Subject: Fiddle with *PREFIX and variables written to the makefile Fiddle with *PREFIX and variables written to the makefile so that install directories may be changed when make is run by passing PREFIX= to the "make install" command (used when packaging modules). Patch-Name: debian/prefix_changes.diff --- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm | 12 ++++++------ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 3 +-- cpan/ExtUtils-MakeMaker/t/INST.t | 4 +--- cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t | 10 +++++----- 4 files changed, 13 insertions(+), 16 deletions(-) diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm index b37ee43..1df9b87 100644 --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm @@ -758,8 +758,6 @@ all POD files in MAN1PODS and MAN3PODS. sub manifypods_target { my($self) = shift; - my $man1pods = ''; - my $man3pods = ''; my $dependencies = ''; # populate manXpods & dependencies: @@ -775,7 +773,7 @@ END foreach my $section (qw(1 3)) { my $pods = $self->{"MAN${section}PODS"}; push @man_cmds, $self->split_command(<{SITEPREFIX} ||= $sprefix; $self->{VENDORPREFIX} ||= $vprefix; - # Lots of MM extension authors like to use $(PREFIX) so we - # put something sensible in there no matter what. - $self->{PREFIX} = '$('.uc $self->{INSTALLDIRS}.'PREFIX)'; + my $p = $self->{PREFIX} = $self->{PERLPREFIX}; + for my $t (qw/PERL SITE VENDOR/) + { + $self->{"${t}PREFIX"} =~ s!^\Q$p\E(?=/|$)!\$(PREFIX)!; + } } my $arch = $Config{archname}; diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm index 5c592c3..02b1f97 100644 --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm @@ -2945,8 +2945,7 @@ sub prefixify { warn " prefixify $var => $path\n" if $Verbose >= 2; warn " from $sprefix to $rprefix\n" if $Verbose >= 2; - if( $self->{ARGS}{PREFIX} && - $path !~ s{^\Q$sprefix\E\b}{$rprefix}s ) + if( $path !~ s{^\Q$sprefix\E\b}{$rprefix}s && $self->{ARGS}{PREFIX} ) { warn " cannot prefix, using default.\n" if $Verbose >= 2; diff --git a/cpan/ExtUtils-MakeMaker/t/INST.t b/cpan/ExtUtils-MakeMaker/t/INST.t index b5ece3e..83fa699 100644 --- a/cpan/ExtUtils-MakeMaker/t/INST.t +++ b/cpan/ExtUtils-MakeMaker/t/INST.t @@ -61,9 +61,7 @@ isa_ok( $mm, 'ExtUtils::MakeMaker' ); is( $mm->{NAME}, 'Big::Dummy', 'NAME' ); is( $mm->{VERSION}, 0.01, 'VERSION' ); -my $config_prefix = $Config{installprefixexp} || $Config{installprefix} || - $Config{prefixexp} || $Config{prefix}; -is( $mm->{PERLPREFIX}, $config_prefix, 'PERLPREFIX' ); +is( $mm->{PERLPREFIX}, '$(PREFIX)', 'PERLPREFIX' ); is( !!$mm->{PERL_CORE}, !!$ENV{PERL_CORE}, 'PERL_CORE' ); diff --git a/cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t b/cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t index 5bd0a5d..3b4a1e3 100644 --- a/cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t +++ b/cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t @@ -10,7 +10,7 @@ BEGIN { } use strict; -use Test::More tests => 52; +use Test::More tests => 47; use MakeMaker::Test::Utils; use MakeMaker::Test::Setup::BFD; use ExtUtils::MakeMaker; @@ -58,16 +58,16 @@ like( $stdout->read, qr{ (?:Writing\ MYMETA.yml\ and\ MYMETA.json\n)? }x ); -is( $mm->{PREFIX}, '$(SITEPREFIX)', 'PREFIX set based on INSTALLDIRS' ); +#is( $mm->{PREFIX}, '$(SITEPREFIX)', 'PREFIX set based on INSTALLDIRS' ); isa_ok( $mm, 'ExtUtils::MakeMaker' ); is( $mm->{NAME}, 'Big::Dummy', 'NAME' ); is( $mm->{VERSION}, 0.01, 'VERSION' ); -foreach my $prefix (qw(PREFIX PERLPREFIX SITEPREFIX VENDORPREFIX)) { - unlike( $mm->{$prefix}, qr/\$\(PREFIX\)/ ); -} +#foreach my $prefix (qw(PREFIX PERLPREFIX SITEPREFIX VENDORPREFIX)) { +# unlike( $mm->{$prefix}, qr/\$\(PREFIX\)/ ); +#} my $PREFIX = File::Spec->catdir('foo', 'bar'); debian/patches/debian/prune_libs.diff0000644000000000000000000000304412265313056015037 0ustar From be0ae04d034e687abb10de0792594291bff2bb0f Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Fri, 18 Mar 2005 22:22:25 +1100 Subject: Prune the list of libraries wanted to what we actually need. Bug-Debian: http://bugs.debian.org/128355 We want to keep the dependencies on perl-base as small as possible, and some of the original list may be present on buildds (see Bug#128355). Patch-Name: debian/prune_libs.diff --- Configure | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Configure b/Configure index 30ab78a..0a1356e 100755 --- a/Configure +++ b/Configure @@ -1381,8 +1381,7 @@ libswanted_uselargefiles='' : set usesocks on the Configure command line to enable socks. : List of libraries we want. : If anyone needs extra -lxxx, put those in a hint file. -libswanted="sfio socket bind inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun" -libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD" +libswanted='gdbm gdbm_compat db dl m c crypt' : We probably want to search /usr/shlib before most other libraries. : This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist. glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'` @@ -22790,7 +22789,7 @@ sunos*X4*) ;; *) case "$usedl" in $define|true|[yY]*) - set X `echo " $libs " | sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -lgdbm_compat @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'` + set X `echo " $libs " | sed -e 's@ -lgdbm @ @' -e 's@ -lgdbm_compat @ @' -e 's@ -ldb @ @'` shift perllibs="$*" ;; debian/patches/debian/instmodsh_doc.diff0000644000000000000000000000176312265313056015540 0ustar From 0ea73fd2cfe96f7849b3126ac26c8210c6d901ca Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Tue, 8 Mar 2005 19:30:38 +1100 Subject: Debian policy doesn't install .packlist files for core or vendor. Patch-Name: debian/instmodsh_doc.diff --- cpan/ExtUtils-MakeMaker/bin/instmodsh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cpan/ExtUtils-MakeMaker/bin/instmodsh b/cpan/ExtUtils-MakeMaker/bin/instmodsh index 5874aa6..6a2f03e 100644 --- a/cpan/ExtUtils-MakeMaker/bin/instmodsh +++ b/cpan/ExtUtils-MakeMaker/bin/instmodsh @@ -18,9 +18,11 @@ instmodsh - A shell to examine installed modules =head1 DESCRIPTION -A little interface to ExtUtils::Installed to examine installed modules, +A little interface to ExtUtils::Installed to examine locally* installed modules, validate your packlists and even create a tarball from an installed module. +*On Debian system, B and B modules are managed by C. + =head1 SEE ALSO ExtUtils::Installed debian/patches/debian/mod_paths.diff0000644000000000000000000000540412265313056014655 0ustar From a7e1cd6c0a4aadef2f6d8cd54d2cb4c185b69983 Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Fri, 18 Mar 2005 22:22:25 +1100 Subject: Tweak @INC ordering for Debian Our order is: etc (for config files) site (5.8.1) vendor (all) core (5.8.1) site (version-indep) site (pre-5.8.1) The rationale being that an admin (via site), or module packager (vendor) can chose to shadow core modules when there is a newer version than is included in core. Patch-Name: debian/mod_paths.diff --- perl.c | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/perl.c b/perl.c index 0f8d4f7..736d21c 100644 --- a/perl.c +++ b/perl.c @@ -4362,6 +4362,11 @@ S_init_perllib(pTHX) INCPUSH_ADD_SUB_DIRS|INCPUSH_CAN_RELOCATE); #endif +#ifdef DEBIAN + /* for configuration where /usr is mounted ro (CPAN::Config, Net::Config) */ + S_incpush_use_sep(aTHX_ STR_WITH_LEN("/etc/perl"), 0x0); +#endif + #ifdef SITEARCH_EXP /* sitearch is always relative to sitelib on Windows for * DLL-based path intuition to work correctly */ @@ -4479,6 +4484,59 @@ S_init_perllib(pTHX) INCPUSH_ADD_OLD_VERS|INCPUSH_CAN_RELOCATE); #endif +#ifdef DEBIAN + /* Non-versioned site directory for local modules and for + compatability with the previous packages' site dirs */ + S_incpush_use_sep(aTHX_ STR_WITH_LEN("/usr/local/lib/site_perl"), + INCPUSH_ADD_SUB_DIRS); + +#ifdef PERL_INC_VERSION_LIST + { + struct stat s; + + /* add small buffer in case old versions are longer than the + current version */ + char sitearch[sizeof(SITEARCH_EXP)+16] = SITEARCH_EXP; + char sitelib[sizeof(SITELIB_EXP)+16] = SITELIB_EXP; + char const *vers[] = { PERL_INC_VERSION_LIST }; + char const **p; + + char *arch_vers = strrchr(sitearch, '/'); + char *lib_vers = strrchr(sitelib, '/'); + + if (arch_vers && isdigit(*++arch_vers)) + *arch_vers = 0; + else + arch_vers = 0; + + if (lib_vers && isdigit(*++lib_vers)) + *lib_vers = 0; + else + lib_vers = 0; + + /* there is some duplication here as incpush does something + similar internally, but required as sitearch is not a + subdirectory of sitelib */ + for (p = vers; *p; p++) + { + if (arch_vers) + { + strcpy(arch_vers, *p); + if (PerlLIO_stat(sitearch, &s) >= 0 && S_ISDIR(s.st_mode)) + S_incpush_use_sep(aTHX_ sitearch, strlen(sitearch), 0x0); + } + + if (lib_vers) + { + strcpy(lib_vers, *p); + if (PerlLIO_stat(sitelib, &s) >= 0 && S_ISDIR(s.st_mode)) + S_incpush_use_sep(aTHX_ sitelib, strlen(sitelib), 0x0); + } + } + } +#endif +#endif + #ifdef PERL_OTHERLIBDIRS S_incpush_use_sep(aTHX_ STR_WITH_LEN(PERL_OTHERLIBDIRS), INCPUSH_ADD_OLD_VERS|INCPUSH_ADD_ARCHONLY_SUB_DIRS debian/patches/debian/libperl_embed_doc.diff0000644000000000000000000000157112265313056016312 0ustar From 1f100c5f2a32c98fd2358c30c0c3b309f90b4512 Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Tue, 8 Mar 2005 19:30:38 +1100 Subject: Note that libperl-dev package is required for embedded linking Bug-Debian: http://bugs.debian.org/186778 Patch-Name: debian/libperl_embed_doc.diff --- lib/ExtUtils/Embed.pm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/ExtUtils/Embed.pm b/lib/ExtUtils/Embed.pm index 9710630..86f13b5 100644 --- a/lib/ExtUtils/Embed.pm +++ b/lib/ExtUtils/Embed.pm @@ -305,6 +305,9 @@ and extensions in your C/C++ applications. Typically, an application B will invoke ExtUtils::Embed functions while building your application. +Note that on Debian systems the B package is required for +compiling applications which embed an interpreter. + =head1 @EXPORT ExtUtils::Embed exports the following functions: debian/patches/debian/no_packlist_perllocal.diff0000644000000000000000000000676412265313056017254 0ustar From b9d03dd457e79762f6481a038bce7586b6b28e33 Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Tue, 8 Mar 2005 19:30:38 +1100 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 | 31 ++++--------------------- 1 file changed, 4 insertions(+), 27 deletions(-) diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm index 2efe20f..5c592c3 100644 --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm @@ -2053,8 +2053,6 @@ doc__install : doc_site_install pure_perl_install :: all $(NOECHO) umask 022; $(MOD_INSTALL) \ - read }.$self->catfile('$(PERL_ARCHLIB)','auto','$(FULLEXT)','.packlist').q{ \ - write }.$self->catfile('$(DESTINSTALLARCHLIB)','auto','$(FULLEXT)','.packlist').q{ \ $(INST_LIB) $(DESTINSTALLPRIVLIB) \ $(INST_ARCHLIB) $(DESTINSTALLARCHLIB) \ $(INST_BIN) $(DESTINSTALLBIN) \ @@ -2080,8 +2078,6 @@ pure_site_install :: all pure_vendor_install :: all $(NOECHO) umask 022; $(MOD_INSTALL) \ - read }.$self->catfile('$(VENDORARCHEXP)','auto','$(FULLEXT)','.packlist').q{ \ - write }.$self->catfile('$(DESTINSTALLVENDORARCH)','auto','$(FULLEXT)','.packlist').q{ \ $(INST_LIB) $(DESTINSTALLVENDORLIB) \ $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \ $(INST_BIN) $(DESTINSTALLVENDORBIN) \ @@ -2090,37 +2086,19 @@ pure_vendor_install :: all $(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR) doc_perl_install :: all - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) umask 022; $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) umask 022; $(DOC_INSTALL) \ - "Module" "$(NAME)" \ - "installed into" "$(INSTALLPRIVLIB)" \ - LINKTYPE "$(LINKTYPE)" \ - VERSION "$(VERSION)" \ - EXE_FILES "$(EXE_FILES)" \ - >> }.$self->catfile('$(DESTINSTALLARCHLIB)','perllocal.pod').q{ doc_site_install :: all - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) umask 02; $(MKPATH) $(DESTINSTALLARCHLIB) + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLSITEARCH)/perllocal.pod + -$(NOECHO) umask 02; $(MKPATH) $(DESTINSTALLSITEARCH) -$(NOECHO) umask 02; $(DOC_INSTALL) \ "Module" "$(NAME)" \ "installed into" "$(INSTALLSITELIB)" \ LINKTYPE "$(LINKTYPE)" \ VERSION "$(VERSION)" \ EXE_FILES "$(EXE_FILES)" \ - >> }.$self->catfile('$(DESTINSTALLARCHLIB)','perllocal.pod').q{ + >> }.$self->catfile('$(DESTINSTALLSITEARCH)','perllocal.pod').q{ doc_vendor_install :: all - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) umask 022; $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) umask 022; $(DOC_INSTALL) \ - "Module" "$(NAME)" \ - "installed into" "$(INSTALLVENDORLIB)" \ - LINKTYPE "$(LINKTYPE)" \ - VERSION "$(VERSION)" \ - EXE_FILES "$(EXE_FILES)" \ - >> }.$self->catfile('$(DESTINSTALLARCHLIB)','perllocal.pod').q{ }; @@ -2129,13 +2107,12 @@ uninstall :: uninstall_from_$(INSTALLDIRS)dirs $(NOECHO) $(NOOP) uninstall_from_perldirs :: - $(NOECHO) $(UNINSTALL) }.$self->catfile('$(PERL_ARCHLIB)','auto','$(FULLEXT)','.packlist').q{ uninstall_from_sitedirs :: $(NOECHO) $(UNINSTALL) }.$self->catfile('$(SITEARCHEXP)','auto','$(FULLEXT)','.packlist').q{ uninstall_from_vendordirs :: - $(NOECHO) $(UNINSTALL) }.$self->catfile('$(VENDORARCHEXP)','auto','$(FULLEXT)','.packlist').q{ + }; join("",@m); debian/patches/debian/patchlevel.diff0000644000000000000000000000146612265313056015032 0ustar From e5cb493fcbb96cdf0fc89c65ac4c90e6f45a5743 Mon Sep 17 00:00:00 2001 From: Niko Tyni Date: Sun, 15 May 2011 19:35:58 +0300 Subject: List packaged patches in patchlevel.h Origin: vendor Bug-Debian: http://bugs.debian.org/567489 The list of packaged patches is in patchlevel-debian.h, which is generated from the debian/patches/ directory when building the package. Patch-Name: debian/patchlevel.diff --- patchlevel.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/patchlevel.h b/patchlevel.h index 9f85e94..c0fb51f 100644 --- a/patchlevel.h +++ b/patchlevel.h @@ -137,6 +137,9 @@ static const char * const local_patches[] = { ,"uncommitted-changes" #endif PERL_GIT_UNPUSHED_COMMITS /* do not remove this line */ +#ifdef DEBIAN +#include "patchlevel-debian.h" +#endif ,NULL }; debian/patches/debian/writable_site_dirs.diff0000644000000000000000000000270112265313056016552 0ustar From 365afffe46e5409fbfad89a2f14b948f95dc1451 Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Tue, 8 Mar 2005 19:30:38 +1100 Subject: Set umask approproately for site install directories Policy requires group writable site directories Patch-Name: debian/writable_site_dirs.diff --- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 6 +++--- 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 a8e3096..58199d1 100644 --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm @@ -2066,7 +2066,7 @@ pure_perl_install :: all pure_site_install :: all - $(NOECHO) umask 022; $(MOD_INSTALL) \ + $(NOECHO) umask 02; $(MOD_INSTALL) \ read }.$self->catfile('$(SITEARCHEXP)','auto','$(FULLEXT)','.packlist').q{ \ write }.$self->catfile('$(DESTINSTALLSITEARCH)','auto','$(FULLEXT)','.packlist').q{ \ $(INST_LIB) $(DESTINSTALLSITELIB) \ @@ -2102,8 +2102,8 @@ doc_perl_install :: all doc_site_install :: all $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) umask 022; $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) umask 022; $(DOC_INSTALL) \ + -$(NOECHO) umask 02; $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) umask 02; $(DOC_INSTALL) \ "Module" "$(NAME)" \ "installed into" "$(INSTALLSITELIB)" \ LINKTYPE "$(LINKTYPE)" \ debian/patches/debian/perl5db-x-terminal-emulator.patch0000644000000000000000000000200012265313056020314 0ustar From 96594be6d3c07f02c3c70017cb3082efb2d685a0 Mon Sep 17 00:00:00 2001 From: Dominic Hargreaves Date: Sat, 14 Apr 2012 11:34:05 +0100 Subject: Invoke x-terminal-emulator rather than xterm in perl5db.pl In Debian systems, xterm might not exist or might not be the preferred terminal emulator. Use x-terminal-emulator instead Bug-Debian: http://bugs.debian.org/668490 Forwarded: not-needed Patch-Name: debian/perl5db-x-terminal-emulator.patch --- lib/perl5db.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/perl5db.pl b/lib/perl5db.pl index bcb4dd5..f387178 100644 --- a/lib/perl5db.pl +++ b/lib/perl5db.pl @@ -6941,7 +6941,7 @@ properly set up. sub xterm_get_fork_TTY { ( my $name = $0 ) =~ s,^.*[/\\],,s; open XT, -qq[3>&1 xterm -title "Daughter Perl debugger $pids $name" -e sh -c 'tty 1>&3;\ +qq[3>&1 x-terminal-emulator -T "Daughter Perl debugger $pids $name" -e sh -c 'tty 1>&3;\ sleep 10000000' |]; # Get the output from 'tty' and clean it up a little. debian/patches/debian/deprecate-with-apt.diff0000644000000000000000000001237512265313056016373 0ustar From bfb42eb4a2502373c9d8e338eb4485090261e92e Mon Sep 17 00:00:00 2001 From: Dominic Hargreaves Date: Mon, 17 May 2010 13:23:07 +0300 Subject: Point users to Debian packages of deprecated core modules Bug-Debian: http://bugs.debian.org/702096 Several modules are being deprecated with perl 5.18. To get a clean transition, perl/perl-modules is going to recommend the separate Debian packages of these for one release cycle so that they will be pulled in by default on upgrades. This is taking place for perl 5.18/jessie. However, on systems configured to ignore recommendations the deprecation warnings will still be useful, so modify them slightly to point to the separate packages instead. Patch-Name: debian/deprecate-with-apt.diff --- lib/deprecate.pm | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 71 insertions(+), 1 deletion(-) diff --git a/lib/deprecate.pm b/lib/deprecate.pm index 7562c69..f2ed24e 100644 --- a/lib/deprecate.pm +++ b/lib/deprecate.pm @@ -7,6 +7,70 @@ our $VERSION = 0.02; our %Config; unless (%Config) { require Config; *Config = \%Config::Config; } +# Debian-specific change: recommend the separate Debian packages of +# deprecated modules where available + +our %DEBIAN_PACKAGES = ( + 'Archive::Extract' => 'libarchive-extract-perl', + 'B::Lint' => 'libb-lint-perl', + 'B::Lint::Debug' => 'libb-lint-perl', + 'CPANPLUS::Dist::Build' => 'libcpanplus-dist-build-perl', + 'CPANPLUS::Dist::Build::Constants' => 'libcpanplus-dist-build-perl', + 'CPANPLUS' => 'libcpanplus-perl', + 'CPANPLUS::Backend' => 'libcpanplus-perl', + 'CPANPLUS::Backend::RV' => 'libcpanplus-perl', + 'CPANPLUS::Config' => 'libcpanplus-perl', + 'CPANPLUS::Config::HomeEnv' => 'libcpanplus-perl', + 'CPANPLUS::Configure' => 'libcpanplus-perl', + 'CPANPLUS::Configure::Setup' => 'libcpanplus-perl', + 'CPANPLUS::Dist' => 'libcpanplus-perl', + 'CPANPLUS::Dist::Autobundle' => 'libcpanplus-perl', + 'CPANPLUS::Dist::Base' => 'libcpanplus-perl', + 'CPANPLUS::Dist::MM' => 'libcpanplus-perl', + 'CPANPLUS::Dist::Sample' => 'libcpanplus-perl', + 'CPANPLUS::Error' => 'libcpanplus-perl', + 'CPANPLUS::Internals' => 'libcpanplus-perl', + 'CPANPLUS::Internals::Constants' => 'libcpanplus-perl', + 'CPANPLUS::Internals::Constants::Report' => 'libcpanplus-perl', + 'CPANPLUS::Internals::Extract' => 'libcpanplus-perl', + 'CPANPLUS::Internals::Fetch' => 'libcpanplus-perl', + 'CPANPLUS::Internals::Report' => 'libcpanplus-perl', + 'CPANPLUS::Internals::Search' => 'libcpanplus-perl', + 'CPANPLUS::Internals::Source' => 'libcpanplus-perl', + 'CPANPLUS::Internals::Source::Memory' => 'libcpanplus-perl', + 'CPANPLUS::Internals::Source::SQLite' => 'libcpanplus-perl', + 'CPANPLUS::Internals::Source::SQLite::Tie' => 'libcpanplus-perl', + 'CPANPLUS::Internals::Utils' => 'libcpanplus-perl', + 'CPANPLUS::Internals::Utils::Autoflush' => 'libcpanplus-perl', + 'CPANPLUS::Module' => 'libcpanplus-perl', + 'CPANPLUS::Module::Author' => 'libcpanplus-perl', + 'CPANPLUS::Module::Author::Fake' => 'libcpanplus-perl', + 'CPANPLUS::Module::Checksums' => 'libcpanplus-perl', + 'CPANPLUS::Module::Fake' => 'libcpanplus-perl', + 'CPANPLUS::Module::Signature' => 'libcpanplus-perl', + 'CPANPLUS::Selfupdate' => 'libcpanplus-perl', + 'CPANPLUS::Shell' => 'libcpanplus-perl', + 'CPANPLUS::Shell::Classic' => 'libcpanplus-perl', + 'CPANPLUS::Shell::Default' => 'libcpanplus-perl', + 'CPANPLUS::Shell::Default::Plugins::CustomSource' => 'libcpanplus-perl', + 'CPANPLUS::Shell::Default::Plugins::Remote' => 'libcpanplus-perl', + 'CPANPLUS::Shell::Default::Plugins::Source' => 'libcpanplus-perl', + 'File::CheckTree' => 'libfile-checktree-perl', + 'Log::Message::Simple' => 'liblog-message-simple-perl', + 'Log::Message' => 'liblog-message-perl', + 'Log::Message::Config' => 'liblog-message-perl', + 'Log::Message::Handlers' => 'liblog-message-perl', + 'Log::Message::Item' => 'liblog-message-perl', + 'Devel::InnerPackage' => 'libmodule-pluggable-perl', + 'Module::Pluggable' => 'libmodule-pluggable-perl', + 'Module::Pluggable::Object' => 'libmodule-pluggable-perl', + 'Object::Accessor' => 'libobject-accessor-perl', + 'Pod::LaTeX' => 'libpod-latex-perl', + 'Term::UI' => 'libterm-ui-perl', + 'Term::UI::History' => 'libterm-ui-perl', + 'Text::Soundex' => 'libtext-soundex-perl', +); + # This isn't a public API. It's internal to code maintained by the perl-porters # If you would like it to be a public API, please send a patch with # documentation and tests. Until then, it may change without warning. @@ -58,9 +122,15 @@ EOM if (defined $callers_bitmask && (vec($callers_bitmask, $warnings::Offsets{deprecated}, 1) || vec($callers_bitmask, $warnings::Offsets{all}, 1))) { - warn <<"EOM"; + if (my $deb = $DEBIAN_PACKAGES{$package}) { + warn <<"EOM"; +$package will be removed from the Perl core distribution in the next major release. Please install the separate $deb package. It is being used at $call_file, line $call_line. +EOM + } else { + warn <<"EOM"; $package will be removed from the Perl core distribution in the next major release. Please install it from CPAN. It is being used at $call_file, line $call_line. EOM + } } } } debian/patches/debian/hurd_test_skip_stack.diff0000644000000000000000000000167412265313056017120 0ustar From 7b145f2324f459ca307477724a2a3c5381364e40 Mon Sep 17 00:00:00 2001 From: Dominic Hargreaves Date: Sun, 27 Nov 2011 16:27:07 +0000 Subject: Disable failing GNU/Hurd tests dist/threads/t/stack.t These tests fail on GNU/Hurd owing to libpthread using fixed-size stacks. This is a known limitation that should get fixed in the future. For now, disable the tests. Bug-Debian: http://bugs.debian.org/650175 Patch-Name: debian/hurd_test_skip_stack.diff --- dist/threads/t/stack.t | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/dist/threads/t/stack.t b/dist/threads/t/stack.t index cfd6cf7..84cc527 100644 --- a/dist/threads/t/stack.t +++ b/dist/threads/t/stack.t @@ -7,6 +7,10 @@ BEGIN { print("1..0 # SKIP Perl not compiled with 'useithreads'\n"); exit(0); } + if ($^O eq 'gnu') { + print("1..0 # SKIP fails on GNU/Hurd (Debian #650175)\n"); + exit(0); + } } use ExtUtils::testlib; debian/patches/debian/errno_ver.diff0000644000000000000000000000212612265313056014676 0ustar From b4faf86d4d3fc230862d21051ccd7dbf346ed04e Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Fri, 16 Dec 2005 01:32:14 +1100 Subject: Remove Errno version check due to upgrade problems with long-running processes. Bug-Debian: http://bugs.debian.org/343351 Remove version check which can cause problems for long running processes embedding perl when upgrading to a newer version, compatible, but built on a different machine. Patch-Name: debian/errno_ver.diff --- ext/Errno/Errno_pm.PL | 5 ----- 1 file changed, 5 deletions(-) diff --git a/ext/Errno/Errno_pm.PL b/ext/Errno/Errno_pm.PL index b707911..d50e7a2 100644 --- a/ext/Errno/Errno_pm.PL +++ b/ext/Errno/Errno_pm.PL @@ -288,13 +288,8 @@ sub write_errno_pm { package Errno; require Exporter; -use Config; use strict; -"\$Config{'archname'}-\$Config{'osvers'}" eq -"$archname-$Config{'osvers'}" or - die "Errno architecture ($archname-$Config{'osvers'}) does not match executable architecture (\$Config{'archname'}-\$Config{'osvers'})"; - our \$VERSION = "$VERSION"; \$VERSION = eval \$VERSION; our \@ISA = 'Exporter'; debian/patches/debian/fakeroot.diff0000644000000000000000000000260312265313056014507 0ustar From 7991f89e7beeda1bc4be0b5146d19b558886699e Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Fri, 18 Mar 2005 22:22:25 +1100 Subject: Postpone LD_LIBRARY_PATH evaluation to the binary targets. Modify the setting of LD_LIBRARY_PATH to append pre-existing values at the time the rule is evaluated rather than when the Makefile is created. This is required when building packages with dpkg-buildpackage and fakeroot, since fakeroot (which now sets LD_LIBRARY_PATH) is not used for the "build" rule where the Makefile is created, but is for the clean/binary* targets. Patch-Name: debian/fakeroot.diff --- Makefile.SH | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/Makefile.SH b/Makefile.SH index dcad864..01b335a 100755 --- a/Makefile.SH +++ b/Makefile.SH @@ -48,10 +48,7 @@ case "$useshrplib" in true) # Prefix all runs of 'miniperl' and 'perl' with # $ldlibpth so that ./perl finds *this* shared libperl. - case "$LD_LIBRARY_PATH" in - '') ldlibpth="LD_LIBRARY_PATH=` quote "$pwd" `" ;; - *) ldlibpth="LD_LIBRARY_PATH=` quote "$pwd" `:` quote "$LD_LIBRARY_PATH" `" ;; - esac + ldlibpth="LD_LIBRARY_PATH=` quote "$pwd" `"'$${LD_LIBRARY_PATH:+:}$$LD_LIBRARY_PATH' pldlflags="$cccdlflags" static_ldflags='' @@ -122,7 +119,7 @@ true) ;; esac case "$ldlibpthname" in - '') ;; + ''|LD_LIBRARY_PATH) ;; *) case "$osname" in os2) debian/patches/debian/ld_run_path.diff0000644000000000000000000000166012265313056015176 0ustar From a7d086aefd40eb5ad06389f210911e235e689119 Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Fri, 18 Mar 2005 22:22:25 +1100 Subject: Remove standard libs from LD_RUN_PATH as per Debian policy. Patch-Name: debian/ld_run_path.diff --- cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm index f0a105c..063fc50 100644 --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm @@ -56,6 +56,9 @@ sub _unix_os2_ext { my ( $pwd ) = cwd(); # from Cwd.pm my ( $found ) = 0; + # Debian-specific: don't use LD_RUN_PATH for standard dirs + $ld_run_path_seen{$_}++ for @libpath; + foreach my $thislib ( split ' ', $potential_libs ) { # Handle possible linker path arguments. debian/patches/debian/skip-upstream-git-tests.diff0000644000000000000000000000377212265313056017432 0ustar From f958b670f88e266bf821dc4de0e833361ef98bb2 Mon Sep 17 00:00:00 2001 From: Niko Tyni Date: Fri, 22 Apr 2011 11:15:32 +0300 Subject: Skip tests specific to the upstream Git repository These tests fail if run from a different git repository than upstream. This complicates things needlessly for downstream packagers. Skip the tests altogether even if the .git directory exists. Patch-Name: debian/skip-upstream-git-tests.diff --- t/test.pl | 33 +-------------------------------- 1 file changed, 1 insertion(+), 32 deletions(-) diff --git a/t/test.pl b/t/test.pl index e141b91..0593443 100644 --- a/t/test.pl +++ b/t/test.pl @@ -158,38 +158,7 @@ sub skip_all_without_config { } sub find_git_or_skip { - my ($source_dir, $reason); - if (-d '.git') { - $source_dir = '.'; - } elsif (-l 'MANIFEST' && -l 'AUTHORS') { - my $where = readlink 'MANIFEST'; - die "Can't readling MANIFEST: $!" unless defined $where; - die "Confusing symlink target for MANIFEST, '$where'" - unless $where =~ s!/MANIFEST\z!!; - if (-d "$where/.git") { - # Looks like we are in a symlink tree - if (exists $ENV{GIT_DIR}) { - diag("Found source tree at $where, but \$ENV{GIT_DIR} is $ENV{GIT_DIR}. Not changing it"); - } else { - note("Found source tree at $where, setting \$ENV{GIT_DIR}"); - $ENV{GIT_DIR} = "$where/.git"; - } - $source_dir = $where; - } - } - if ($source_dir) { - my $version_string = `git --version`; - if (defined $version_string - && $version_string =~ /\Agit version (\d+\.\d+\.\d+)(.*)/) { - return $source_dir if eval "v$1 ge v1.5.0"; - # If you have earlier than 1.5.0 and it works, change this test - $reason = "in git checkout, but git version '$1$2' too old"; - } else { - $reason = "in git checkout, but cannot run git"; - } - } else { - $reason = 'not being run from a git checkout'; - } + my $reason = 'Debian: we are probably in a different git repository'; skip_all($reason) if $_[0] && $_[0] eq 'all'; skip($reason, @_); } debian/patches/debian/find_html2text.diff0000644000000000000000000000247312265313056015635 0ustar From 7b2c94fdbd0c9bb7b82f0111eb4f13d8c40de38f Mon Sep 17 00:00:00 2001 From: Andreas Marschke Date: Sat, 17 Sep 2011 11:38:42 +0100 Subject: Configure CPAN::Distribution with correct name of html2text Bug-Debian: http://bugs.debian.org/640479 Patch-Name: debian/find_html2text.diff If you use cpan from Debian you usually wind up trying to read online documentation through it. Unfortunately cpan can't find the html2text.pl script even though it is installed using the Debian package 'html2text'. Please see the attached patch for a quick fix of this issue. [Maintainer's note: html2text in Debian is not the same implementation as the html2text.pl which is expected, but should provide similar functionality]. --- cpan/CPAN/lib/CPAN/Distribution.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpan/CPAN/lib/CPAN/Distribution.pm b/cpan/CPAN/lib/CPAN/Distribution.pm index 690d6a0..5436216 100644 --- a/cpan/CPAN/lib/CPAN/Distribution.pm +++ b/cpan/CPAN/lib/CPAN/Distribution.pm @@ -3735,7 +3735,7 @@ sub _display_url { if $CPAN::DEBUG; # should we define it in the config instead? - my $html_converter = "html2text.pl"; + my $html_converter = "html2text"; my $web_browser = $CPAN::Config->{'lynx'} || undef; my $web_browser_out = $web_browser debian/patches/debian/extutils_set_libperl_path.diff0000644000000000000000000000202512265313056020154 0ustar From fd5d884748b663766f77f179ece8a4f1cc921d7b Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Tue, 8 Mar 2005 19:30:38 +1100 Subject: EU:MM: Set location of libperl.a to /usr/lib Patch-Name: debian/extutils_set_libperl_path.diff --- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 2 +- 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 58199d1..2efe20f 100644 --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm @@ -2408,7 +2408,7 @@ MAP_PRELIBS = $Config{perllibs} $Config{cryptlib} ($lperl = $libperl) =~ s/\$\(A\)/$self->{LIB_EXT}/; } unless ($libperl && -f $lperl) { # Ilya's code... - my $dir = $self->{PERL_SRC} || "$self->{PERL_ARCHLIB}/CORE"; + my $dir = $self->{PERL_SRC} || "/usr/lib"; $dir = "$self->{PERL_ARCHLIB}/.." if $self->{UNINSTALLED_PERL}; $libperl ||= "libperl$self->{LIB_EXT}"; $libperl = "$dir/$libperl"; debian/patches/debian/makemaker-pasthru.diff0000644000000000000000000000271112265313056016316 0ustar From 146be92c51771b84670911f5100936f1bdbcb8c6 Mon Sep 17 00:00:00 2001 From: Niko Tyni Date: Sat, 25 Feb 2012 19:41:27 +0200 Subject: Make EU::MM pass LD through to recursive Makefile.PL invocations In a directory hierarchy with Makefile.PL files in subdirectories, command line arguments like perl Makefile.PL LD="ld -Wl,-z relro" are not used when descending into the subdirectories. This seems to be by design: there's a short list of variables that are passed through when invoking 'make' in the subdirectories, but the rest just use their default values. Debian needs to pass LD through for sane handling of security related build flags, so add that to the whitelist. Bug: http://rt.cpan.org/Public/Bug/Display.html?id=28632 Bug-Debian: http://bugs.debian.org/660195 Patch-Name: debian/makemaker-pasthru.diff --- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 2 +- 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 02b1f97..c528d75 100644 --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm @@ -2673,7 +2673,7 @@ sub pasthru { my($sep) = $Is{VMS} ? ',' : ''; $sep .= "\\\n\t"; - foreach my $key (qw(LIB LIBPERL_A LINKTYPE OPTIMIZE + foreach my $key (qw(LIB LIBPERL_A LINKTYPE OPTIMIZE LD PREFIX INSTALL_BASE) ) { debian/patches/debian/libnet_config_path.diff0000644000000000000000000000267312265313056016522 0ustar From 958d6c1f75363cf3330f2e8601feecb593f99999 Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Tue, 8 Mar 2005 19:30:38 +1100 Subject: Set location of libnet.cfg to /etc/perl/Net as /usr may not be writable. Patch-Name: debian/libnet_config_path.diff --- cpan/libnet/Net/Config.pm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/cpan/libnet/Net/Config.pm b/cpan/libnet/Net/Config.pm index db51c1f..8404593 100644 --- a/cpan/libnet/Net/Config.pm +++ b/cpan/libnet/Net/Config.pm @@ -57,9 +57,8 @@ my %nc = ( } TRY_INTERNET_CONFIG -my $file = __FILE__; +my $file = '/etc/perl/Net/libnet.cfg'; my $ref; -$file =~ s/Config.pm/libnet.cfg/; if (-f $file) { $ref = eval { local $SIG{__DIE__}; do $file }; if (ref($ref) eq 'HASH') { @@ -132,8 +131,8 @@ Net::Config - Local configuration data for libnet C holds configuration data for the modules in the libnet distribution. During installation you will be asked for these values. -The configuration data is held globally in a file in the perl installation -tree, but a user may override any of these values by providing their own. This +The configuration data is held globally in C, +but a user may override any of these values by providing their own. This can be done by having a C<.libnetrc> file in their home directory. This file should return a reference to a HASH containing the keys described below. For example debian/patches/debian/doc_info.diff0000644000000000000000000000244712265313056014463 0ustar From 33df4cb4ca34cc5a57c4e23c41f60fd64523d382 Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Fri, 18 Mar 2005 22:22:25 +1100 Subject: Replace generic man(1) instructions with Debian-specific information. Indicate that the user needs to install the perl-doc package. Patch-Name: debian/doc_info.diff --- pod/perl.pod | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/pod/perl.pod b/pod/perl.pod index 08114be..0cd2a5b 100644 --- a/pod/perl.pod +++ b/pod/perl.pod @@ -272,8 +272,16 @@ aux a2p c2ph h2ph h2xs perlbug pl2pm pod2html pod2man s2p splain xsubpp =for buildtoc __END__ -On a Unix-like system, these documentation files will usually also be -available as manpages for use with the F program. +On Debian systems, you need to install the B package which +contains the majority of the standard Perl documentation and the +F program. + +Extensive additional documentation for Perl modules is available, both +those distributed with Perl and third-party modules which are packaged +or locally installed. + +You should be able to view Perl's documentation with your man(1) +program or perldoc(1). Some documentation is not available as man pages, so if a cross-reference is not found by man, try it with L. Perldoc can debian/patches/debian/skip-kfreebsd-crash.diff0000644000000000000000000000213312265313056016522 0ustar From b2ba2d8e5a54419d36d33659be69227ec3a3b166 Mon Sep 17 00:00:00 2001 From: Niko Tyni Date: Fri, 5 Aug 2011 10:50:18 +0300 Subject: Skip a crashing test case in t/op/threads.t on GNU/kFreeBSD Bug: http://rt.perl.org/rt3/Ticket/Display.html?id=96272 Bug-Debian: http://bugs.debian.org/628493 The crash is not a regression in 5.14, it just gets triggered there by a new unrelated test case. Skip the test until the culprit is found. Patch-Name: debian/skip-kfreebsd-crash.diff --- t/op/threads.t | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/t/op/threads.t b/t/op/threads.t index 2a52efc..9e33b31 100644 --- a/t/op/threads.t +++ b/t/op/threads.t @@ -376,6 +376,9 @@ EOF } +SKIP: { + skip "[perl #96272] avoid crash on GNU/kFreeBSD", 1 + if $^O eq 'gnukfreebsd'; # [perl #78494] Pipes shared between threads block when closed { my $perl = which_perl; @@ -384,6 +387,7 @@ EOF threads->create(sub { })->join; ok(1, "Pipes shared between threads do not block when closed"); } +} # [perl #105208] Typeglob clones should not be cloned again during a join { debian/patches/debian/enc2xs_inc.diff0000644000000000000000000000344012265313056014730 0ustar From 214d8f84bf4c08bcb78cd4333d7694a1278d203a Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Tue, 8 Mar 2005 19:30:38 +1100 Subject: Tweak enc2xs to follow symlinks and ignore missing @INC directories. Bug-Debian: http://bugs.debian.org/290336 - ignore missing directories, - follow symlinks (/usr/share/perl/5.8 -> 5.8.4). - filter "." out when running "enc2xs -C", it's unnecessary and causes issues with follow => 1 (see #603686 and [rt.cpan.org #64585]) Patch-Name: debian/enc2xs_inc.diff --- cpan/Encode/bin/enc2xs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cpan/Encode/bin/enc2xs b/cpan/Encode/bin/enc2xs index 773c0a0..bc1ae1b 100644 --- a/cpan/Encode/bin/enc2xs +++ b/cpan/Encode/bin/enc2xs @@ -924,11 +924,11 @@ use vars qw( sub find_e2x{ eval { require File::Find; }; my (@inc, %e2x_dir); - for my $inc (@INC){ + for my $inc (grep -d, @INC){ push @inc, $inc unless $inc eq '.'; #skip current dir } File::Find::find( - sub { + { wanted => sub { my ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size, $atime,$mtime,$ctime,$blksize,$blocks) = lstat($_) or return; @@ -938,7 +938,7 @@ sub find_e2x{ $e2x_dir{$File::Find::dir} ||= $mtime; } return; - }, @inc); + }, follow => 1}, @inc); warn join("\n", keys %e2x_dir), "\n"; for my $d (sort {$e2x_dir{$a} <=> $e2x_dir{$b}} keys %e2x_dir){ $_E2X = $d; @@ -1005,7 +1005,7 @@ sub make_configlocal_pm { $LocalMod{$enc} ||= $mod; } }; - File::Find::find({wanted => $wanted}, @INC); + File::Find::find({wanted => $wanted, follow => 1}, grep -d && !/^\./, @INC); $_ModLines = ""; for my $enc ( sort keys %LocalMod ) { $_ModLines .= debian/patches/debian/cpan_definstalldirs.diff0000644000000000000000000000300712265313056016704 0ustar From 498784f9833f23b5a577aeb06f67437a6bc1d51c Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Tue, 8 Mar 2005 19:30:38 +1100 Subject: Provide a sensible INSTALLDIRS default for modules installed from CPAN. Some modules which are included in core set INSTALLDIRS => 'perl' explicitly in Makefile.PL or Build.PL. This makes sense for the normal @INC ordering, but not ours. Patch-Name: debian/cpan_definstalldirs.diff --- cpan/CPAN/lib/CPAN/FirstTime.pm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cpan/CPAN/lib/CPAN/FirstTime.pm b/cpan/CPAN/lib/CPAN/FirstTime.pm index b099b04..1c49ca3 100644 --- a/cpan/CPAN/lib/CPAN/FirstTime.pm +++ b/cpan/CPAN/lib/CPAN/FirstTime.pm @@ -990,7 +990,7 @@ sub init { my_prompt_loop(prefer_installer => 'MB', $matcher, 'MB|EUMM|RAND'); if (!$matcher or 'makepl_arg make_arg' =~ /$matcher/) { - my_dflt_prompt(makepl_arg => "", $matcher); + my_dflt_prompt(makepl_arg => "INSTALLDIRS=site", $matcher); my_dflt_prompt(make_arg => "", $matcher); if ( $CPAN::Config->{makepl_arg} =~ /LIBS=|INC=/ ) { $CPAN::Frontend->mywarn( @@ -1022,7 +1022,7 @@ sub init { my_dflt_prompt(make_install_arg => $CPAN::Config->{make_arg} || "", $matcher); - my_dflt_prompt(mbuildpl_arg => "", $matcher); + my_dflt_prompt(mbuildpl_arg => "--installdirs site", $matcher); my_dflt_prompt(mbuild_arg => "", $matcher); if (exists $CPAN::HandleConfig::keys{mbuild_install_build_command} debian/patches/debian/perlivp.diff0000644000000000000000000000256412265313056014364 0ustar From 78c8f9311d6eb85f79b6f103ee9a105cbf06898f Mon Sep 17 00:00:00 2001 From: Niko Tyni Date: Fri, 9 Jan 2009 18:54:47 +0200 Subject: Make perlivp skip include directories in /usr/local Bug-Debian: http://bugs.debian.org/510895 On Sat, Jan 10, 2009 at 12:37:18AM +1100, Brendan O'Dea wrote: > On Wed, Jan 7, 2009 at 12:21 AM, Niko Tyni wrote: > > We could create the directories in a postinst script, but I'm not sure > > I see the point. They will be created automatically when installing > > CPAN modules. > > The directories are intentionally not created, as this way they are > excluded from the search path at start-up, saving a bunch of wasted > stats at use/require time in the common case that the user has not > installed any local packages. As Niko points out, they will be > created as required. Signed-off-by: Niko Tyni Patch-Name: debian/perlivp.diff --- utils/perlivp.PL | 1 + 1 file changed, 1 insertion(+) diff --git a/utils/perlivp.PL b/utils/perlivp.PL index c2f0a11..cc49f96 100644 --- a/utils/perlivp.PL +++ b/utils/perlivp.PL @@ -153,6 +153,7 @@ my $INC_total = 0; my $INC_there = 0; foreach (@INC) { next if $_ eq '.'; # skip -d test here + next if m|/usr/local|; # not shipped on Debian if (-d $_) { print "## Perl \@INC directory '$_' exists.\n" if $opt{'v'}; $INC_there++; debian/patches/debian/cpanplus_definstalldirs.diff0000644000000000000000000000325012265313056017610 0ustar From 37ee68fa181b003fb960dc69e7e9bc94b474851e Mon Sep 17 00:00:00 2001 From: Niko Tyni Date: Mon, 6 Jul 2009 21:58:41 +0300 Subject: Configure CPANPLUS to use the site directories by default. Bug-Debian: http://bugs.debian.org/533707 The core modules usually default to INSTALLDIRS=perl (ExtUtils::MakeMaker) or installdirs=core (Module::Build), so we need to explicitly ask for the site destination to get upgraded versions into /usr/local. See also the sister patch, debian/cpan_definstalldirs . Patch-Name: debian/cpanplus_definstalldirs.diff --- cpan/CPANPLUS/lib/CPANPLUS/Config/System.pm | 30 +++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 cpan/CPANPLUS/lib/CPANPLUS/Config/System.pm diff --git a/cpan/CPANPLUS/lib/CPANPLUS/Config/System.pm b/cpan/CPANPLUS/lib/CPANPLUS/Config/System.pm new file mode 100644 index 0000000..4e9d8f3 --- /dev/null +++ b/cpan/CPANPLUS/lib/CPANPLUS/Config/System.pm @@ -0,0 +1,30 @@ +### minimal pod, so you can find it with perldoc -l, etc +=pod + +=head1 NAME + +CPANPLUS::Config::System - system configuration for CPANPLUS + +=head1 DESCRIPTION + +This is a CPANPLUS configuration file that sets appropriate default +settings on Debian systems. + +The only preconfigured settings are C (set to +C) and C (set to C<--installdirs site>). + +These settings will not have any effect if +C is present. + +=cut + + +package CPANPLUS::Config::System; + +sub setup { + my $conf = shift; + $conf->set_conf( makemakerflags => 'INSTALLDIRS=site' ); + $conf->set_conf( buildflags => '--installdirs site' ); +} + +1; debian/patches/debian/cpan-missing-site-dirs.diff0000644000000000000000000000434612265313056017174 0ustar From 186ed2c751ea9116ef36fe8257b6606f68bd6c38 Mon Sep 17 00:00:00 2001 From: Niko Tyni Date: Tue, 16 Oct 2012 23:07:56 +0300 Subject: Fix CPAN::FirstTime defaults with nonexisting site dirs if a parent is writable The site directories do not exist on a typical Debian system. The build systems will create them when necessary, so there's no need for a prompt suggesting local::lib if the first existing parent directory is writable. Also, writability of the core directories is not interesting as we explicitly tell CPAN not to touch those with INSTALLDIRS=site. Bug-Debian: http://bugs.debian.org/688842 Patch-Name: debian/cpan-missing-site-dirs.diff --- cpan/CPAN/lib/CPAN/FirstTime.pm | 31 +++++++++++++++++++++++++++---- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/cpan/CPAN/lib/CPAN/FirstTime.pm b/cpan/CPAN/lib/CPAN/FirstTime.pm index 1c49ca3..e729669 100644 --- a/cpan/CPAN/lib/CPAN/FirstTime.pm +++ b/cpan/CPAN/lib/CPAN/FirstTime.pm @@ -2009,11 +2009,34 @@ sub _print_urllist { }; } +# Debian modification: return true if this directory +# or the first existing one upwards is writable +sub _can_write_to_this_or_parent { + my ($dir) = @_; + my @parts = File::Spec->splitdir($dir); + while (@parts) { + my $cur = File::Spec->catdir(@parts); + return 1 if -w $cur; + return 0 if -e _; + pop @parts; + } + return 0; +} + +# Debian specific modification: the site directories don't necessarily +# exist on the system, but the build systems create them when necessary, +# so return true if the first existing directory upwards is writable +# +# Furthermore, on Debian, only test the site directories +# (installsite*, expanded to /usr/local/{share,lib}/perl), +# not the core ones +# (install*lib, expanded to /usr/{share,lib}/perl). +# We pass INSTALLDIRS=site by default to keep CPAN from touching +# the core directories. + sub _can_write_to_libdirs { - return -w $Config{installprivlib} - && -w $Config{installarchlib} - && -w $Config{installsitelib} - && -w $Config{installsitearch} + return _can_write_to_this_or_parent($Config{installsitelib}) + && _can_write_to_this_or_parent($Config{installsitearch}) } sub _using_installbase { debian/patches/debian/db_file_ver.diff0000644000000000000000000000236612265313056015143 0ustar From 3551042c852b603f9884bf6d9b7dbab8b13d0009 Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Fri, 16 Dec 2005 01:32:14 +1100 Subject: Remove overly restrictive DB_File version check. Bug-Debian: http://bugs.debian.org/340047 Package dependencies ensure the correct library is linked at run-time. Patch-Name: debian/db_file_ver.diff --- cpan/DB_File/version.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cpan/DB_File/version.c b/cpan/DB_File/version.c index e01f6f6..544e6ee 100644 --- a/cpan/DB_File/version.c +++ b/cpan/DB_File/version.c @@ -48,6 +48,7 @@ __getBerkeleyDBInfo() (void)db_version(&Major, &Minor, &Patch) ; +#ifndef DEBIAN /* Check that the versions of db.h and libdb.a are the same */ if (Major != DB_VERSION_MAJOR || Minor != DB_VERSION_MINOR ) /* || Patch != DB_VERSION_PATCH) */ @@ -55,6 +56,7 @@ __getBerkeleyDBInfo() croak("\nDB_File was build with libdb version %d.%d.%d,\nbut you are attempting to run it with libdb version %d.%d.%d\n", DB_VERSION_MAJOR, DB_VERSION_MINOR, DB_VERSION_PATCH, Major, Minor, Patch) ; +#endif /* DEBIAN */ /* check that libdb is recent enough -- we need 2.3.4 or greater */ if (Major == 2 && (Minor < 3 || (Minor == 3 && Patch < 4))) debian/patches/debian/module_build_man_extensions.diff0000644000000000000000000000336212265313056020456 0ustar From 3237eff008d879bcaeeab7f3da55928d8c1b63ea Mon Sep 17 00:00:00 2001 From: Niko Tyni Date: Thu, 8 May 2008 14:32:33 +0300 Subject: Adjust Module::Build manual page extensions for the Debian Perl policy Bug-Debian: http://bugs.debian.org/479460 Patch-Name: debian/module_build_man_extensions.diff --- cpan/Module-Build/lib/Module/Build/Base.pm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cpan/Module-Build/lib/Module/Build/Base.pm b/cpan/Module-Build/lib/Module/Build/Base.pm index cf42cc0..854e4c9 100644 --- a/cpan/Module-Build/lib/Module/Build/Base.pm +++ b/cpan/Module-Build/lib/Module/Build/Base.pm @@ -3253,7 +3253,7 @@ sub manify_bin_pods { foreach my $file (keys %$files) { # Pod::Simple based parsers only support one document per instance. # This is expected to change in a future version (Pod::Simple > 3.03). - my $parser = Pod::Man->new( section => 1 ); # binaries go in section 1 + my $parser = Pod::Man->new( section => '1p' ); # binaries go in section 1p my $manpage = $self->man1page_name( $file ) . '.' . $self->config( 'man1ext' ); my $outfile = File::Spec->catfile($mandir, $manpage); @@ -3278,7 +3278,7 @@ sub manify_lib_pods { while (my ($file, $relfile) = each %$files) { # Pod::Simple based parsers only support one document per instance. # This is expected to change in a future version (Pod::Simple > 3.03). - my $parser = Pod::Man->new( section => 3 ); # libraries go in section 3 + my $parser = Pod::Man->new( section => '3pm' ); # libraries go in section 3pm my $manpage = $self->man3page_name( $relfile ) . '.' . $self->config( 'man3ext' ); my $outfile = File::Spec->catfile( $mandir, $manpage); debian/patches/debian/cpanplus_config_path.diff0000644000000000000000000000377412265313056017075 0ustar From 93afb13642aafb58969ca1de3fff9a48a6a1553f Mon Sep 17 00:00:00 2001 From: Niko Tyni Date: Mon, 6 Jul 2009 22:17:53 +0300 Subject: Save local versions of CPANPLUS::Config::System into /etc/perl. This is a configuration file and needs to go in /etc by policy. Besides, /usr may not even be writable. This mirrors the Debian setup of CPAN.pm in debian/cpan_config_path. See #533707. Patch-Name: debian/cpanplus_config_path.diff --- cpan/CPANPLUS/lib/CPANPLUS/Configure.pm | 1 + cpan/CPANPLUS/lib/CPANPLUS/Internals/Constants.pm | 3 +++ 2 files changed, 4 insertions(+) diff --git a/cpan/CPANPLUS/lib/CPANPLUS/Configure.pm b/cpan/CPANPLUS/lib/CPANPLUS/Configure.pm index 1abf759..8247ee7 100644 --- a/cpan/CPANPLUS/lib/CPANPLUS/Configure.pm +++ b/cpan/CPANPLUS/lib/CPANPLUS/Configure.pm @@ -281,6 +281,7 @@ Saves the configuration to the package name you provided. If this package is not C, it will be saved in your C<.cpanplus> directory, otherwise it will be attempted to be saved in the system wide directory. +(On Debian systems, this system wide directory is /etc/perl.) If no argument is provided, it will default to your personal config. diff --git a/cpan/CPANPLUS/lib/CPANPLUS/Internals/Constants.pm b/cpan/CPANPLUS/lib/CPANPLUS/Internals/Constants.pm index 09501c7..948bce0 100644 --- a/cpan/CPANPLUS/lib/CPANPLUS/Internals/Constants.pm +++ b/cpan/CPANPLUS/lib/CPANPLUS/Internals/Constants.pm @@ -214,6 +214,9 @@ use constant CONFIG_USER_FILE => sub { ) . '.pm'; }; use constant CONFIG_SYSTEM_FILE => sub { + # Debian-specific shortcut + return '/etc/perl/CPANPLUS/Config/System.pm'; + require CPANPLUS::Internals; require File::Basename; my $dir = File::Basename::dirname( debian/patches/series0000644000000000000000000000312013375014665012040 0ustar debian/cpan_definstalldirs.diff debian/db_file_ver.diff debian/doc_info.diff debian/enc2xs_inc.diff debian/errno_ver.diff debian/libperl_embed_doc.diff fixes/respect_umask.diff debian/writable_site_dirs.diff debian/extutils_set_libperl_path.diff debian/no_packlist_perllocal.diff debian/prefix_changes.diff debian/fakeroot.diff debian/instmodsh_doc.diff debian/ld_run_path.diff debian/libnet_config_path.diff debian/mod_paths.diff debian/module_build_man_extensions.diff debian/prune_libs.diff fixes/net_smtp_docs.diff debian/perlivp.diff debian/cpanplus_definstalldirs.diff debian/cpanplus_config_path.diff debian/deprecate-with-apt.diff debian/squelch-locale-warnings.diff debian/skip-upstream-git-tests.diff debian/patchlevel.diff debian/skip-kfreebsd-crash.diff fixes/document_makemaker_ccflags.diff debian/find_html2text.diff debian/hurd_test_skip_stack.diff fixes/manpage_name_Test-Harness.diff debian/makemaker-pasthru.diff debian/perl5db-x-terminal-emulator.patch debian/cpan-missing-site-dirs.diff fixes/memoize_storable_nstore.diff fixes/net_ftp_failed_command.diff fixes/perlbug-patchlist.diff fixes/module_metadata_security_doc.diff fixes/module_metadata_taint_fix.diff fixes/IPC-SysV-spelling.diff fixes/fix-undef-source.diff fixes/CVE-2013-7422.patch fixes/CVE-2014-4330.patch fixes/CVE-2016-2381.patch fixes/CVE-2017-12837.patch fixes/CVE-2017-12883.patch fixes/CVE-2015-8853-1.patch fixes/CVE-2015-8853-2.patch fixes/CVE-2016-6185.patch fixes/CVE-2017-6512-pre.patch fixes/CVE-2017-6512.patch fixes/CVE-2018-6913.patch fixes/CVE-2018-12015.patch fixes/CVE-2018-18311.patch fixes/CVE-2018-18313.patch debian/patches/fixes/0000755000000000000000000000000013375016545011744 5ustar debian/patches/fixes/memoize_storable_nstore.diff0000644000000000000000000000656612265313056017537 0ustar From df02b8fff4eec715908ceb4b5739afd2cb8d933c Mon Sep 17 00:00:00 2001 From: Jonathan Nieder Date: Fri, 27 Jul 2012 10:35:07 -0500 Subject: Memoize::Storable: respect 'nstore' option not respected MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Memoize(3perl) says: tie my %cache => 'Memoize::Storable', $filename, 'nstore'; memoize 'function', SCALAR_CACHE => [HASH => \%cache]; Include the ‘nstore’ option to have the "Storable" database written in ‘network order’. (See Storable for more details about this.) In fact the "nstore" option does no such thing. Option parsing looks like this: @options{@_} = (); $self->{OPTIONS}{'nstore'} is accordingly set to undef. Later Memoize::Storable checks if the option is true, and since undef is not true, the "else" branch is always taken. if ($self->{OPTIONS}{'nstore'}) { Storable::nstore($self->{H}, $self->{FILENAME}); } else { Storable::store($self->{H}, $self->{FILENAME}); } Correcting the condition to (exists $self->{OPTIONS}{'nstore'}) fixes it. Noticed because git-svn, which uses the 'nstore' option for its on-disk caches, was producing Byte order is not compatible at ../../lib/Storable.pm when run using a perl with a different integer size (and hence byteorder). Reported by Tim Retout (RT#77790) Bug-Debian: http://bugs.debian.org/587650 Bug: https://rt.cpan.org/Public/Bug/Display.html?id=77790 Forwarded: https://rt.cpan.org/Public/Bug/Display.html?id=77790 Patch-Name: fixes/memoize_storable_nstore.diff --- cpan/Memoize/Memoize/Storable.pm | 2 +- cpan/Memoize/t/tie_storable.t | 24 ++++++++++++++++++++---- 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/cpan/Memoize/Memoize/Storable.pm b/cpan/Memoize/Memoize/Storable.pm index 1314797..87876f2 100644 --- a/cpan/Memoize/Memoize/Storable.pm +++ b/cpan/Memoize/Memoize/Storable.pm @@ -55,7 +55,7 @@ sub DESTROY { require Carp if $Verbose; my $self= shift; print STDERR "Memoize::Storable::DESTROY(@_)\n" if $Verbose; - if ($self->{OPTIONS}{'nstore'}) { + if (exists $self->{OPTIONS}{'nstore'}) { Storable::nstore($self->{H}, $self->{FILENAME}); } else { Storable::store($self->{H}, $self->{FILENAME}); diff --git a/cpan/Memoize/t/tie_storable.t b/cpan/Memoize/t/tie_storable.t index de3b8dc..a624238 100644 --- a/cpan/Memoize/t/tie_storable.t +++ b/cpan/Memoize/t/tie_storable.t @@ -31,18 +31,34 @@ if ($@) { exit 0; } -print "1..4\n"; +print "1..9\n"; $file = "storable$$"; 1 while unlink $file; tryout('Memoize::Storable', $file, 1); # Test 1..4 1 while unlink $file; +tryout('Memoize::Storable', $file, 5, 'nstore'); # Test 5..8 +assert_netorder($file, 9); # Test 9 +1 while unlink $file; + + +sub assert_netorder { + my ($file, $testno) = @_; + + my $netorder = Storable::file_magic($file)->{'netorder'}; + print ($netorder ? "ok $testno\n" : "not ok $testno\n"); +} sub tryout { - my ($tiepack, $file, $testno) = @_; + my ($tiepack, $file, $testno, $option) = @_; - tie my %cache => $tiepack, $file - or die $!; + if (defined $option) { + tie my %cache => $tiepack, $file, $option + or die $!; + } else { + tie my %cache => $tiepack, $file + or die $!; + } memoize 'c5', SCALAR_CACHE => [HASH => \%cache], debian/patches/fixes/manpage_name_Test-Harness.diff0000644000000000000000000000165312265313056017605 0ustar From 0be8ba183e96165e639e0a1bfb968c5ea6e39cd9 Mon Sep 17 00:00:00 2001 From: Dominic Hargreaves Date: Tue, 20 Dec 2011 23:28:18 +0000 Subject: cpan/Test-Harness: add NAME headings in modules with POD This fixes the Debian Lintian warning about missing NAME sections in manpages. Bug: https://rt.cpan.org/Ticket/Display.html?id=73399 Bug-Debian: http://bugs.debian.org/650451 Patch-Name: fixes/manpage_name_Test-Harness.diff --- cpan/Test-Harness/lib/TAP/Harness/Beyond.pod | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cpan/Test-Harness/lib/TAP/Harness/Beyond.pod b/cpan/Test-Harness/lib/TAP/Harness/Beyond.pod index ed77e13..3b7ec89 100644 --- a/cpan/Test-Harness/lib/TAP/Harness/Beyond.pod +++ b/cpan/Test-Harness/lib/TAP/Harness/Beyond.pod @@ -1,3 +1,7 @@ +=head1 NAME + +TAP::Harness::Beyond - Beyond make test + =head1 Beyond make test Test::Harness is responsible for running test scripts, analysing debian/patches/fixes/CVE-2017-6512.patch0000644000000000000000000000775413261443034014370 0ustar From 2f154f3e5dd7fda13f2d920993cdeb70c1da4443 Mon Sep 17 00:00:00 2001 From: John Lightsey Date: Tue, 2 May 2017 12:03:52 -0500 Subject: Prevent directory chmod race attack. CVE-2017-6512 is a race condition attack where the chmod() of directories that cannot be entered is misused to change the permissions on other files or directories on the system. This has been corrected by limiting the directory-permission loosening logic to systems where fchmod() is supported. [Backported to File-Path 2.09 / perl 5.20 by Dominic Hargreaves for Debian.] Bug: https://rt.cpan.org/Public/Bug/Display.html?id=121951 Bug-Debian: https://bugs.debian.org/863870 Patch-Name: fixes/file_path_chmod_race.diff --- cpan/File-Path/lib/File/Path.pm | 20 ++++++++++++++------ cpan/File-Path/t/Path.t | 24 +++++++++++++++++------- 2 files changed, 31 insertions(+), 13 deletions(-) diff --git a/cpan/File-Path/lib/File/Path.pm b/cpan/File-Path/lib/File/Path.pm index 23751d5fa..0ea6671c7 100644 --- a/cpan/File-Path/lib/File/Path.pm +++ b/cpan/File-Path/lib/File/Path.pm @@ -284,13 +284,21 @@ sub _rmtree { if (!chdir($root)) { # see if we can escalate privileges to get in # (e.g. funny protection mask such as -w- instead of rwx) - $perm &= 07777; - my $nperm = $perm | 0700; - if (!($arg->{safe} or $nperm == $perm or chmod($nperm, $root))) { - _error($arg, "cannot make child directory read-write-exec", $canon); - next ROOT_DIR; + # This uses fchmod to avoid traversing outside of the proper + # location (CVE-2017-6512) + my $root_fh; + if (open($root_fh, '<', $root)) { + my ($fh_dev, $fh_inode) = (stat $root_fh )[0,1]; + $perm &= 07777; + my $nperm = $perm | 0700; + local $@; + if (!($arg->{safe} or $nperm == $perm or !-d _ or $fh_dev ne $ldev or $fh_inode ne $lino or eval { chmod( $nperm, $root_fh ) } )) { + _error($arg, "cannot make child directory read-write-exec", $canon); + next ROOT_DIR; + } + close $root_fh; } - elsif (!chdir($root)) { + if (!chdir($root)) { _error($arg, "cannot chdir to child", $canon); next ROOT_DIR; } diff --git a/cpan/File-Path/t/Path.t b/cpan/File-Path/t/Path.t index a33c15a23..b6df00a9a 100644 --- a/cpan/File-Path/t/Path.t +++ b/cpan/File-Path/t/Path.t @@ -16,6 +16,13 @@ my $has_Test_Output = $@ ? 0 : 1; my $Is_VMS = $^O eq 'VMS'; +my $fchmod_supported = 0; +if (open my $fh, curdir()) { + my ($perm) = (stat($fh))[2]; + $perm &= 07777; + eval { $fchmod_supported = chmod( $perm, $fh); }; +} + # first check for stupid permissions second for full, so we clean up # behind ourselves for my $perm (0111,0777) { @@ -258,13 +265,16 @@ is(scalar(@created), 1, "created directory (old style 3 mode undef)"); is($created[0], $dir, "created directory (old style 3 mode undef) cross-check"); is(rmtree($dir, 0, undef), 1, "removed directory 3 verbose undef"); -$dir = catdir($tmp_base,'G'); -$dir = VMS::Filespec::unixify($dir) if $Is_VMS; - -@created = mkpath($dir, undef, 0200); -is(scalar(@created), 1, "created write-only dir"); -is($created[0], $dir, "created write-only directory cross-check"); -is(rmtree($dir), 1, "removed write-only dir"); +SKIP: { + skip "fchmod of directories not supported on this platform", 3 unless $fchmod_supported; + $dir = catdir($tmp_base,'G'); + $dir = VMS::Filespec::unixify($dir) if $Is_VMS; + + @created = mkpath($dir, undef, 0400); + is(scalar(@created), 1, "created read-only dir"); + is($created[0], $dir, "created read-only directory cross-check"); + is(rmtree($dir), 1, "removed read-only dir"); +} # borderline new-style heuristics if (chdir $tmp_base) { debian/patches/fixes/CVE-2015-8853-1.patch0000644000000000000000000000660413261442115014526 0ustar Backport of: From 22b433eff9a1ffa2454e18405a56650f07b385b5 Mon Sep 17 00:00:00 2001 From: Karl Williamson Date: Wed, 16 Sep 2015 14:34:31 -0600 Subject: [PATCH] PATCH [perl #123562] Regexp-matching "hangs" The regex engine got into an infinite loop because of the malformation. It is trying to back-up over a sequence of UTF-8 continuation bytes. But the character just before the sequence should be a start byte. If not, there is a malformation. I added a test to croak if that isn't the case so that it doesn't just infinitely loop. I did this also in the similar areas of regexec.c. Comments long ago added to the code suggested that we check for malformations in the vicinity of the new tests. But that was never done. These new tests should be good enough to prevent looping, anyway. --- regexec.c | 12 ++++++++++++ t/re/pat.t | 18 +++++++++++++++++- 2 files changed, 29 insertions(+), 1 deletion(-) Index: perl-5.18.2/regexec.c =================================================================== --- perl-5.18.2.orig/regexec.c 2018-04-05 11:42:21.649264230 -0400 +++ perl-5.18.2/regexec.c 2018-04-05 11:43:58.657440600 -0400 @@ -7435,6 +7435,10 @@ S_reghop3(U8 *s, I32 off, const U8* lim) if (UTF8_IS_CONTINUED(*s)) { while (s > lim && UTF8_IS_CONTINUATION(*s)) s--; + if (! UTF8_IS_START(*s)) { + dTHX; + Perl_croak(aTHX_ "Malformed UTF-8 character (fatal)"); + } } /* XXX could check well-formedness here */ } @@ -7466,6 +7470,10 @@ S_reghop4(U8 *s, I32 off, const U8* llim if (UTF8_IS_CONTINUED(*s)) { while (s > llim && UTF8_IS_CONTINUATION(*s)) s--; + if (! UTF8_IS_START(*s)) { + dTHX; + Perl_croak(aTHX_ "Malformed UTF-8 character (fatal)"); + } } /* XXX could check well-formedness here */ } @@ -7495,6 +7503,10 @@ S_reghopmaybe3(U8* s, I32 off, const U8* if (UTF8_IS_CONTINUED(*s)) { while (s > lim && UTF8_IS_CONTINUATION(*s)) s--; + if (! UTF8_IS_START(*s)) { + dTHX; + Perl_croak(aTHX_ "Malformed UTF-8 character (fatal)"); + } } /* XXX could check well-formedness here */ } Index: perl-5.18.2/t/re/pat.t =================================================================== --- perl-5.18.2.orig/t/re/pat.t 2018-04-05 11:42:21.649264230 -0400 +++ perl-5.18.2/t/re/pat.t 2018-04-05 11:42:21.649264230 -0400 @@ -20,7 +20,7 @@ BEGIN { require './test.pl'; } -plan tests => 672; # Update this when adding/deleting tests. +plan tests => 673; # Update this when adding/deleting tests. run_tests() unless caller; @@ -1401,6 +1401,22 @@ EOP is ($s, 'XXcdXXX&', 'RT #119125 with /x'); } + { # Test that we handle some malformed UTF-8 without looping [perl + # #123562] + + my $code=' + BEGIN{require q(test.pl);} + use Encode qw(_utf8_on); + my $malformed = "a\x80\n"; + _utf8_on($malformed); + watchdog(3); + $malformed =~ /(\n\r|\r)$/; + print q(No infinite loop here!); + '; + fresh_perl_like($code, qr/Malformed UTF-8 character/, {}, + "test that we handle some UTF-8 malformations without looping" ); + } + } # End of sub run_tests 1; debian/patches/fixes/CVE-2017-12883.patch0000644000000000000000000000204313201115157014436 0ustar Backport of: From 2be4edede4ae226e2eebd4eff28cedd2041f300f Mon Sep 17 00:00:00 2001 From: Karl Williamson Date: Fri, 25 Aug 2017 11:33:58 -0600 Subject: [PATCH] PATCH: [perl #131598] The cause of this is that the vFAIL macro uses RExC_parse, and that variable has just been changed in preparation for code after the vFAIL. The solution is to not change RExC_parse until after the vFAIL. This is a case where the macro hides stuff that can bite you. diff --git a/regcomp.c b/regcomp.c index 561d8fd..5034fb0 100644 --- a/regcomp.c +++ b/regcomp.c @@ -10032,12 +10032,14 @@ S_grok_bslash_N(pTHX_ RExC_state_t *pRExC_state, regnode** node_p, UV *valuep, I } sv_catpv(substitute_parse, ")"); - RExC_parse = SvPV(substitute_parse, len); + len = SvCUR(substitute_parse); /* Don't allow empty number */ if (len < 8) { vFAIL("Invalid hexadecimal number in \\N{U+...}"); } + RExC_parse = SvPV_nolen(substitute_parse); + RExC_end = RExC_parse + len; /* The values are Unicode, and therefore not subject to recoding */ debian/patches/fixes/CVE-2017-12837.patch0000644000000000000000000000114213201115141014425 0ustar Backport of: From 96c83ed78aeea1a0496dd2b2d935869a822dc8a5 Mon Sep 17 00:00:00 2001 From: Karl Williamson Date: Wed, 21 Jun 2017 11:33:37 -0600 Subject: [PATCH] regcomp [perl #131582] diff --git a/regcomp.c b/regcomp.c index 561d8fd..4055f3e 100644 --- a/regcomp.c +++ b/regcomp.c @@ -10883,6 +10883,7 @@ tryagain: goto loopdone; } p = RExC_parse; + RExC_parse = parse_start; if (ender > 0xff) { REQUIRE_UTF8; } debian/patches/fixes/document_makemaker_ccflags.diff0000644000000000000000000000235112265313056020106 0ustar From 26356b8dd664303ae7b09acc1bd3d655081fc664 Mon Sep 17 00:00:00 2001 From: Niko Tyni Date: Mon, 30 May 2011 22:54:24 +0300 Subject: Document that CCFLAGS should include $Config{ccflags} Bug: https://rt.cpan.org/Public/Bug/Display.html?id=68613 Bug-Debian: http://bugs.debian.org/628522 Compiling XS extensions without $Config{ccflags} can break the binary interface on some platforms. Patch-Name: fixes/document_makemaker_ccflags.diff --- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm index f271ef7..e593aa4 100644 --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm @@ -1571,6 +1571,10 @@ currently used by MakeMaker but may be handy in Makefile.PLs. String that will be included in the compiler call command line between the arguments INC and OPTIMIZE. +The default value is taken from $Config{ccflags}. When overriding +CCFLAGS, make sure to include the $Config{ccflags} settings to avoid +binary incompatibilities. + =item CONFIG Arrayref. E.g. [qw(archname manext)] defines ARCHNAME & MANEXT from debian/patches/fixes/IPC-SysV-spelling.diff0000644000000000000000000000211612265313056015720 0ustar From 3cc52c1d9e674f591f3599a8002fd3636e28c0d8 Mon Sep 17 00:00:00 2001 From: Niko Tyni Date: Fri, 6 Dec 2013 19:52:09 +0200 Subject: Fix spelling of IPC_CREAT in IPC-SysV documentation Change picked from IPC-SysV-2.04. Origin: upstream Bug: https://rt.cpan.org/Public/Bug/Display.html?id=86736 Bug-Debian: http://bugs.debian.org/730558 Patch-Name: fixes/IPC-SysV-spelling.diff --- cpan/IPC-SysV/lib/IPC/SysV.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpan/IPC-SysV/lib/IPC/SysV.pm b/cpan/IPC-SysV/lib/IPC/SysV.pm index 247d199..06723d2 100644 --- a/cpan/IPC-SysV/lib/IPC/SysV.pm +++ b/cpan/IPC-SysV/lib/IPC/SysV.pm @@ -113,7 +113,7 @@ C defines and conditionally exports all the constants defined in your system include files which are needed by the SysV IPC calls. Common ones include - IPC_CREATE IPC_EXCL IPC_NOWAIT IPC_PRIVATE IPC_RMID IPC_SET IPC_STAT + IPC_CREAT IPC_EXCL IPC_NOWAIT IPC_PRIVATE IPC_RMID IPC_SET IPC_STAT GETVAL SETVAL GETPID GETNCNT GETZCNT GETALL SETALL SEM_A SEM_R SEM_UNDO SHM_RDONLY SHM_RND SHMLBA debian/patches/fixes/CVE-2016-6185.patch0000644000000000000000000001101013261442303014347 0ustar Backport of: From 08e3451d7b3b714ad63a27f1b9c2a23ee75d15ee Mon Sep 17 00:00:00 2001 From: Father Chrysostomos Date: Sat, 2 Jul 2016 22:56:51 -0700 Subject: [PATCH] =?utf8?q?Don=E2=80=99t=20let=20XSLoader=20load=20relative?= =?utf8?q?=20paths?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit [rt.cpan.org #115808] The logic in XSLoader for determining the library goes like this: my $c = () = split(/::/,$caller,-1); $modlibname =~ s,[\\/][^\\/]+$,, while $c--; # Q&D basename my $file = "$modlibname/auto/$modpname/$modfname.bundle"; (That last line varies by platform.) $caller is the calling package. $modlibname is the calling file. It removes as many path segments from $modlibname as there are segments in $caller. So if you have Foo/Bar/XS.pm calling XSLoader from the Foo::Bar package, the $modlibname will end up containing the path in @INC where XS.pm was found, followed by "/Foo". Usually the fallback to Dynaloader::bootstrap_inherit, which does an @INC search, makes things Just Work. But if our hypothetical Foo/Bar/XS.pm actually calls XSLoader::load from inside a string eval, then path ends up being "(eval 1)/auto/Foo/Bar/Bar.bundle". So if someone creates a directory named ‘(eval 1)’ with a naughty binary file in it, it will be loaded if a script using Foo::Bar is run in the parent directory. This commit makes XSLoader fall back to Dynaloader’s @INC search if the calling file has a relative path that is not found in @INC. --- dist/XSLoader/XSLoader_pm.PL | 25 +++++++++++++++++++++++++ dist/XSLoader/t/XSLoader.t | 27 ++++++++++++++++++++++++++- 2 files changed, 51 insertions(+), 1 deletion(-) Index: perl-5.18.2/dist/XSLoader/XSLoader_pm.PL =================================================================== --- perl-5.18.2.orig/dist/XSLoader/XSLoader_pm.PL 2018-04-05 11:45:28.693604813 -0400 +++ perl-5.18.2/dist/XSLoader/XSLoader_pm.PL 2018-04-05 11:45:28.689604806 -0400 @@ -84,6 +84,31 @@ print OUT <<'EOT'; my $modpname = join('/',@modparts); my $c = @modparts; $modlibname =~ s,[\\/][^\\/]+$,, while $c--; # Q&D basename + # Does this look like a relative path? + if ($modlibname !~ m|^[\\/]|) { + # Someone may have a #line directive that changes the file name, or + # may be calling XSLoader::load from inside a string eval. We cer- + # tainly do not want to go loading some code that is not in @INC, + # as it could be untrusted. + # + # We could just fall back to DynaLoader here, but then the rest of + # this function would go untested in the perl core, since all @INC + # paths are relative during testing. That would be a time bomb + # waiting to happen, since bugs could be introduced into the code. + # + # So look through @INC to see if $modlibname is in it. A rela- + # tive $modlibname is not a common occurrence, so this block is + # not hot code. + FOUND: { + for (@INC) { + if ($_ eq $modlibname) { + last FOUND; + } + } + # Not found. Fall back to DynaLoader. + goto \&XSLoader::bootstrap_inherit; + } + } EOT my $dl_dlext = quotemeta($Config::Config{'dlext'}); Index: perl-5.18.2/dist/XSLoader/t/XSLoader.t =================================================================== --- perl-5.18.2.orig/dist/XSLoader/t/XSLoader.t 2018-04-05 11:45:28.693604813 -0400 +++ perl-5.18.2/dist/XSLoader/t/XSLoader.t 2018-04-05 11:45:48.645641262 -0400 @@ -33,7 +33,7 @@ my %modules = ( 'Time::HiRes'=> q| ::can_ok( 'Time::HiRes' => 'usleep' ) |, # 5.7.3 ); -plan tests => keys(%modules) * 3 + 8; +plan tests => keys(%modules) * 3 + 9; # Try to load the module use_ok( 'XSLoader' ); @@ -96,3 +96,28 @@ SKIP: { like $@, "/^Invalid version format/", 'correct error msg for invalid versions'; } + +SKIP: { + skip "File::Path not available", 1 + unless eval { require File::Path }; + my $name = "phooo$$"; + File::Path::make_path("$name/auto/Foo/Bar"); + open my $fh, + ">$name/auto/Foo/Bar/Bar.$Config::Config{'dlext'}"; + close $fh; + my $fell_back; + local *XSLoader::bootstrap_inherit = sub { + $fell_back++; + # Break out of the calling subs + goto the_test; + }; + eval < Date: Wed, 16 Jul 2008 12:34:39 +0300 Subject: Net::FTP: cope gracefully with a failed command In the Net::FTP::_data_cmd() routine the dataconn() sub is invoked unconditionally and without any error checking immediately after sending a command to the server. It turns out that there are FTP servers out there on the Big Bad Internet that close the data connection port immediately after a failed transfer command. In this case, Net::FTP misbehaves in two ways: 1. Net::FTP::dataconn->close() and _close() methods try to use the 'net_ftp_cmd' member without checking if it has even been set - and on a failed connection, it is not, thus Perl 5.10.0 breaks out with an error. 2. Net::FTP::_data_cmd() invokes dataconn() unconditionally even when it does not *need* it - even when the command has failed. This patch adds a Net::FTP::dataconn check whether the 'net_ftp_cmd' member is defined at all before using it, and modifies Net::FTP::_data_cmd() to invoke dataconn() in an eval, so that a failure there will *still* return properly if the result code is bad. Bug-Debian: http://bugs.debian.org/491062 Bug: https://rt.cpan.org/Public/Bug/Display.html?id=37700 Origin: https://rt.cpan.org/Public/Bug/Display.html?id=37700 Patch-Name: fixes/net_ftp_failed_command.diff --- cpan/libnet/Net/FTP.pm | 4 +++- cpan/libnet/Net/FTP/dataconn.pm | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/cpan/libnet/Net/FTP.pm b/cpan/libnet/Net/FTP.pm index 9ed6d38..51efaae 100644 --- a/cpan/libnet/Net/FTP.pm +++ b/cpan/libnet/Net/FTP.pm @@ -1011,7 +1011,9 @@ sub _data_cmd { if ($ok) { $ftp->command($cmd, @_); - $data = $ftp->_dataconn(); + eval { + $data = $ftp->_dataconn(); + }; $ok = CMD_INFO == $ftp->response(); if ($ok) { $data->reading diff --git a/cpan/libnet/Net/FTP/dataconn.pm b/cpan/libnet/Net/FTP/dataconn.pm index e7645cb..7b746ae 100644 --- a/cpan/libnet/Net/FTP/dataconn.pm +++ b/cpan/libnet/Net/FTP/dataconn.pm @@ -52,7 +52,7 @@ sub _close { $data->SUPER::close(); delete ${*$ftp}{'net_ftp_dataconn'} - if exists ${*$ftp}{'net_ftp_dataconn'} + if defined($ftp) && exists ${*$ftp}{'net_ftp_dataconn'} && $data == ${*$ftp}{'net_ftp_dataconn'}; } @@ -69,6 +69,7 @@ sub close { $data->_close; + return 0 unless defined($ftp); $ftp->response() == CMD_OK && $ftp->message =~ /unique file name:\s*(\S*)\s*\)/ && (${*$ftp}{'net_ftp_unique'} = $1); debian/patches/fixes/CVE-2017-6512-pre.patch0000644000000000000000000000417413261442733015152 0ustar Backport of: From 6cf7ffa72ab3e7aaba668288cd63c8185a55de68 Mon Sep 17 00:00:00 2001 From: James E Keenan Date: Thu, 11 May 2017 04:23:40 -0400 Subject: [PATCH] Correct the order of tests of chmod(). (#294) Per code review by haarg, the order of tests was wrong in the first place. Hence, correctly re-ordering them is a better repair than changing one test's description. For: https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/pull/294 [Debian note: this is a prerequisite for the CVE-2017-6512 fix in File-Path, and was backported by Dominic Hargreaves] Bug: https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/pull/294 Patch-Name: fixes/extutils_file_path_compat.diff --- dist/ExtUtils-Command/t/eu_command.t | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) Index: perl-5.18.2/dist/ExtUtils-Command/t/eu_command.t =================================================================== --- perl-5.18.2.orig/dist/ExtUtils-Command/t/eu_command.t 2018-04-05 11:48:37.705950822 -0400 +++ perl-5.18.2/dist/ExtUtils-Command/t/eu_command.t 2018-04-05 11:50:24.290146531 -0400 @@ -151,20 +151,21 @@ BEGIN { is( ((stat('testdir'))[2] & 07777) & 0700, 0100, 'change a dir to execute-only' ); - # change a dir to read-only - @ARGV = ( '0400', 'testdir' ); + # change a dir to write-only + @ARGV = ( '0200', 'testdir' ); ExtUtils::Command::chmod(); is( ((stat('testdir'))[2] & 07777) & 0700, - ($^O eq 'vos' ? 0500 : 0400), 'change a dir to read-only' ); + 0200, 'change a dir to write-only' ); - # change a dir to write-only - @ARGV = ( '0200', 'testdir' ); + # change a dir to read-only + @ARGV = ( '0400', 'testdir' ); ExtUtils::Command::chmod(); is( ((stat('testdir'))[2] & 07777) & 0700, - ($^O eq 'vos' ? 0700 : 0200), 'change a dir to write-only' ); + 0400, 'change a dir to read-only' ); + # remove the dir we've been playing with @ARGV = ('testdir'); rm_rf; ok( ! -e 'testdir', 'rm_rf can delete a read-only dir' ); debian/patches/fixes/module_metadata_security_doc.diff0000644000000000000000000000264612265313056020501 0ustar From 7a48d7ed38c693da6294b22f28c4a1d158dfb03b Mon Sep 17 00:00:00 2001 From: Dominic Hargreaves Date: Sun, 25 Aug 2013 15:30:58 +0000 Subject: CVE-2013-1437 documentation fix Module::Metadata executes code when gathering metadata about a module by design. In versions previous to 1.000015 the documentation stated, however, that Module::Metadata provides a standard way to gather metadata about a .pm file without executing unsafe code. Origin: http://perl5.git.perl.org/perl.git/commit/68cdd4b5a461cacf43edfbc09b5490356b4a0fd0 Patch-Name: fixes/module_metadata_security_doc.diff --- cpan/Module-Metadata/lib/Module/Metadata.pm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/cpan/Module-Metadata/lib/Module/Metadata.pm b/cpan/Module-Metadata/lib/Module/Metadata.pm index e3c2504..4e416a8 100644 --- a/cpan/Module-Metadata/lib/Module/Metadata.pm +++ b/cpan/Module-Metadata/lib/Module/Metadata.pm @@ -764,8 +764,10 @@ Module::Metadata - Gather package and POD information from perl module files =head1 DESCRIPTION -This module provides a standard way to gather metadata about a .pm file -without executing unsafe code. +This module provides a standard way to gather metadata about a .pm file through +(mostly) static analysis and (some) code execution. When determining the +version of a module, the C<$VERSION> assignment is Ced, as is traditional +in the CPAN toolchain. =head1 USAGE debian/patches/fixes/CVE-2018-18311.patch0000644000000000000000000001307413375016545014452 0ustar Backport of: From 34716e2a6ee2af96078d62b065b7785c001194be Mon Sep 17 00:00:00 2001 From: David Mitchell Date: Fri, 29 Jun 2018 13:37:03 +0100 Subject: [PATCH] Perl_my_setenv(); handle integer wrap RT #133204 Wean this function off int/I32 and onto UV/Size_t. Also, replace all malloc-ish calls with a wrapper that does overflow checks, In particular, it was doing (nlen + vlen + 2) which could wrap when the combined length of the environment variable name and value exceeded around 0x7fffffff. The wrapper check function is probably overkill, but belt and braces... NB this function has several variant parts, #ifdef'ed by platform type; I have blindly changed the parts that aren't compiled under linux. --- util.c | 76 ++++++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 53 insertions(+), 23 deletions(-) Index: perl-5.18.2/util.c =================================================================== --- perl-5.18.2.orig/util.c 2018-11-20 08:17:51.756484163 -0500 +++ perl-5.18.2/util.c 2018-11-20 08:19:51.468553770 -0500 @@ -1881,8 +1881,40 @@ Perl_new_warnings_bitfield(pTHX_ STRLEN *(s+(nlen+1+vlen)) = '\0' #ifdef USE_ENVIRON_ARRAY - /* VMS' my_setenv() is in vms.c */ + +/* small wrapper for use by Perl_my_setenv that mallocs, or reallocs if + * 'current' is non-null, with up to three sizes that are added together. + * It handles integer overflow. + */ +static char * +S_env_alloc(void *current, Size_t l1, Size_t l2, Size_t l3, Size_t size) +{ + void *p; + Size_t sl, l = l1 + l2; + + if (l < l2) + goto panic; + l += l3; + if (l < l3) + goto panic; + sl = l * size; + if (sl < l) + goto panic; + + p = current + ? safesysrealloc(current, sl) + : safesysmalloc(sl); + if (p) + return (char*)p; + + panic: + Perl_croak_memory_wrap(); +} + + +/* VMS' my_setenv() is in vms.c */ #if !defined(WIN32) && !defined(NETWARE) + void Perl_my_setenv(pTHX_ const char *nam, const char *val) { @@ -1895,28 +1927,27 @@ Perl_my_setenv(pTHX_ const char *nam, co #ifndef PERL_USE_SAFE_PUTENV if (!PL_use_safe_putenv) { /* most putenv()s leak, so we manipulate environ directly */ - I32 i; - const I32 len = strlen(nam); - int nlen, vlen; + UV i; + Size_t vlen, nlen = strlen(nam); /* where does it go? */ for (i = 0; environ[i]; i++) { - if (strnEQ(environ[i],nam,len) && environ[i][len] == '=') + if (strnEQ(environ[i], nam, nlen) && environ[i][nlen] == '=') break; } if (environ == PL_origenviron) { /* need we copy environment? */ - I32 j; - I32 max; + UV j, max; char **tmpenv; max = i; while (environ[max]) max++; - tmpenv = (char**)safesysmalloc((max+2) * sizeof(char*)); + /* XXX shouldn't that be max+1 rather than max+2 ??? - DAPM */ + tmpenv = (char**)S_env_alloc(NULL, max, 2, 0, sizeof(char*)); for (j=0; j Date: Wed, 16 Oct 2013 13:59:12 +0100 Subject: [PATCH] [perl #119505] Segfault from bad backreference The code that parses regex backrefs (or ambiguous backref/octal) such as \123, did a simple atoi(), which could wrap round to negative values on long digit strings and cause seg faults. Include a check on the length of the digit string, and if greater than 9 digits, assume it can never be a valid backref (obviating the need for the atoi() call). I've also simplified the code a bit, putting most of the \g handling code into a single block, rather than doing multiple "if (isg) {...}". --- regcomp.c | 64 ++++++++++++++++++++++++++++++++++++++++++----------------- t/re/re_tests | 41 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 87 insertions(+), 18 deletions(-) Index: perl-5.18.2/regcomp.c =================================================================== --- perl-5.18.2.orig/regcomp.c 2016-03-01 09:58:17.338860022 -0500 +++ perl-5.18.2/regcomp.c 2016-03-01 10:08:09.101941906 -0500 @@ -10200,6 +10200,22 @@ } } + +/* return atoi(p), unless it's too big to sensibly be a backref, + * in which case return I32_MAX (rather than possibly 32-bit wrapping) */ + +static I32 +S_backref_value(char *p) +{ + char *q = p; + + for (;isDIGIT(*q); q++); /* calculate length of num */ + if (q - p == 0 || q - p > 9) + return I32_MAX; + return atoi(p); +} + + /* - regatom - the lowest level @@ -10633,10 +10649,11 @@ case '5': case '6': case '7': case '8': case '9': { I32 num; - bool isg = *RExC_parse == 'g'; - bool isrel = 0; bool hasbrace = 0; - if (isg) { + + if (*RExC_parse == 'g') { + bool isrel = 0; + RExC_parse++; if (*RExC_parse == '{') { RExC_parse++; @@ -10650,19 +10667,35 @@ if (isrel) RExC_parse--; RExC_parse -= 2; goto parse_named_seq; - } } - num = atoi(RExC_parse); - if (isg && num == 0) - vFAIL("Reference to invalid group 0"); - if (isrel) { - num = RExC_npar - num; - if (num < 1) - vFAIL("Reference to nonexistent or unclosed group"); + } + + num = S_backref_value(RExC_parse); + if (num == 0) + vFAIL("Reference to invalid group 0"); + else if (num == I32_MAX) { + if (isDIGIT(*RExC_parse)) + vFAIL("Reference to nonexistent group"); + else + vFAIL("Unterminated \\g... pattern"); + } + + if (isrel) { + num = RExC_npar - num; + if (num < 1) + vFAIL("Reference to nonexistent or unclosed group"); + } } - if (!isg && num > 9 && num >= RExC_npar) - /* Probably a character specified in octal, e.g. \35 */ - goto defchar; - else { + else { + num = S_backref_value(RExC_parse); + /* bare \NNN might be backref or octal */ + if (num == I32_MAX || (num > 9 && num >= RExC_npar)) + /* Probably a character specified in octal, e.g. \35 */ + goto defchar; + } + + /* at this point RExC_parse definitely points to a backref + * number */ + { char * const parse_start = RExC_parse - 1; /* MJD */ while (isDIGIT(*RExC_parse)) RExC_parse++; @@ -10939,7 +10972,7 @@ case '0': case '1': case '2': case '3':case '4': case '5': case '6': case '7': if (*p == '0' || - (isDIGIT(p[1]) && atoi(p) >= RExC_npar)) + (isDIGIT(p[1]) && S_backref_value(p) >= RExC_npar)) { I32 flags = PERL_SCAN_SILENT_ILLDIGIT; STRLEN numlen = 3; Index: perl-5.18.2/t/re/re_tests =================================================================== --- perl-5.18.2.orig/t/re/re_tests 2016-03-01 09:58:17.338860022 -0500 +++ perl-5.18.2/t/re/re_tests 2016-03-01 09:58:17.334859974 -0500 @@ -1493,6 +1493,47 @@ a\97 a97 y $& a97 +# avoid problems with 32-bit signed integer overflow + +(.)\g2147483648} x c - Reference to nonexistent group in regex +(.)\g2147483649} x c - Reference to nonexistent group in regex +(.)\g2147483650} x c - Reference to nonexistent group in regex +(.)\g4294967296} x c - Reference to nonexistent group in regex +(.)\g4294967297} x c - Reference to nonexistent group in regex +(.)\g4294967298} x c - Reference to nonexistent group in regex +a(.)\g2147483648} x c - Reference to nonexistent group in regex +a(.)\g2147483649} x c - Reference to nonexistent group in regex +a(.)\g2147483650} x c - Reference to nonexistent group in regex +a(.)\g4294967296} x c - Reference to nonexistent group in regex +a(.)\g4294967297} x c - Reference to nonexistent group in regex +a(.)\g4294967298} x c - Reference to nonexistent group in regex + +(.)\g{2147483648} x c - Reference to nonexistent group in regex +(.)\g{2147483649} x c - Reference to nonexistent group in regex +(.)\g{2147483650} x c - Reference to nonexistent group in regex +(.)\g{4294967296} x c - Reference to nonexistent group in regex +(.)\g{4294967297} x c - Reference to nonexistent group in regex +(.)\g{4294967298} x c - Reference to nonexistent group in regex +a(.)\g{2147483648} x c - Reference to nonexistent group in regex +a(.)\g{2147483649} x c - Reference to nonexistent group in regex +a(.)\g{2147483650} x c - Reference to nonexistent group in regex +a(.)\g{4294967296} x c - Reference to nonexistent group in regex +a(.)\g{4294967297} x c - Reference to nonexistent group in regex +a(.)\g{4294967298} x c - Reference to nonexistent group in regex + +(.)\2147483648 b\o{214}7483648 y $1 b +(.)\2147483649 b\o{214}7483649 y $1 b +(.)\2147483650 b\o{214}7483650 y $1 b +(.)\4294967296 b\o{42}94967296 y $1 b +(.)\4294967297 b\o{42}94967297 y $1 b +(.)\4294967298 b\o{42}94967298 y $1 b +a(.)\2147483648 ab\o{214}7483648 y $1 b +a(.)\2147483649 ab\o{214}7483649 y $1 b +a(.)\2147483650 ab\o{214}7483650 y $1 b +a(.)\4294967296 ab\o{42}94967296 y $1 b +a(.)\4294967297 ab\o{42}94967297 y $1 b +a(.)\4294967298 ab\o{42}94967298 y $1 b + # The below was inserting a NULL into the character class. [\8\9] \000 Sn - - [\8\9] - sc $& Unrecognized escape \\8 in character class debian/patches/fixes/net_smtp_docs.diff0000644000000000000000000000140512265313056015431 0ustar From e45ee803fcb1a5d50e2c6a640bf821e3f6d66e23 Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Thu, 20 Sep 2007 19:47:14 +1000 Subject: Document the Net::SMTP 'Port' option Bug-Debian: http://bugs.debian.org/100195 Bug: http://rt.cpan.org/Public/Bug/Display.html?id=36038 Patch-Name: fixes/net_smtp_docs.diff --- cpan/libnet/Net/SMTP.pm | 1 + 1 file changed, 1 insertion(+) diff --git a/cpan/libnet/Net/SMTP.pm b/cpan/libnet/Net/SMTP.pm index a28496d..07b2498 100644 --- a/cpan/libnet/Net/SMTP.pm +++ b/cpan/libnet/Net/SMTP.pm @@ -625,6 +625,7 @@ Net::SMTP will attempt to extract the address from the value passed. B - Enable debugging information +B - Select a port on the remote host to connect to (default is 25) Example: debian/patches/fixes/CVE-2015-8853-2.patch0000644000000000000000000000421613261442312014523 0ustar Backport of: From d820a0ff34c7df39297a54193fd756bb42c5c06e Mon Sep 17 00:00:00 2001 From: Karl Williamson Date: Wed, 16 Sep 2015 15:58:27 -0600 Subject: [PATCH] regexec.c: Use Perl_croak_nocontext() Instead of doing a dTHX introduced in 22b433eff9a1ffa2454e18405a56650f07b385b5. I should have pointed out in that commit message, that instead of doing a full-fledged UTF-8 well-formedness check, it does a quick sanity check sufficient to prevent looping Spotted by Vincent Pitt --- regexec.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) Index: perl-5.18.2/regexec.c =================================================================== --- perl-5.18.2.orig/regexec.c 2018-04-05 11:44:29.101496074 -0400 +++ perl-5.18.2/regexec.c 2018-04-05 11:44:56.765546529 -0400 @@ -7436,8 +7436,7 @@ S_reghop3(U8 *s, I32 off, const U8* lim) while (s > lim && UTF8_IS_CONTINUATION(*s)) s--; if (! UTF8_IS_START(*s)) { - dTHX; - Perl_croak(aTHX_ "Malformed UTF-8 character (fatal)"); + Perl_croak_nocontext("Malformed UTF-8 character (fatal)"); } } /* XXX could check well-formedness here */ @@ -7471,8 +7470,7 @@ S_reghop4(U8 *s, I32 off, const U8* llim while (s > llim && UTF8_IS_CONTINUATION(*s)) s--; if (! UTF8_IS_START(*s)) { - dTHX; - Perl_croak(aTHX_ "Malformed UTF-8 character (fatal)"); + Perl_croak_nocontext("Malformed UTF-8 character (fatal)"); } } /* XXX could check well-formedness here */ @@ -7504,8 +7502,7 @@ S_reghopmaybe3(U8* s, I32 off, const U8* while (s > lim && UTF8_IS_CONTINUATION(*s)) s--; if (! UTF8_IS_START(*s)) { - dTHX; - Perl_croak(aTHX_ "Malformed UTF-8 character (fatal)"); + Perl_croak_nocontext("Malformed UTF-8 character (fatal)"); } } /* XXX could check well-formedness here */ debian/patches/fixes/module_metadata_taint_fix.diff0000644000000000000000000001234712265313056017771 0ustar From 3f6b1970da963c8d84ef5aa2515ffade625f749d Mon Sep 17 00:00:00 2001 From: Dominic Hargreaves Date: Wed, 11 Sep 2013 23:10:23 +0100 Subject: untaint version, if needed, in Module::Metadata This change is imported from Module::Metadata 1.000018, exposed by changes in Module::Load::Conditional, to fix taint mode use of this module. Bug: https://rt.cpan.org/Public/Bug/Display.html?id=88576 Bug-Debian: http://bugs.debian.org/722210 Origin: http://perl5.git.perl.org/perl.git/commit/bff978faaae3c8c03edc7cf579be6660fdc89fb3 Patch-Name: fixes/module_metadata_taint_fix.diff --- cpan/Module-Metadata/lib/Module/Metadata.pm | 4 +++- cpan/Module-Metadata/t/encoding.t | 1 + cpan/Module-Metadata/t/lib/DistGen.pm | 4 ++++ cpan/Module-Metadata/t/lib/MBTest.pm | 1 + cpan/Module-Metadata/t/lib/Tie/CPHash.pm | 1 + cpan/Module-Metadata/t/metadata.t | 1 + cpan/Module-Metadata/t/taint.t | 29 +++++++++++++++++++++++++++++ cpan/Module-Metadata/t/version.t | 1 + 8 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 cpan/Module-Metadata/t/taint.t diff --git a/cpan/Module-Metadata/lib/Module/Metadata.pm b/cpan/Module-Metadata/lib/Module/Metadata.pm index 4e416a8..224568b 100644 --- a/cpan/Module-Metadata/lib/Module/Metadata.pm +++ b/cpan/Module-Metadata/lib/Module/Metadata.pm @@ -613,7 +613,7 @@ sub _evaluate_version_line { # compiletime/runtime issues with local() my $vsub; $pn++; # everybody gets their own package - my $eval = qq{BEGIN { q# Hide from _packages_inside() + my $eval = qq{BEGIN { my \$dummy = q# Hide from _packages_inside() #; package Module::Metadata::_version::p$pn; use version; no strict; @@ -626,6 +626,8 @@ sub _evaluate_version_line { }; }}; + $eval = $1 if $eval =~ m{^(.+)}s; + local $^W; # Try to get the $VERSION eval $eval; diff --git a/cpan/Module-Metadata/t/encoding.t b/cpan/Module-Metadata/t/encoding.t index a0970e0..b010f7e 100644 --- a/cpan/Module-Metadata/t/encoding.t +++ b/cpan/Module-Metadata/t/encoding.t @@ -1,6 +1,7 @@ #!perl use strict; +use warnings; use File::Spec; use Test::More; diff --git a/cpan/Module-Metadata/t/lib/DistGen.pm b/cpan/Module-Metadata/t/lib/DistGen.pm index 9fbd6d0..2353120 100644 --- a/cpan/Module-Metadata/t/lib/DistGen.pm +++ b/cpan/Module-Metadata/t/lib/DistGen.pm @@ -1,6 +1,7 @@ package DistGen; use strict; +use warnings; use vars qw( $VERSION $VERBOSE @EXPORT_OK); @@ -182,6 +183,7 @@ sub _gen_default_filedata { \$VERSION = '0.01'; use strict; + use warnings; 1; @@ -205,6 +207,7 @@ sub _gen_default_filedata { $self->$add_unless('t/basic.t', undent(<<" ---")); use Test::More tests => 1; use strict; + use warnings; use $self->{name}; ok 1; @@ -470,6 +473,7 @@ sub change_build_pl { $self->change_file( 'Build.PL', undent(<<" ---") ); use strict; + use warnings; use Module::Build; my \$b = Module::Build->new( # Some CPANPLUS::Dist::Build versions need to allow mismatches diff --git a/cpan/Module-Metadata/t/lib/MBTest.pm b/cpan/Module-Metadata/t/lib/MBTest.pm index 005920f..fb239ab 100644 --- a/cpan/Module-Metadata/t/lib/MBTest.pm +++ b/cpan/Module-Metadata/t/lib/MBTest.pm @@ -1,6 +1,7 @@ package MBTest; use strict; +use warnings; use IO::File (); use File::Spec; diff --git a/cpan/Module-Metadata/t/lib/Tie/CPHash.pm b/cpan/Module-Metadata/t/lib/Tie/CPHash.pm index b167622..217d642 100644 --- a/cpan/Module-Metadata/t/lib/Tie/CPHash.pm +++ b/cpan/Module-Metadata/t/lib/Tie/CPHash.pm @@ -20,6 +20,7 @@ package Tie::CPHash; require 5.000; use strict; +use warnings; use vars qw(@ISA $VERSION); @ISA = qw(); diff --git a/cpan/Module-Metadata/t/metadata.t b/cpan/Module-Metadata/t/metadata.t index b7adb1e..2503fad 100644 --- a/cpan/Module-Metadata/t/metadata.t +++ b/cpan/Module-Metadata/t/metadata.t @@ -3,6 +3,7 @@ # vim:ts=8:sw=2:et:sta:sts=2 use strict; +use warnings; use lib 't/lib'; use IO::File; use MBTest; diff --git a/cpan/Module-Metadata/t/taint.t b/cpan/Module-Metadata/t/taint.t new file mode 100644 index 0000000..ef527de --- /dev/null +++ b/cpan/Module-Metadata/t/taint.t @@ -0,0 +1,29 @@ +#!/usr/bin/perl -T +use strict; +use warnings; + +use 5.008000; # for ${^TAINT} +use Test::More tests => 2; +use Module::Metadata; +use Carp 'croak'; + +# stolen liberally from Class-Tiny/t/lib/TestUtils.pm - thanks xdg! +sub exception(&) { + my $code = shift; + my $success = eval { $code->(); 1 }; + my $err = $@; + return undef if $success; # original returned '' + croak "Execution died, but the error was lost" unless $@; + return $@; +} + +ok(${^TAINT}, 'taint flag is set'); + +# without the fix, we get: +# Insecure dependency in eval while running with -T switch at lib/Module/Metadata.pm line 668, line 15. +is( + exception { Module::Metadata->new_from_module( "Module::Metadata" )->version }, + undef, + 'no exception', +); + diff --git a/cpan/Module-Metadata/t/version.t b/cpan/Module-Metadata/t/version.t index 061a063..e523f97 100644 --- a/cpan/Module-Metadata/t/version.t +++ b/cpan/Module-Metadata/t/version.t @@ -1,4 +1,5 @@ use strict; +use warnings; use Test::More; use Module::Metadata; use lib "t/lib/0_2"; debian/patches/fixes/perlbug-patchlist.diff0000644000000000000000000000524712265313056016231 0ustar From 491efa67f03291bc6502b0fc937081af2c93166d Mon Sep 17 00:00:00 2001 From: Niko Tyni Date: Thu, 27 Jun 2013 14:37:01 +0300 Subject: Make perlbug look up the list of local patches at run time Re-parsing patchlevel.h in Perl by perlbug.PL is error prone and apparently unnecessary. The same information is available to perlbug via Config::local_patches(). This fixes [perl #118433]. Bug: https://rt.perl.org/rt3/Public/Bug/Display.html?id=118433 Bug-Debian: http://bugs.debian.org/710842 Origin: http://perl5.git.perl.org/perl.git/commit/3541c11ab9be01478a51881e3972abb78481726e Patch-Name: fixes/perlbug-patchlist.diff --- utils/perlbug.PL | 39 ++++++--------------------------------- 1 file changed, 6 insertions(+), 33 deletions(-) diff --git a/utils/perlbug.PL b/utils/perlbug.PL index bf86670..b53ad42 100644 --- a/utils/perlbug.PL +++ b/utils/perlbug.PL @@ -22,37 +22,12 @@ $file .= '.com' if $^O eq 'VMS'; open OUT, ">$file" or die "Can't create $file: $!"; -# extract patchlevel.h information +# get patchlevel.h timestamp -open PATCH_LEVEL, "<" . catfile(updir, "patchlevel.h") - or die "Can't open patchlevel.h: $!"; +-e catfile(updir, "patchlevel.h") + or die "Can't find patchlevel.h: $!"; -my $patchlevel_date = (stat PATCH_LEVEL)[9]; - -while () { - last if $_ =~ /^\s*static\s+(?:const\s+)?char.*?local_patches\[\]\s*=\s*{\s*$/; -} - -if (! defined($_)) { - warn "Warning: local_patches section not found in patchlevel.h\n"; -} - -my @patches; -while () { - last if /^\s*}/; - next if /^\s*#/; # preprocessor stuff - next if /PERL_GIT_UNPUSHED_COMMITS/; # XXX expand instead - next if /"uncommitted-changes"/; # XXX determine if active instead - chomp; - s/^\s+,?\s*"?//; - s/"?\s*,?$//; - s/(['\\])/\\$1/g; - push @patches, $_ unless $_ eq 'NULL'; -} -my $patch_desc = "'" . join("',\n '", @patches) . "'"; -my $patch_tags = join "", map /(\S+)/ ? "+$1 " : (), @patches; - -close(PATCH_LEVEL) or die "Error closing patchlevel.h: $!"; +my $patchlevel_date = (stat _)[9]; # TO DO (prehaps): store/embed $Config::config_sh into perlbug. When perlbug is # used, compare $Config::config_sh with the stored version. If they differ then @@ -74,15 +49,13 @@ $Config{startperl} my \$config_tag1 = '$extract_version - $Config{cf_time}'; my \$patchlevel_date = $patchlevel_date; -my \$patch_tags = '$patch_tags'; -my \@patches = ( - $patch_desc -); !GROK!THIS! # In the following, perl variables are not expanded during extraction. print OUT <<'!NO!SUBS!'; +my @patches = Config::local_patches(); +my $patch_tags = join "", map /(\S+)/ ? "+$1 " : (), @patches; use warnings; use strict; debian/patches/fixes/CVE-2018-18313.patch0000644000000000000000000000337213375014625014451 0ustar Backport of: From cc56be313c7d4e7c266c01dabc762a153d5b2c28 Mon Sep 17 00:00:00 2001 From: Karl Williamson Date: Sat, 25 Mar 2017 15:00:22 -0600 Subject: [PATCH] regcomp.c: Convert some strchr to memchr This allows things to work properly in the face of embedded NULs. See the branch merge message for more information. (cherry picked from commit 43b2f4ef399e2fd7240b4eeb0658686ad95f8e62) --- regcomp.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) Index: perl-5.18.2/regcomp.c =================================================================== --- perl-5.18.2.orig/regcomp.c 2018-11-20 09:19:39.530827946 -0500 +++ perl-5.18.2/regcomp.c 2018-11-20 09:24:15.811984928 -0500 @@ -9909,7 +9909,7 @@ S_grok_bslash_N(pTHX_ RExC_state_t *pREx RExC_parse++; /* Skip past the '{' */ - if (! (endbrace = strchr(RExC_parse, '}')) /* no trailing brace */ + if (! (endbrace = (char *) memchr(RExC_parse, '}', RExC_end - RExC_parse)) /* no trailing brace */ || ! (endbrace == RExC_parse /* nothing between the {} */ || (endbrace - RExC_parse >= 2 /* U+ (bad hex is checked below */ && strnEQ(RExC_parse, "U+", 2)))) /* for a better error msg) */ @@ -12398,9 +12398,13 @@ parseit: vFAIL2("Empty \\%c{}", (U8)value); if (*RExC_parse == '{') { const U8 c = (U8)value; - e = strchr(RExC_parse++, '}'); - if (!e) + e = (char *) memchr(RExC_parse, '}', RExC_end - RExC_parse); + if (!e) { + RExC_parse++; vFAIL2("Missing right brace on \\%c{}", c); + } + + RExC_parse++; while (isSPACE(UCHARAT(RExC_parse))) RExC_parse++; if (e == RExC_parse) debian/patches/fixes/respect_umask.diff0000644000000000000000000001377712265313056015454 0ustar From c8ad941ee0da3a2deaf98163e328fa47167cbb1a Mon Sep 17 00:00:00 2001 From: Brendan O'Dea Date: Tue, 8 Mar 2005 19:30:38 +1100 Subject: Respect umask during installation This is needed to satisfy Debian policy regarding group-writable site directories. Patch-Name: fixes/respect_umask.diff --- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 18 +++++++++--------- dist/ExtUtils-Install/lib/ExtUtils/Install.pm | 18 +++++++++--------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm index 1629b27..a8e3096 100644 --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm @@ -2052,7 +2052,7 @@ doc__install : doc_site_install $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site pure_perl_install :: all - $(NOECHO) $(MOD_INSTALL) \ + $(NOECHO) umask 022; $(MOD_INSTALL) \ read }.$self->catfile('$(PERL_ARCHLIB)','auto','$(FULLEXT)','.packlist').q{ \ write }.$self->catfile('$(DESTINSTALLARCHLIB)','auto','$(FULLEXT)','.packlist').q{ \ $(INST_LIB) $(DESTINSTALLPRIVLIB) \ @@ -2066,7 +2066,7 @@ pure_perl_install :: all pure_site_install :: all - $(NOECHO) $(MOD_INSTALL) \ + $(NOECHO) umask 022; $(MOD_INSTALL) \ read }.$self->catfile('$(SITEARCHEXP)','auto','$(FULLEXT)','.packlist').q{ \ write }.$self->catfile('$(DESTINSTALLSITEARCH)','auto','$(FULLEXT)','.packlist').q{ \ $(INST_LIB) $(DESTINSTALLSITELIB) \ @@ -2079,7 +2079,7 @@ pure_site_install :: all }.$self->catdir('$(PERL_ARCHLIB)','auto','$(FULLEXT)').q{ pure_vendor_install :: all - $(NOECHO) $(MOD_INSTALL) \ + $(NOECHO) umask 022; $(MOD_INSTALL) \ read }.$self->catfile('$(VENDORARCHEXP)','auto','$(FULLEXT)','.packlist').q{ \ write }.$self->catfile('$(DESTINSTALLVENDORARCH)','auto','$(FULLEXT)','.packlist').q{ \ $(INST_LIB) $(DESTINSTALLVENDORLIB) \ @@ -2091,8 +2091,8 @@ pure_vendor_install :: all doc_perl_install :: all $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) $(DOC_INSTALL) \ + -$(NOECHO) umask 022; $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) umask 022; $(DOC_INSTALL) \ "Module" "$(NAME)" \ "installed into" "$(INSTALLPRIVLIB)" \ LINKTYPE "$(LINKTYPE)" \ @@ -2102,8 +2102,8 @@ doc_perl_install :: all doc_site_install :: all $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) $(DOC_INSTALL) \ + -$(NOECHO) umask 022; $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) umask 022; $(DOC_INSTALL) \ "Module" "$(NAME)" \ "installed into" "$(INSTALLSITELIB)" \ LINKTYPE "$(LINKTYPE)" \ @@ -2113,8 +2113,8 @@ doc_site_install :: all doc_vendor_install :: all $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) $(DOC_INSTALL) \ + -$(NOECHO) umask 022; $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) umask 022; $(DOC_INSTALL) \ "Module" "$(NAME)" \ "installed into" "$(INSTALLVENDORLIB)" \ LINKTYPE "$(LINKTYPE)" \ diff --git a/dist/ExtUtils-Install/lib/ExtUtils/Install.pm b/dist/ExtUtils-Install/lib/ExtUtils/Install.pm index 7e17121..47c5020 100644 --- a/dist/ExtUtils-Install/lib/ExtUtils/Install.pm +++ b/dist/ExtUtils-Install/lib/ExtUtils/Install.pm @@ -443,7 +443,7 @@ sub _can_write_dir { =pod -=item _mkpath($dir,$show,$mode,$verbose,$dry_run) +=item _mkpath($dir,$show,$verbose,$dry_run) Wrapper around File::Path::mkpath() to handle errors. @@ -460,13 +460,13 @@ writable. =cut sub _mkpath { - my ($dir,$show,$mode,$verbose,$dry_run)=@_; + my ($dir,$show,$verbose,$dry_run)=@_; if ( $verbose && $verbose > 1 && ! -d $dir) { $show= 1; - printf "mkpath(%s,%d,%#o)\n", $dir, $show, $mode; + printf "mkpath(%s,%d)\n", $dir, $show; } if (!$dry_run) { - if ( ! eval { File::Path::mkpath($dir,$show,$mode); 1 } ) { + if ( ! eval { File::Path::mkpath($dir,$show); 1 } ) { _choke("Can't create '$dir'","$@"); } @@ -771,7 +771,7 @@ sub install { #XXX OS-SPECIFIC _chdir($cwd); } foreach my $targetdir (sort keys %check_dirs) { - _mkpath( $targetdir, 0, 0755, $verbose, $dry_run ); + _mkpath( $targetdir, 0, $verbose, $dry_run ); } foreach my $found (@found_files) { my ($diff, $ffd, $origfile, $mode, $size, $atime, $mtime, @@ -785,7 +785,7 @@ sub install { #XXX OS-SPECIFIC $targetfile= _unlink_or_rename( $targetfile, 'tryhard', 'install' ) unless $dry_run; } elsif ( ! -d $targetdir ) { - _mkpath( $targetdir, 0, 0755, $verbose, $dry_run ); + _mkpath( $targetdir, 0, $verbose, $dry_run ); } print "Installing $targetfile\n"; @@ -825,7 +825,7 @@ sub install { #XXX OS-SPECIFIC if ($pack{'write'}) { $dir = install_rooted_dir(dirname($pack{'write'})); - _mkpath( $dir, 0, 0755, $verbose, $dry_run ); + _mkpath( $dir, 0, $verbose, $dry_run ); print "Writing $pack{'write'}\n" if $verbose; $packlist->write(install_rooted_file($pack{'write'})) unless $dry_run; } @@ -1165,7 +1165,7 @@ be prepended as a directory to each installed file (and directory). sub pm_to_blib { my($fromto,$autodir,$pm_filter) = @_; - _mkpath($autodir,0,0755); + _mkpath($autodir,0); while(my($from, $to) = each %$fromto) { if( -f $to && -s $from == -s $to && -M $to < -M $from ) { print "Skip $to (unchanged)\n"; @@ -1188,7 +1188,7 @@ sub pm_to_blib { # we wont try hard here. its too likely to mess things up. forceunlink($to); } else { - _mkpath(dirname($to),0,0755); + _mkpath(dirname($to),0); } if ($need_filtering) { run_filter($pm_filter, $from, $to); debian/patches/fixes/CVE-2018-6913.patch0000644000000000000000000001363013263370211014362 0ustar Backport of: From c3d9db7eb4dc1747fff423ebaf0c1bcd62c2e8a9 Mon Sep 17 00:00:00 2001 From: Tony Cook Date: Tue, 8 Aug 2017 09:32:58 +1000 Subject: (perl #131844) fix various space calculation issues in pp_pack.c - for the originally reported case, if the start/cur pointer is in the top 75% of the address space the add (cur) + glen addition would overflow, resulting in the condition failing incorrectly. - the addition of the existing space used to the space needed could overflow, resulting in too small an allocation and a buffer overflow. - the scaling for UTF8 could overflow. - the multiply to calculate the space needed for many items could overflow. For the first case, do a space calculation without making new pointers. For the other cases, detect the overflow and croak if there's an overflow. Originally this used Size_t_MAX as the maximum size of a memory allocation, but for -DDEBUGGING builds realloc() throws a panic for allocations over half the address space in size, changing the error reported for the allocation. For non-DEBUGGING builds the Size_t_MAX limit has the small chance of finding a system that has 3GB of contiguous space available, and allocating that space, which could be a denial of servce in some cases. Unfortunately changing the limit to half the address space means that the exact case with the original issue can no longer occur, so the test is no longer testing against the address + length issue that caused the original problem, since the allocation is failing earlier. One option would be to change the test so the size request by pack is just under 2GB, but this has a higher (but still low) probability that the system has the address space available, and will actually try to allocate the memory, so let's not do that. --- pp_pack.c | 25 +++++++++++++++++++++---- t/op/pack.t | 24 +++++++++++++++++++++++- 2 files changed, 44 insertions(+), 5 deletions(-) Index: perl-5.18.2/pp_pack.c =================================================================== --- perl-5.18.2.orig/pp_pack.c 2018-04-11 07:12:55.777497581 -0400 +++ perl-5.18.2/pp_pack.c 2018-04-11 07:12:55.777497581 -0400 @@ -755,11 +755,28 @@ STMT_START { \ } \ } STMT_END +#define SAFE_UTF8_EXPAND(var) \ +STMT_START { \ + if ((var) > SSize_t_MAX / UTF8_EXPAND) \ + Perl_croak(aTHX_ "%s", "Out of memory during pack()"); \ + (var) = (var) * UTF8_EXPAND; \ +} STMT_END + +#define GROWING2(utf8, cat, start, cur, item_size, item_count) \ +STMT_START { \ + if (SSize_t_MAX / (item_size) < (item_count)) \ + Perl_croak(aTHX_ "%s", "Out of memory during pack()"); \ + GROWING((utf8), (cat), (start), (cur), (item_size) * (item_count)); \ +} STMT_END + #define GROWING(utf8, cat, start, cur, in_len) \ STMT_START { \ STRLEN glen = (in_len); \ - if (utf8) glen *= UTF8_EXPAND; \ - if ((cur) + glen >= (start) + SvLEN(cat)) { \ + STRLEN catcur = (STRLEN)((cur) - (start)); \ + if (utf8) SAFE_UTF8_EXPAND(glen); \ + if (SSize_t_MAX - glen < catcur) \ + Perl_croak(aTHX_ "%s", "Out of memory during pack()"); \ + if (catcur + glen >= SvLEN(cat)) { \ (start) = sv_exp_grow(cat, glen); \ (cur) = (start) + SvCUR(cat); \ } \ @@ -769,7 +786,7 @@ STMT_START { \ STMT_START { \ const STRLEN glen = (in_len); \ STRLEN gl = glen; \ - if (utf8) gl *= UTF8_EXPAND; \ + if (utf8) SAFE_UTF8_EXPAND(gl); \ if ((cur) + gl >= (start) + SvLEN(cat)) { \ *cur = '\0'; \ SvCUR_set((cat), (cur) - (start)); \ @@ -2556,7 +2573,7 @@ S_pack_rec(pTHX_ SV *cat, tempsym_t* sym if (props && !(props & PACK_SIZE_UNPREDICTABLE)) { /* We can process this letter. */ STRLEN size = props & PACK_SIZE_MASK; - GROWING(utf8, cat, start, cur, (STRLEN) len * size); + GROWING2(utf8, cat, start, cur, size, (STRLEN)len); } } Index: perl-5.18.2/t/op/pack.t =================================================================== --- perl-5.18.2.orig/t/op/pack.t 2018-04-11 07:12:55.777497581 -0400 +++ perl-5.18.2/t/op/pack.t 2018-04-11 07:12:55.777497581 -0400 @@ -12,7 +12,7 @@ my $no_endianness = $] > 5.009 ? '' : my $no_signedness = $] > 5.009 ? '' : "Signed/unsigned pack modifiers not available on this perl"; -plan tests => 14704; +plan tests => 14708; use strict; use warnings qw(FATAL all); @@ -2003,3 +2003,25 @@ is(unpack('c'), 65, "one-arg unpack (cha #90160 is(eval { () = unpack "C0 U*", ""; "ok" }, "ok", 'medial U* on empty string'); + +SKIP: +{ + # [perl #131844] pointer addition overflow + $Config{ptrsize} == 4 + or skip "[perl #131844] need 32-bit build for this test", 4; + # prevent ASAN just crashing on the allocation failure + local $ENV{ASAN_OPTIONS} = $ENV{ASAN_OPTIONS}; + $ENV{ASAN_OPTIONS} .= ",allocator_may_return_null=1"; + fresh_perl_like('pack "f999999999"', qr/Out of memory during pack/, { stderr => 1 }, + "pointer addition overflow"); + + # integer (STRLEN) overflow from addition of glen to current length + fresh_perl_like('pack "c10f1073741823"', qr/Out of memory during pack/, { stderr => 1 }, + "integer overflow calculating allocation (addition)"); + + fresh_perl_like('pack "W10f536870913", 256', qr/Out of memory during pack/, { stderr => 1 }, + "integer overflow calculating allocation (utf8)"); + + fresh_perl_like('pack "c10f1073741824"', qr/Out of memory during pack/, { stderr => 1 }, + "integer overflow calculating allocation (multiply)"); +} Index: perl-5.18.2/perl.h =================================================================== --- perl-5.18.2.orig/perl.h 2014-01-06 17:46:45.000000000 -0500 +++ perl-5.18.2/perl.h 2018-04-11 07:24:49.313676799 -0400 @@ -1796,6 +1796,9 @@ typedef UVTYPE UV; # undef PERL_NEED_MY_BETOH64 #endif +#define Size_t_MAX (~(Size_t)0) +#define SSize_t_MAX (SSize_t)(~(Size_t)0 >> 1) + #define IV_DIG (BIT_DIGITS(IVSIZE * 8)) #define UV_DIG (BIT_DIGITS(UVSIZE * 8)) debian/patches/fixes/CVE-2016-2381.patch0000644000000000000000000000707712665305714014376 0ustar From c709c3e2d95829957635f2a0c24fdc49237f1869 Mon Sep 17 00:00:00 2001 From: Tony Cook Date: Wed, 27 Jan 2016 11:52:15 +1100 Subject: [PATCH 1/2] remove duplicate environment variables from environ If we see duplicate environment variables while iterating over environ[]: a) make sure we use the same value in %ENV that getenv() returns. Previously on a duplicate, %ENV would have the last entry for the name from environ[], but a typical getenv() would return the first entry. Rather than assuming all getenv() implementations return the first entry explicitly call getenv() to ensure they agree. b) remove duplicate entries from environ Previously if there was a duplicate definition for a name in environ[] setting that name in %ENV could result in an unsafe value being passed to a child process, so ensure environ[] has no duplicates. --- perl.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 49 insertions(+), 2 deletions(-) Index: perl-5.18.2/perl.c =================================================================== --- perl-5.18.2.orig/perl.c 2016-03-01 07:32:09.720382095 -0500 +++ perl-5.18.2/perl.c 2016-03-01 07:32:09.716382047 -0500 @@ -4272,23 +4272,70 @@ } if (env) { char *s, *old_var; + STRLEN nlen; SV *sv; + HV *dups = newHV(); + for (; *env; env++) { old_var = *env; if (!(s = strchr(old_var,'=')) || s == old_var) continue; + nlen = s - old_var; #if defined(MSDOS) && !defined(DJGPP) *s = '\0'; (void)strupr(old_var); *s = '='; #endif - sv = newSVpv(s+1, 0); - (void)hv_store(hv, old_var, s - old_var, sv, 0); + if (hv_exists(hv, old_var, nlen)) { + const char *name = savepvn(old_var, nlen); + + /* make sure we use the same value as getenv(), otherwise code that + uses getenv() (like setlocale()) might see a different value to %ENV + */ + sv = newSVpv(PerlEnv_getenv(name), 0); + + /* keep a count of the dups of this name so we can de-dup environ later */ + if (hv_exists(dups, name, nlen)) + ++SvIVX(*hv_fetch(dups, name, nlen, 0)); + else + (void)hv_store(dups, name, nlen, newSViv(1), 0); + + Safefree(name); + } + else { + sv = newSVpv(s+1, 0); + } + (void)hv_store(hv, old_var, nlen, sv, 0); if (env_is_not_environ) mg_set(sv); } + if (HvKEYS(dups)) { + /* environ has some duplicate definitions, remove them */ + HE *entry; + hv_iterinit(dups); + while ((entry = hv_iternext_flags(dups, 0))) { + STRLEN nlen; + const char *name = HePV(entry, nlen); + IV count = SvIV(HeVAL(entry)); + IV i; + SV **valp = hv_fetch(hv, name, nlen, 0); + + assert(valp); + + /* try to remove any duplicate names, depending on the + * implementation used in my_setenv() the iteration might + * not be necessary, but let's be safe. + */ + for (i = 0; i < count; ++i) + my_setenv(name, 0); + + /* and set it back to the value we set $ENV{name} to */ + my_setenv(name, SvPV_nolen(*valp)); + } + } + SvREFCNT_dec_NN(dups); } #endif /* USE_ENVIRON_ARRAY */ #endif /* !PERL_MICRO */ debian/patches/fixes/CVE-2018-12015.patch0000644000000000000000000000313113310205230014412 0ustar From ae65651eab053fc6dc4590dbb863a268215c1fc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Fri, 8 Jun 2018 11:45:40 +0100 Subject: [PATCH] [PATCH] Remove existing files before overwriting them Archive should extract only the latest same-named entry. Extracted regular file should not be writtent into existing block device (or any other one). https://rt.cpan.org/Ticket/Display.html?id=125523 Signed-off-by: Chris 'BinGOs' Williams diff --git a/cpan/Archive-Tar/lib/Archive/Tar.pm b/cpan/Archive-Tar/lib/Archive/Tar.pm index dd4b968..659080c 100644 --- a/cpan/Archive-Tar/lib/Archive/Tar.pm +++ b/cpan/Archive-Tar/lib/Archive/Tar.pm @@ -842,6 +842,20 @@ sub _extract_file { return; } + ### If a file system already contains a block device with the same name as + ### the being extracted regular file, we would write the file's content + ### to the block device. So remove the existing file (block device) now. + ### If an archive contains multiple same-named entries, the last one + ### should replace the previous ones. So remove the old file now. + ### If the old entry is a symlink to a file outside of the CWD, the new + ### entry would create a file there. This is CVE-2018-12015 + ### . + if (-l $full || -e _) { + if (!unlink $full) { + $self->_error( qq[Could not remove old file '$full': $!] ); + return; + } + } if( length $entry->type && $entry->is_file ) { my $fh = IO::File->new; $fh->open( '>' . $full ) or ( debian/patches/fixes/CVE-2014-4330.patch0000644000000000000000000002416712665305446014371 0ustar Backport of: From 19be3be6968e2337bcdfe480693fff795ecd1304 Mon Sep 17 00:00:00 2001 From: Tony Cook Date: Mon, 30 Jun 2014 12:16:03 +1000 Subject: [PATCH] don't recurse infinitely in Data::Dumper Add a configuration variable/option to limit recursion when dumping deep data structures. Defaults the limit to 1000, which can be reduced or increase, or eliminated by setting it to 0. This patch addresses CVE-2014-4330. This bug was found and reported by: LSE Leading Security Experts GmbH employee Markus Vervier. --- MANIFEST | 1 + dist/Data-Dumper/Dumper.pm | 25 +++++++++++++++++++++++- dist/Data-Dumper/Dumper.xs | 32 ++++++++++++++++++++++--------- dist/Data-Dumper/t/recurse.t | 45 ++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 93 insertions(+), 10 deletions(-) create mode 100644 dist/Data-Dumper/t/recurse.t Index: perl-5.18.2/MANIFEST =================================================================== --- perl-5.18.2.orig/MANIFEST 2016-03-01 07:25:49.624323999 -0500 +++ perl-5.18.2/MANIFEST 2016-03-01 07:25:49.616323889 -0500 @@ -3150,6 +3150,7 @@ dist/Data-Dumper/t/purity_deepcopy_maxdepth.t See if three Data::Dumper functions work dist/Data-Dumper/t/qr.t See if Data::Dumper works with qr|/| dist/Data-Dumper/t/quotekeys.t See if Data::Dumper::Quotekeys works +dist/Data-Dumper/t/recurse.t See if Data::Dumper::Maxrecurse works dist/Data-Dumper/t/seen.t See if Data::Dumper::Seen works dist/Data-Dumper/t/sortkeys.t See if Data::Dumper::Sortkeys works dist/Data-Dumper/t/sparseseen.t See if Data::Dumper::Sparseseen works Index: perl-5.18.2/dist/Data-Dumper/Dumper.pm =================================================================== --- perl-5.18.2.orig/dist/Data-Dumper/Dumper.pm 2016-03-01 07:25:49.624323999 -0500 +++ perl-5.18.2/dist/Data-Dumper/Dumper.pm 2016-03-01 07:25:49.616323889 -0500 @@ -56,6 +56,7 @@ $Sortkeys = 0 unless defined $Sortkeys; $Deparse = 0 unless defined $Deparse; $Sparseseen = 0 unless defined $Sparseseen; +$Maxrecurse = 1000 unless defined $Maxrecurse; # # expects an arrayref of values to be dumped. @@ -92,6 +93,7 @@ 'bless' => $Bless, # keyword to use for "bless" # expdepth => $Expdepth, # cutoff depth for explicit dumping maxdepth => $Maxdepth, # depth beyond which we give up + maxrecurse => $Maxrecurse, # depth beyond which we abort useperl => $Useperl, # use the pure Perl implementation sortkeys => $Sortkeys, # flag or filter for sorting hash keys deparse => $Deparse, # use B::Deparse for coderefs @@ -351,6 +353,12 @@ return qq['$val']; } + # avoid recursing infinitely [perl #122111] + if ($s->{maxrecurse} > 0 + and $s->{level} >= $s->{maxrecurse}) { + die "Recursion limit of $s->{maxrecurse} exceeded"; + } + # we have a blessed ref my ($blesspad); if ($realpack and !$no_bless) { @@ -683,6 +691,11 @@ defined($v) ? (($s->{'maxdepth'} = $v), return $s) : $s->{'maxdepth'}; } +sub Maxrecurse { + my($s, $v) = @_; + defined($v) ? (($s->{'maxrecurse'} = $v), return $s) : $s->{'maxrecurse'}; +} + sub Useperl { my($s, $v) = @_; defined($v) ? (($s->{'useperl'} = $v), return $s) : $s->{'useperl'}; @@ -1108,6 +1121,16 @@ =item * +$Data::Dumper::Maxrecurse I $I->Maxrecurse(I<[NEWVAL]>) + +Can be set to a positive integer that specifies the depth beyond which +recursion into a structure will throw an exception. This is intended +as a security measure to prevent perl running out of stack space when +dumping an excessively deep structure. Can be set to 0 to remove the +limit. Default is 1000. + +=item * + $Data::Dumper::Useperl I $I->Useperl(I<[NEWVAL]>) Can be set to a boolean value which controls whether the pure Perl Index: perl-5.18.2/dist/Data-Dumper/Dumper.xs =================================================================== --- perl-5.18.2.orig/dist/Data-Dumper/Dumper.xs 2016-03-01 07:25:49.624323999 -0500 +++ perl-5.18.2/dist/Data-Dumper/Dumper.xs 2016-03-01 07:28:14.333723716 -0500 @@ -26,7 +26,7 @@ SV *pad, SV *xpad, SV *apad, SV *sep, SV *pair, SV *freezer, SV *toaster, I32 purity, I32 deepcopy, I32 quotekeys, SV *bless, - I32 maxdepth, SV *sortkeys, int use_sparse_seen_hash); + I32 maxdepth, SV *sortkeys, int use_sparse_seen_hash, IV maxrecurse); #ifndef HvNAME_get #define HvNAME_get HvNAME @@ -298,7 +298,7 @@ AV *postav, I32 *levelp, I32 indent, SV *pad, SV *xpad, SV *apad, SV *sep, SV *pair, SV *freezer, SV *toaster, I32 purity, I32 deepcopy, I32 quotekeys, SV *bless, I32 maxdepth, SV *sortkeys, - int use_sparse_seen_hash) + int use_sparse_seen_hash, IV maxrecurse) { char tmpbuf[128]; U32 i; @@ -475,6 +475,10 @@ return 1; } + if (maxrecurse > 0 && *levelp >= maxrecurse) { + croak("Recursion limit of %" IVdf " exceeded", maxrecurse); + } + if (realpack && !no_bless) { /* we have a blessed ref */ STRLEN blesslen; const char * const blessstr = SvPV(bless, blesslen); @@ -524,7 +528,7 @@ DD_dump(aTHX_ ival, SvPVX_const(namesv), SvCUR(namesv), retval, seenhv, postav, levelp, indent, pad, xpad, apad, sep, pair, freezer, toaster, purity, deepcopy, quotekeys, bless, - maxdepth, sortkeys, use_sparse_seen_hash); + maxdepth, sortkeys, use_sparse_seen_hash, maxrecurse); sv_catpvn(retval, ")}", 2); } /* plain */ else { @@ -532,7 +536,7 @@ DD_dump(aTHX_ ival, SvPVX_const(namesv), SvCUR(namesv), retval, seenhv, postav, levelp, indent, pad, xpad, apad, sep, pair, freezer, toaster, purity, deepcopy, quotekeys, bless, - maxdepth, sortkeys, use_sparse_seen_hash); + maxdepth, sortkeys, use_sparse_seen_hash, maxrecurse); } SvREFCNT_dec(namesv); } @@ -544,7 +548,7 @@ DD_dump(aTHX_ ival, SvPVX_const(namesv), SvCUR(namesv), retval, seenhv, postav, levelp, indent, pad, xpad, apad, sep, pair, freezer, toaster, purity, deepcopy, quotekeys, bless, - maxdepth, sortkeys, use_sparse_seen_hash); + maxdepth, sortkeys, use_sparse_seen_hash, maxrecurse); SvREFCNT_dec(namesv); } else if (realtype == SVt_PVAV) { @@ -617,7 +621,7 @@ DD_dump(aTHX_ elem, iname, ilen, retval, seenhv, postav, levelp, indent, pad, xpad, apad, sep, pair, freezer, toaster, purity, deepcopy, quotekeys, bless, - maxdepth, sortkeys, use_sparse_seen_hash); + maxdepth, sortkeys, use_sparse_seen_hash, maxrecurse); if (ix < ixmax) sv_catpvn(retval, ",", 1); } @@ -824,7 +828,7 @@ DD_dump(aTHX_ hval, SvPVX_const(sname), SvCUR(sname), retval, seenhv, postav, levelp, indent, pad, xpad, newapad, sep, pair, freezer, toaster, purity, deepcopy, quotekeys, bless, - maxdepth, sortkeys, use_sparse_seen_hash); + maxdepth, sortkeys, use_sparse_seen_hash, maxrecurse); SvREFCNT_dec(sname); Safefree(nkey_buffer); if (indent >= 2) @@ -1033,7 +1037,7 @@ seenhv, postav, &nlevel, indent, pad, xpad, newapad, sep, pair, freezer, toaster, purity, deepcopy, quotekeys, bless, maxdepth, - sortkeys, use_sparse_seen_hash); + sortkeys, use_sparse_seen_hash, maxrecurse); SvREFCNT_dec(e); } } @@ -1113,6 +1117,7 @@ SV *val, *name, *pad, *xpad, *apad, *sep, *pair, *varname; SV *freezer, *toaster, *bless, *sortkeys; I32 purity, deepcopy, quotekeys, maxdepth = 0; + IV maxrecurse = 1000; char tmpbuf[1024]; I32 gimme = GIMME; int use_sparse_seen_hash = 0; @@ -1201,6 +1206,8 @@ bless = *svp; if ((svp = hv_fetch(hv, "maxdepth", 8, FALSE))) maxdepth = SvIV(*svp); + if ((svp = hv_fetch(hv, "maxrecurse", 10, FALSE))) + maxrecurse = SvIV(*svp); if ((svp = hv_fetch(hv, "sortkeys", 8, FALSE))) { sortkeys = *svp; if (! SvTRUE(sortkeys)) @@ -1280,7 +1287,7 @@ DD_dump(aTHX_ val, SvPVX_const(name), SvCUR(name), valstr, seenhv, postav, &level, indent, pad, xpad, newapad, sep, pair, freezer, toaster, purity, deepcopy, quotekeys, - bless, maxdepth, sortkeys, use_sparse_seen_hash); + bless, maxdepth, sortkeys, use_sparse_seen_hash, maxrecurse); SPAGAIN; if (indent >= 2 && !terse) Index: perl-5.18.2/dist/Data-Dumper/t/recurse.t =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ perl-5.18.2/dist/Data-Dumper/t/recurse.t 2016-03-01 07:25:49.616323889 -0500 @@ -0,0 +1,45 @@ +#!perl + +# Test the Maxrecurse option + +use strict; +use Test::More tests => 32; +use Data::Dumper; + +SKIP: { + skip "no XS available", 16 + if $Data::Dumper::Useperl; + local $Data::Dumper::Useperl = 1; + test_recursion(); +} + +test_recursion(); + +sub test_recursion { + my $pp = $Data::Dumper::Useperl ? "pure perl" : "XS"; + $Data::Dumper::Purity = 1; # make sure this has no effect + $Data::Dumper::Indent = 0; + $Data::Dumper::Maxrecurse = 1; + is(eval { Dumper([]) }, '$VAR1 = [];', "$pp: maxrecurse 1, []"); + is(eval { Dumper([[]]) }, undef, "$pp: maxrecurse 1, [[]]"); + ok($@, "exception thrown"); + is(eval { Dumper({}) }, '$VAR1 = {};', "$pp: maxrecurse 1, {}"); + is(eval { Dumper({ a => 1 }) }, q($VAR1 = {'a' => 1};), + "$pp: maxrecurse 1, { a => 1 }"); + is(eval { Dumper({ a => {} }) }, undef, "$pp: maxrecurse 1, { a => {} }"); + ok($@, "exception thrown"); + is(eval { Dumper(\1) }, "\$VAR1 = \\1;", "$pp: maxrecurse 1, \\1"); + is(eval { Dumper(\\1) }, undef, "$pp: maxrecurse 1, \\1"); + ok($@, "exception thrown"); + $Data::Dumper::Maxrecurse = 3; + is(eval { Dumper(\1) }, "\$VAR1 = \\1;", "$pp: maxrecurse 3, \\1"); + is(eval { Dumper(\(my $s = {})) }, "\$VAR1 = \\{};", "$pp: maxrecurse 3, \\{}"); + is(eval { Dumper(\(my $s = { a => [] })) }, "\$VAR1 = \\{'a' => []};", + "$pp: maxrecurse 3, \\{ a => [] }"); + is(eval { Dumper(\(my $s = { a => [{}] })) }, undef, + "$pp: maxrecurse 3, \\{ a => [{}] }"); + ok($@, "exception thrown"); + $Data::Dumper::Maxrecurse = 0; + is(eval { Dumper([[[[[]]]]]) }, q($VAR1 = [[[[[]]]]];), + "$pp: check Maxrecurse doesn't set limit to 0 recursion"); +} debian/mkprovides0000644000000000000000000000034412265313056011300 0ustar #!./perl.static -w # # Create perlapi- provides substvar # BEGIN { unshift @INC, 'lib' } use strict; use Config; print +(join ', ', map "perlapi-$_", sort $Config{version}, split ' ', $Config{inc_version_list}), "\n"; debian/README.source0000644000000000000000000001265512265313056011361 0ustar Building the Debian Perl package ================================ Build Options ------------- In addition to the ``nostrip'' and ``noopt'' DEB_BUILD_OPTIONS required by policy (10.1) the build process also recognises the following perl-specific options: x-perl-shared x-perl-static Select whether /usr/bin/perl is linked to the shared or static perl library. By default the link type is shared on all architectures other than i386 (where the relocations incur a measurable performance penalty). x-perl-notest (or nocheck) The regression test suite is normally run after each of the static and shared build phases. It is occaisionally useful to supress these tests (when debugging the build process for example, or to allow porters to work around known build chain or kernel bugs). Patches Applied ---------------- A copy of all patches which have been applied to the source are in the debian/patches directory of the Debian source package. There are two classes of patches in the directory: debian/patches/fixes/* are generally applicable to any Perl installation (and usually back-ported from upstream, or posted to p5p when applied). Patches in debian/patches/debian implement changes which are specific to the Debian packaging, such as our @INC ordering or specific to policy such as not including standard directories in LD_RUN_PATH. Packaging Details ----------------- The Debian build process consists of the following components: debian/rules makefile which drives the build process as usual with Debian packages. This process is slightly more complex than normal to simplify bootstrapping a new port--using only basic shell utils, and perl (once built, as perl.static). To bootstrap a new architecture, use: DEB_BUILD_GNU_TYPE= debian/rules binary-arch debian/config.debian a helper script, invoked by debian/rules to run Configure with various options. debian/config.over used to fiddle some config.sh variables (copied to the source directory by the build process where it is picked up by Configure). debian/patches directory containg the patches applied (see above). These are maintained with git-dpm, but if a standalone way to add a new patch is needed (for instance when NMUing), the recommended way is to use quilt(1). Using DEP-3 compatible headers for the patch will improve its description in `perl -V' output. quilt new debian/myfix quilt add [ hack ] echo 'patch description (Closes: #xxxxxx)' | quilt header -a # (or even better provide a full DEP-3 compatible header) quilt refresh debian/released-versions contains a list of released Debian versions, used by the debian/mkprovides script to generate a list of perlapi- provides for perl-base indicating the released versions the package is compatible with. debian/headers list of C headers to process with h2ph, which is run with "-a" to pick up any required includes--keep this base list as short as possible. debian/*.{files{,.static,.shared},docs,moduledocs} used to split packages; see the comments/code in the install-stamp target of debian/rules. Managing debian/patches with git-dpm ------------------------------------ This section is targeted at the Debian package maintainers, working with the Git repository pointed by the Vcs-Git field in debian/control. NMUers and the like can use the old way of standalone patch handling described above, or just hack the source and ignore debian/patches altogether. First, you need to have the 'git-dpm' package installed. The current version as of this writing is 0.7.1-1, and the minimum version required to handle the perl repository is 0.5.0-1. To avoid introducing noise in the form of wrapping/unwrapping of subject lines in patches, it is recommended that git >= 1:1.7.5.4-1 be used with git-dpm in this repository. Until Debian bug #629242 is fixed, you should configure git to not add signatures to patches, to avoid unnecessary churn: git config --add format.signature '' Any upstream modifications need to be done on a special 'patched' branch that is created with 'git-dpm checkout-patched'. Every commit on this branch corresponds to one patch in debian/patches. The commits can be handled with normal git tools like 'git rebase -i'. When everything is ready, 'git-dpm update-patches' will merge the work into the master branch with the debian/ directory and remove the 'patched' branch, which is not supposed to be pushed to the shared repository. See the git-dpm(1) manual page for more information. Package maintainer tests ------------------------ There are package maintainer tests in the debian/t/ directory that are supposed to pass at all times. It is recommended that you add a git pre-commit hook (.git/hooks/pre-commit) that runs the tests before releasing, for instance: #!/bin/sh if [ -e debian/changelog ] && \ git diff --cached debian/changelog | grep -q '^-.*UNRELEASED' && \ git diff --cached debian/changelog | grep -q '^\+.*unstable' then prove debian/t/*.t fi Credits ------- Previous maintainers of Debian Perl packages: Ray Dassen , Carl Streeter , Robert Sanders and Darren Stalder . -- Brendan O'Dea Tue, 8 Mar 2005 19:30:38 +1100 -- Niko Tyni Wed, 03 Feb 2010 14:47:51 +0200 debian/perl-modules.lintian-overrides0000644000000000000000000000024212265313056015157 0ustar # This isn't a a script, so the interpreter will not be used wrong-path-for-interpreter usr/share/perl/5.18.2/Config/Perl/V.pm (#!/pro/bin/perl != /usr/bin/perl) debian/libperl5.18.postinst0000644000000000000000000000010512265313056012737 0ustar #!/bin/sh -e if [ "$1" = "configure" ] then ldconfig fi exit 0 debian/perl-modules.docs0000644000000000000000000000023012265313056012446 0ustar debian/changelog perl-modules/changelog.Debian debian/copyright perl-modules/copyright debian/perl-modules.README.Debian perl-modules/README.Debian debian/libperl5.18.files.static0000644000000000000000000000002512265313056013445 0ustar usr/lib/libperl.so.* debian/libperl-dev.files0000644000000000000000000000004512265313056012421 0ustar usr/lib/libperl.a usr/lib/libperl.so debian/check-require0000755000000000000000000000352512265313056011653 0ustar #!perl # check that the Perl modules listed in STDIN can be used with only # modules under the current directory (or the one given as the # only argument) # Copyright 2010 Niko Tyni # # This program is free software; # you may redistribute it and/or modify it under the same terms as Perl # itself. # only look under the specified directory, default to cwd BEGIN { my $dir = shift || '.'; chdir $dir or die("chdir $dir: $!"); @INC=map { qq{.$_} } grep m|^/|, @INC; } # unbuffer output $| = 1; # supported input format variations: # usr/share/perl/5.12/Tie/Hash.pm # usr/*/perl/*/Tie/Hash.pm # Tie::Hash # usr/*/perl/*/File/Glob # usr/share/perl/5.12/Config_heavy.pl # Config_heavy.pl # Config # unicore/heavy.pl # sys/ioctl.ph sub canonicalize { local $_ = shift; /\*/ and do { my @files = glob; die("no files globbed by $_") if !@files; return map { canonicalize($_) } @files; }; -d and do { return canonicalize("$_/*"); }; # usr/*/perl/*/auto/File/Glob/Glob.so and the like should be ignored return () if m|/| && !/\.p[hlm]$/; s|usr/[^/]+/perl/[^/]+/||; s|/|::|g if s/\.pm$//; return ($_); } while (<>) { chomp; next if !/\S/ || /^\s*#/; check($_) for canonicalize($_); } my %seen; sub check { local $_ = shift; return if $seen{$_}++; # "use IO" and "use re" are deprecated and/or useless return if $_ eq 'IO' || $_ eq 're'; # "use feature" dies without an argument return if $_ eq 'feature'; # this file does not return a true value, and is not to be used # directly return if $_ eq 'unicore/To/Isc.pl'; if (m|([^/]+)_heavy\.pl|) { # bytes_heavy.pl needs bytes.pm loaded first check($1); }; print "$_: "; if (/\.p[hl]$/) { # require "unicore/To/Upper.pl"; require $_; } else { # require Fcntl; Fcntl->import; eval qq{require $_; $_->import;}; die $@ if $@; } print "ok\n"; } debian/perl-modules.preinst0000644000000000000000000000211212265313056013203 0ustar #!/bin/sh -e # /etc/perl/Net/libnet.cfg mistakenly installed as /etc/Net in perl 5.8 if [ "$1" = upgrade ] && [ -f /etc/Net ] && which md5sum > /dev/null && [ "$(md5sum /etc/Net)" = "fb2946cae573b8ed3d654a180d458733 /etc/Net" ] then rm -f /etc/Net fi # this used to be a symlink, see #536384 if [ -h /usr/share/doc/perl-modules ]; then rm -f /usr/share/doc/perl-modules fi # cpanp used to save its configuration to /usr/share # the md5sum corresponds to the file we ship from 5.10.0-24 onwards if [ "$1" = upgrade ] && [ -f /usr/share/perl/5.10.0/CPANPLUS/Config/System.pm ] && [ ! -e /etc/perl/CPANPLUS/Config/System.pm ] && [ "$(md5sum /usr/share/perl/5.10.0/CPANPLUS/Config/System.pm)" != \ "a8e8f612c37f8a5d1b73ebf5bd4e4473 /usr/share/perl/5.10.0/CPANPLUS/Config/System.pm" ] then if [ -d /etc/perl/CPANPLUS/Config ] || mkdir -p /etc/perl/CPANPLUS/Config then mv /usr/share/perl/5.10.0/CPANPLUS/Config/System.pm \ /etc/perl/CPANPLUS/Config/System.pm || true rmdir /usr/share/perl/5.10.0/CPANPLUS/Config || true fi fi exit 0 debian/t/0000755000000000000000000000000012265313057007435 5ustar debian/t/control.t0000755000000000000000000002115312265313057011307 0ustar #!/usr/bin/perl -w use strict; use lib "dist/Module-CoreList/lib"; # Copyright 2011 Niko Tyni # # This program is free software; you can redistribute it and/or modify # it under the same terms as Perl itself. # This script was created for checking the Breaks/Replaces/Provides # triplets in the debian/control file of the Debian perl source package. # # 1) check the versioned Breaks against Module::CoreList information # # 2) check that all Breaks entries have appropriate Replaces and Provides # entries # # 3) check that there are no packages in the Debian archive (as seen via # the local apt package cache) that should have Breaks/Replaces/Provides # entries # # See the the hashes below for hardcoded special cases that will probably # need to be updated in the future. # get the list of deprecated packages my %deprecated; require 'lib/deprecate.pm'; { no warnings 'once'; %deprecated = reverse %deprecate::DEBIAN_PACKAGES; } # list special cases of version numbers that are OK here # version numbering discontinuities (epochs, added digits) cause these my %ok = ( "libtest-simple-perl" => { "0.98" => "0.98", }, ); # list special cases where a Breaks entry doesn't need to imply # Replaces+Provides my %triplet_check_skip = ( "perl-base" => [ "libfile-spec-perl" ], ); # list special cases where the name of the Debian package does not # match a module name that has a right $VERSION entry my %special_modules = ( "libcgi-pm-perl" => 'CGI', "libansicolor-perl" => 'Term::ANSIColor', "libio-compress-perl" => "IO::Compress::Gzip", "libio-compress-zlib-perl" => "IO::Compress::Gzip", "liblocale-codes-perl" => "Locale::Country", "libscalar-list-utils-perl" => "List::Util", ); use Test::More; use Module::CoreList; use Dpkg::Control::Info; use Dpkg::Deps; use AptPkg::Config '$_config'; use AptPkg::System '$_system'; use AptPkg::Cache; _init_AptPkg(); # AptPkg offers a proper Debian version comparison mechanism my $versioning = $_system->versioning; my $apt = AptPkg::Cache->new; # slurp in the control info my $control = Dpkg::Control::Info->new(shift || "debian/control"); my $perl_version = get_perl_version(); # the 5.10 packaging used Conflicts; 5.12 onwards uses Breaks my $breaksname = ($perl_version <= 5.010001 ? "Conflicts" : "Breaks"); # initialize the corelist info my $corelist = $Module::CoreList::version{$perl_version}; die(qq(no Module::CoreList information found for $perl_version (try "perl -Idist/Module-CoreList/lib $0"))) if !defined $corelist; # for the known modules in the corelist, create a mapping # from a probable Debian package name to the CPAN distribution name # # this is mostly to get the casing right (Io vs. IO etc.) my %debian_from_cpan_guess; for my $cpan_name (keys %$corelist) { my $guess = "lib" . (lc $cpan_name) . "-perl"; $guess =~ s/::/-/g; $debian_from_cpan_guess{$guess} = $cpan_name; } # we also store the other way around so we don't have to do # the above dance every time my %cpan_from_debian_guess = reverse %debian_from_cpan_guess; # cache the list of our own binary packages for later my %is_perl_binary; my %deps_found; my $breaks_total = 0; for my $perl_package_info ($control->get_packages) { my $perl_package_name = $perl_package_info->{Package}; my $dep_found = $deps_found{$perl_package_name} ||= {}; $is_perl_binary{$perl_package_name}++; next if !exists $perl_package_info->{$breaksname}; # cache all the targets for Breaks, Replaces and Provides for later # we store Dpkg::Deps::Simple objects for each target for my $deptype ($breaksname, "Replaces", "Provides") { next if !exists $perl_package_info->{$deptype}; # Dpkg::Deps cannot parse unsubstituted substvars so remove this $perl_package_info->{$deptype} =~ s/\${perlapi:Provides}//; my $parsed = deps_parse($perl_package_info->{$deptype}); next if !defined $parsed; for my $target ($parsed->get_deps) { $dep_found->{$deptype}{$target->{package}} = $target; $breaks_total++ if $deptype eq $breaksname; } } } plan tests => 3 * $breaks_total + 2; ok($breaks_total, "successfully parsed debian/control"); for my $perl_package_name (keys %deps_found) { my $dep_found = $deps_found{$perl_package_name}; # go through all the Breaks targets # check the version against Module::CoreList # check for appropriate Replaces and Provides entries # # the number of digits is a pain # we use the current version in the Debian archive to determine # how many we need for my $broken (keys %{$dep_found->{$breaksname}}) { my $module = deb2cpan($broken); my ($archive_epoch, $archive_digits) = get_archive_info($broken); my $broken_version = $dep_found->{$breaksname}{$broken}{version}; $broken_version =~ s/-\d+$//; # remove the Debian revision SKIP: { skip("$module is unknown to Module::CoreList", 3) if !exists $corelist->{$module}; my $corelist_version = cpan_version_to_deb($corelist->{$module}, $broken, $archive_digits); $corelist_version = $archive_epoch . ":". $corelist_version if $archive_epoch; is($broken_version, $corelist_version, "Breaks for $broken in $perl_package_name matches Module::CoreList for $module"); skip("not checking Replaces and Provides for $broken in $perl_package_name", 2) if $triplet_check_skip{$perl_package_name} && grep { $_ eq $broken } @{$triplet_check_skip{$perl_package_name}}; ok(exists $dep_found->{Replaces}{$broken}, "Breaks for $broken in $perl_package_name implies Replaces"); if (exists $deprecated{$broken}) { ok(!exists $dep_found->{Provides}{$broken}, "Breaks for deprecated package $broken in $perl_package_name does not imply Provides"); } else { ok(exists $dep_found->{Provides}{$broken}, "Breaks for $broken in $perl_package_name implies Provides"); } } } } # finally, also check if there are any (new?) packages in the archive # that match Module::CoreList my @found_in_archive; for my $module (keys %$corelist) { my $package = $cpan_from_debian_guess{$module}; next if grep $deps_found{$_}{$breaksname}{$package}, keys %deps_found; next if $is_perl_binary{$package}; push @found_in_archive, $package if exists $apt->{$package} && exists $apt->{$package}{VersionList}; } my $found_in_archive = join(" ", @found_in_archive); is($found_in_archive, "", "no potential packages for new Provides/Replaces/Breaks found in the archive"); # convert libfoo-bar-perl to Foo::Bar sub deb2cpan { local $_ = shift; return $special_modules{$_} if exists $special_modules{$_}; return $debian_from_cpan_guess{$_} if exists $debian_from_cpan_guess{$_}; s/^lib(.*)-perl/$1/; s/-/::/g; s/(\w+)/\u$1/g; return $_; } sub cpan_version_to_deb { my $cpan_version = shift; my $package = shift; my $digits = shift; # cpan_version # digits # result # 1.15_02, 2 => 1.15.02 # 1.15_02, 4 => 1.1502 # 1.15_02, 0 => 1.15.02 # # 1.15_021, 2 => 1.15.021 # 1.15_021, 4 => 1.1500.021 # 1.15_021, 0 => 1.15.021 # # 1.15, 1 => 1.15 # 1.15, 2 => 1.15 # 1.15, 4 => 1.1500 # 1.15, 0 => 1.15 return $ok{$package}{$cpan_version} if exists $ok{$package}{$cpan_version}; # 1.15_02 => (1, 15, 02) my ($major, $prefix, $suffix) = ($cpan_version =~ /^(\d+\.)(\d+)(?:_(\d+))?$/); die("no match with $cpan_version?") if !$major; $suffix ||= ""; if (length($suffix) + length($prefix) == $digits) { $prefix .= $suffix; $suffix = ""; } if (length($suffix) + length($prefix) < $digits) { $prefix .= "0" while length($prefix) < $digits; } $suffix = ".$suffix" if $suffix ne ""; $major.$prefix.$suffix; } sub get_archive_info { my $p = shift; return (0, 0) if !exists $apt->{$p}; return (0, 0) if !exists $apt->{$p}{VersionList}; # virtual package my $latest = (sort byversion @{$apt->{$p}{VersionList}})[-1]; my $v = $latest->{VerStr}; $v =~ s/\+dfsg//; my ($epoch, $major, $prefix, $suffix, $revision) = ($v =~ /^(?:(\d+):)?((?:\d+\.))+(\d+)(?:_(\d+))?(-[^-]+)$/); return ($epoch, length $prefix); } sub byversion { return $versioning->compare($a->{VerStr}, $b->{VerStr}); } sub _init_AptPkg { # From /usr/share/doc/libapt-pkg-perl/examples/apt-cache # # initialise the global config object with the default values and # setup the $_system object $_config->init; $_system = $_config->system; # supress cache building messages $_config->{quiet} = 2; } sub get_perl_version { # if cwd is a perl source directory, we check the corelist information # for that. Otherwise, fall back to the running perl version my $perl_version = qx'dpkg-parsechangelog | \ sed -ne "s/-[^-]\+$//; s/~.*//; s/^Version: *\([0-9]\+:\)*//p"'; chomp $perl_version; $perl_version = version->parse($perl_version || $])->numify; diag("testing for $perl_version"); return $perl_version; } debian/t/copyright.t0000644000000000000000000000252212265313057011633 0ustar #!/usr/bin/perl -w use strict; use Test::More tests => 8; my $upstream_version; ok(open(P, "dpkg-parsechangelog |"), "successfully piping from dpkg-parsechangelog"); while (

) { /^Version: (.+)-[^-]+$/ or next; $upstream_version = $1; last; } isnt($upstream_version, "", "found upstream version from dpkg-parsechangelog output"); ok(close P, "dpkg-parsechangelog exited normally"); my $checked_version; ok(open(C, ") { next if !/^ Last checked against: Perl (.+)/; $checked_version = $1; last; } isnt($checked_version, "", "found checked version from debian/copyright"); close C; is($checked_version, $upstream_version, "debian/copyright last checked for the current upstream version"); SKIP: { system('which cme >/dev/null 2>&1'); my $cmd; if ($?) { system('which config-edit >/dev/null 2>&1'); skip('no cme or config-edit or available', 2) if $?; $cmd = 'config-edit -application dpkg-copyright -ui none'; } else { $cmd = 'cme check dpkg-copyright'; } diag("checking debian/copyright which copyright checker '$cmd'"); unlike( qx/$cmd 2>&1/, qr/error/, 'no error messages from copyright checker when parsing debian/copyright'); is($?, 0, 'copyright checker exited successfully'); } debian/gen-patchlevel0000755000000000000000000000356112265313056012022 0ustar #!/bin/sh set -e # Copyright 2011 Niko Tyni # # This program is free software; you can redistribute it and/or modify # it under the same terms as Perl itself. # # Given a list of patches in debian/patches, write out one line # per patch containing the patch description, bug pointers and # upstream commit information where available. # # The output format is designed to be included into Perl's patchlevel.h, # which eventually controls what 'perl -V' prints. prefix="DEBPKG:" version="" patchdir=debian/patches while getopts p:v: f do case $f in p) prefix=$OPTARG;; v) version=$OPTARG;; esac done shift `expr $OPTIND - 1` in=${1:-$patchdir/series} if [ -n "$version" ]; then version=" for $version" fi while read patch strip do patchname=$(echo $patch | sed 's/\.diff$//') < $patchdir/$patch sed -e '/^Subject:/ { N; s/\n / / }' | sed -n -e ' # massage the patch headers s|^Bug: .*https\?://rt\.perl\.org/.*id=\(.*\).*|[perl #\1]|; tprepend; s|^Bug: .*https\?://rt\.cpan\.org/.*id=\(.*\).*|[rt.cpan.org #\1]|; tprepend; s|^Bug-Debian: [^0-9]*\([0-9]\{5,\}\)|http://bugs.debian.org/\1|; tprepend; s/^\(Subject\|Description\): //; tappend; s|^Origin: .*http://perl5\.git\.perl\.org/perl\.git/commit\(diff\)\?/\(.......\).*|[\2]|; tprepend; # post-process at the end of input $ { x; # include the version number in the patchlevel.h description (if available) s/List packaged patches/&'"${version}"'/; # escape any backslashes and double quotes s|\\|\\\\|g; s|"|\\"|g; # add a prefix s|^|\t,"'"$prefix$patchname"' - |; # newlines away s/\n/ /g; s/ */ /g; # add a suffix s/ *$/"/; p }; # stop all processing d; # label: append to the hold space :append H; d; # label: prepend to the hold space :prepend x; H; d; ' done < $in debian/perl-doc.postrm0000644000000000000000000000023312265313056012142 0ustar #!/bin/sh -e if [ "$1" = remove ] then dpkg-divert --remove --package perl-doc --rename \ --divert /usr/bin/perldoc.stub /usr/bin/perldoc fi exit 0 debian/copyright0000644000000000000000000027034212265313056011134 0ustar Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: perl Source: http://www.perl.com/CPAN/src/5.0/ Comment: This package was debianized by Brendan O'Dea on Thu, 17 Aug 2000 16:10:54 +1000. . Upstream Authors: . Larry Wall et. al. (see /usr/share/doc/perl/AUTHORS). . Last checked against: Perl 5.18.2 Files: * Copyright: Perl is Copyright (C) 1987-2013 by Larry Wall and others. All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the terms of either: . a) the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version, or . b) the "Artistic License" which comes with Perl. . On Debian GNU/Linux systems, the complete text of the GNU General Public License can be found in `/usr/share/common-licenses/GPL-1' and the Artistic Licence in `/usr/share/common-licenses/Artistic'. Comment: The directories ext/, dist/, and cpan/ contain separate distributions that have been bundled with the Perl core. The copyright and license status of these have been detailed separately below. . It is assumed that all the other files are part of Perl and share the above copyright and license information unless explicitly specified differently. Only the exceptions have been detailed below. . As a small portion of the files are indeed licensed differently from the above, all the other licenses have been collected and/or duplicated at the end of this file to facilitate review. Files: perlio.c Copyright: Copyright (c) 1996-2006, Nick Ing-Simmons Copyright (c) 2006, 2007, 2008 Larry Wall and others License: GPL-1+ or Artistic This file is a part of Perl itself, licensed as above. Files: malloc.c Copyright: Modifications Copyright Ilya Zakharevich 1996-99. License: GPL-1+ or Artistic This file is a part of Perl itself, licensed as above. Files: pp_sort.c Copyright: Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 by Larry Wall and others . Copyright (C) Tom Horsley, 1997. All rights reserved. License: GPL-1+ or Artistic This file is a part of Perl itself, licensed as above. Files: mro.c Copyright: Copyright (c) 2007 Brandon L Black Copyright (c) 2007, 2008 Larry Wall and others License: GPL-1+ or Artistic This file is a part of Perl itself, licensed as above. Files: perl.c Copyright: Copyright 1987-2011, Larry Wall MS-DOS port Copyright (c) 1989, 1990, Diomidis Spinellis OS/2 port Copyright (c) 1990, 1991, Raymond Chen, Kai Uwe Rommel Version 5 port Copyright (c) 1994-2002, Andreas Kaiser, Ilya Zakharevich License: GPL-1+ or Artistic This file is a part of Perl itself, licensed as above. Comment: These copyright notices are embedded in the code, and possibly apply to other files as well. Files: time64.c Copyright: Copyright (c) 2007-2008 Michael G Schwern . This software originally derived from Paul Sheer's pivotal_gmtime_r.c. License: Expat Files: regcomp.c regexec.c Copyright: Copyright (c) 1986 by University of Toronto. Written by Henry Spencer. Not derived from licensed software. . Alterations to Henry's code are... Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 by Larry Wall and others . NOTE: this is derived from Henry Spencer's regexp code, and should not confused with the original package (see point 3 below). Thanks, Henry! License: REGCOMP, and GPL-1+ or Artistic Comment: The "alterations to Henry's code" have the following license information: . You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the README file. Files: hv_func.h Copyright: Paul Hsieh (c) 2004 License: HSIEH-DERIVATIVE or HSIEH-BSD or LGPL-2.1 Comment: The first two alternative licenses, as retrieved at Thu, 09 May 2013 00:00:38 +0300 are included at the end of this file. . On Debian GNU/Linux systems, the complete text of the LGPL 2.1 license can be found in `/usr/share/common-licenses/LGPL-2.1'. . Part of this file carries the following comment: . FYI: This is the "Super-Fast" algorithm mentioned by Bob Jenkins in (http://burtleburtle.net/bob/hash/doobs.html) It is by Paul Hsieh (c) 2004 and is analysed here http://www.azillionmonkeys.com/qed/hash.html license terms are here: http://www.azillionmonkeys.com/qed/weblicense.html . As of Thu, 09 May 2013 00:02:53 +0300, the "weblicense.html" document states: . Unless otherwise accompanied by another included license, the text and explicitly rendered exposition of all content under this website is covered by the Paul Hsieh exposition license. . For the specific coverage of raw source code (only) obtained from this website, you have the option of using the old-style BSD license to use the code instead of other the licenses. This option has been provided for people who can't figure out what I talking about with my derivative license, or who are using a old-style BSD compatible license. . Unless otherwise accompanied by another included license, derivative work by taking portions or ideas from the above mentioned exposition are covered by the Paul Hsieh derivative license. . Examples: Unless covered by another accompanying license, source code shown on my website can be used freely under the derivative license, (and may be distributed under a public domain license, whether compiled into another program or not, for example) however the font, comments, colors or any layout details associated to that source code in its exposition are covered by the exposition license. . The entire English text describing the code is also covered under the exposition license and thus cannot be copied at all outside the limits of fair use. . Images and graphics shown on this website are entirely covered by the exposition license. . If a proprietary vendor wishes to create a closed source object code based product using source covered by the derivative license they may do so. However if this vendor then wished to distribute the original source code, they may not apply any licensing terms which contradict the original derivative license covering the derivative code. . If your code is compatible with the old style BSD license and you wish to avoid the burden of explicitely protecting code you obtained from here from misrepresentation then you can simply cover it with the old-style BSD license. . It is therefore assumed that the relevant part of the Perl source is licensed under either the "Paul Hsieh derivative license" or the "the old-style BSD license", which have been included at the end of file with the codenames HSIEH-DERIVATIVE and HSIEH-BSD. . Additionally, the "hash.html" document has this statement for the relevant source code: . IMPORTANT NOTE: Since there has been a lot of interest for the code below, I have decided to additionally provide it under the LGPL 2.1 license. This provision applies to the code below only and not to any other code including other source archives or listings from this site unless otherwise specified. . The LGPL 2.1 is not necessarily a more liberal license than my derivative license, but this additional licensing makes the code available to more developers. Note that this does not give you multi-licensing rights. You can only use the code under one of the licenses at a time. . and links to the full LGPL 2.1 license terms at http://www.gnu.org/licenses/lgpl-2.1.txt Files: perly.h Copyright: Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc. License: GPL-3+-WITH-BISON-EXCEPTION Files: mkppport Copyright: Copyright 2006 by Marcus Holland-Moritz . License: GPL-1+ or Artistic This program is free software; you may redistribute it and/or modify it under the same terms as Perl itself. Files: lib/unicore/*.txt Copyright: Copyright (c) 1991-2012 Unicode, Inc. License: Unicode Comment: The license is given as . For terms of use, see http://www.unicode.org/terms_of_use.html . See the end of this file for the full text of this license as downloaded from the above URL on Tue, 26 Apr 2011 14:41:24 +0300. Files: lib/deprecate.pm Copyright: Copyright (C) 2009, 2011 License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.0 or, at your option, any later version of Perl 5 you may have available. Files: lib/Exporter.pm Copyright: unknown License: GPL-1+ or Artistic This library is free software. You can redistribute it and/or modify it under the same terms as Perl itself. Files: lib/FindBin.pm Copyright: Copyright (c) 1995 Graham Barr & Nick Ing-Simmons. All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: symbian/* Copyright: Copyright (c) Nokia 2004-2005. All rights reserved. License: GPL-1+ or Artistic All files are licensed under the same terms as Perl itself. Files: symbian/PerlUiS90.rss Copyright: Copyright (c) 2006 Alexander Smishlajev. All rights reserved. License: GPL-1+ or Artistic The PerlUi class is licensed under the same terms as Perl itself. Files: README.symbian Copyright: Copyright (c) 2004-2005 Nokia. All rights reserved. Copyright (c) 2006-2007 Jarkko Hietaniemi. License: GPL-1+ or Artistic The Symbian port is licensed under the same terms as Perl itself. Files: t/op/split_unicode.t Copyright: Copyright (c) 1991-2006 Unicode, Inc. License: GPL-1+ or Artistic, and Unicode The test data extracted from the Unicode Character Database. . It is assumed that the test code is licensed under the same terms as Perl. Files: regen/reentr.pl Copyright: Copyright (c) 2002,2003 Jarkko Hietaniemi License: GPL-1+ or Artistic You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the README file. Files: Porting/checkansi.pl Porting/valgrindpp.pl Copyright: Copyright 2003, 2007 by Marcus Holland-Moritz . License: GPL-1+ or Artistic This program is free software; you may redistribute it and/or modify it under the same terms as Perl itself. Files: Porting/config_h.pl Copyright: Copyright (C) 2005-2012 by H.Merijn Brand (m)'12 [22-09-2012] License: GPL-1+ or Artistic You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the README file. Files: Porting/git-deltatool Copyright: This software is copyright (c) 2010 by David Golden. License: GPL-1+ or Artistic This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. Files: NetWare/* Copyright: Copyright (C) 2000-01, 2002 Novell, Inc. All Rights Reserved. License: GPL-1+ or Artistic You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the README file. Files: vms/vms.c vms/vmsish.h Copyright: Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 by Charles Bailey and others. License: GPL-1+ or Artistic You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the README file. Files: x2p/s2p.PL Copyright: unknown License: S2P Files: win32/fcrypt.c Copyright: Copyright (C) 1993 Eric Young - see README for more details License: GPL-1+ or Artistic This file is a part of Perl itself, licensed as above. Files: cpan/Archive-Extract/* Copyright: unknown License: GPL-1+ or Artistic This library is free software; you may redistribute and/or modify it under the same terms as Perl itself. Files: cpan/Archive-Tar/* Copyright: 2002 - 2009 Jos Boumans . All rights reserved. License: GPL-1+ or Artistic This library is free software; you may redistribute and/or modify it under the same terms as Perl itself. Files: cpan/AutoLoader/* dist/SelfLoader/* Copyright: This package has the same copyright and license as the perl core: Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2011, 2012 by Larry Wall and others . All rights reserved. License: GPL-1+ or Artistic This package has the same copyright and license as the perl core. Files: cpan/autodie/* Copyright: 2008-2009, Paul Fenwick License: GPL-1+ or Artistic This module is free software, you may distribute it under the same terms as Perl itself. Files: cpan/autodie/lib/autodie/exception/system.pm cpan/autodie/lib/autodie/exception.pm Copyright: 2008-2009, Paul Fenwick License: GPL-1+ or Artistic This is free software. You may modify and/or redistribute this code under the same terms as Perl 5.10 itself, or, at your option, any later version of Perl 5. Files: cpan/B-Debug/* Copyright: Copyright (c) 1996, 1997 Malcolm Beattie Copyright (c) 2008, 2010 Reini Urban License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the terms of either: . a) the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version, or . b) the "Artistic License" which comes with this kit. Files: cpan/CGI/* Copyright: 1995-2000 Lincoln D. Stein. All rights reserved. License: GPL-1+ or Artistic-2 Files: cpan/CGI/lib/CGI/Carp.pm cpan/CGI/lib/CGI/Cookie.pm cpan/CGI/lib/CGI/Fast.pm cpan/CGI/lib/CGI/Pretty.pm cpan/CGI/lib/CGI/Push.pm cpan/CGI/lib/CGI/Util.pm Copyright: 1995-2000 Lincoln D. Stein. All rights reserved. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/CGI/lib/CGI.pm cpan/CGI/lib/CGI/Cookie.pm cpan/CGI/lib/CGI/Fast.pm cpan/CGI/lib/CGI/Push.pm Copyright: 1995-2000 Lincoln D. Stein. All rights reserved. License: GPL-1+ or Artistic These files are part of the CGI.pm distribution, licensed as above. Comment: These files also include the comment below. As the restrictions are already covered by the terms of both the GPL and the Artistic licenses, it is assumed that this does not change the license in any way. . # It may be used and modified freely, but I do request that this copyright # notice remain attached to the file. You may modify this module as you # wish, but if you redistribute a modified version, please attach a note # listing the modifications you have made. Files: cpan/Compress-Raw-Bzip2/* Copyright: Copyright (c) 2005-2013 Paul Marquess. All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Compress-Raw-Bzip2/bzip2-src/* Copyright: Copyright(C) 1996-2010 Julian Seward. All rights reserved Comment: cpan/Compress-Raw-Bzip2/bzip2-src/README states: Note that the files bzip2.c, bzip2recover.c, bzlib.c & decompress.c have been modified to allow them to build with a C++ compiler. The file bzip2-src/bzip2-cpp.patch contains the patch that was used to modify the original source. but the patch has apparently been filtered out when including the software into the Perl core distribution. License: BZIP Files: cpan/Compress-Raw-Zlib/* Copyright: Copyright (c) 2005-2013 Paul Marquess. All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Compress-Raw-Zlib/zlib-src/* Copyright: Copyright (C) 1995-2012 Jean-loup Gailly and Mark Adler License: ZLIB Files: cpan/Config-Perl-V/* Copyright: Copyright (C) 2009-2013 H.Merijn Brand License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/CPAN/* Copyright: unknown License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/CPAN/lib/App/Cpan.pm cpan/CPAN/scripts/cpan Copyright: (c) 2001-2013, brian d foy, All Rights Reserved. License: GPL-1+ or Artistic You may redistribute this under the same terms as Perl itself. Files: cpan/CPAN-Meta/* Copyright: This software is copyright (c) 2010 by David Golden and Ricardo Signes. License: GPL-1+ or Artistic This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. Files: cpan/CPAN-Meta-Requirements/* Copyright: This software is copyright (c) 2010 by David Golden and Ricardo Signes. License: GPL-1+ or Artistic This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. Files: cpan/CPAN-Meta-YAML/* Copyright: This software is copyright (c) 2010 by Adam Kennedy. License: GPL-1+ or Artistic This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. Files: cpan/CPANPLUS/* Copyright: The CPAN++ interface (of which this module is a part of) is copyright (c) 2001 - 2007, Jos Boumans . All rights reserved. License: GPL-1+ or Artistic This library is free software; you may redistribute and/or modify it under the same terms as Perl itself. Files: cpan/CPANPLUS/lib/CPANPLUS/Config/HomeEnv.pm Copyright: Copyright © Chris Williams and Jos Boumans. License: GPL-1+ or Artistic This module may be used, modified, and distributed under the same terms as Perl itself. Please see the license that came with your Perl distribution for details. Files: cpan/cpan/CPANPLUS-Dist-Build/* Copyright: The CPAN++ interface (of which this module is a part of) is copyright (c) 2001, 2002, 2003, 2004, 2005 Jos Boumans . All rights reserved. License: GPL-1+ or Artistic This library is free software; you may redistribute and/or modify it under the same terms as Perl itself. Files: cpan/DB_File/* Copyright: Copyright (c) 1995-2012 Paul Marquess. All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Devel-DProf/* Copyright: unknown License: GPL-1+ or Artistic There are no copyright or license notices in this distribution. It is assumed that the copyright and license of Perl itself applies here as well. . This is supported by the README of the separate CPAN distribution at , which states: . This software is copyright (c) 2011 by The Perl 5 Porters. . This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. Files: cpan/Devel-PPPort/* Copyright: Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz. Version 2.x, Copyright (C) 2001, Paul Marquess. Version 1.x, Copyright (C) 1999, Kenneth Albanowski. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Digest/* Copyright: Copyright 1998-2006 Gisle Aas. Copyright 1995,1996 Neil Winton. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Digest-MD5/* Copyright: Copyright 1998-2003 Gisle Aas. Copyright 1995-1996 Neil Winton. Copyright 1990-1992 RSA Data Security, Inc. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Digest-SHA/* Copyright: Copyright (C) 2003-2013 Mark Shelor, All Rights Reserved License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Encode/* Copyright: Copyright 2002-2012 Dan Kogai License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/encoding-warnings/* Copyright: Copyright 2004, 2005, 2006, 2007 by Audrey Tang . License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/ExtUtils-Constant/* Copyright: unknown License: GPL-1+ or Artistic There are no copyright or license notices in this distribution. It is assumed that the copyright and license of Perl itself applies here as well. . This is supported by the README of the separate CPAN distribution at , which states: . You may distribute this work under the terms of either the GNU General Public License or the Artistic License, as specified in perl's README file. . Copyright © 2001, 2002, 2005 Nicholas Clark Files: cpan/File-Fetch/* cpan/IPC-Cmd/* cpan/Module-Load/* cpan/Module-Load-Conditional/* cpan/Module-Loaded/* cpan/Object-Accessor/* cpan/Package-Constants/* cpan/Params-Check/* Copyright: There are no copyright notices in these distributions. Their author is Jos Boumans . License: GPL-1+ or Artistic This library is free software; you may redistribute and/or modify it under the same terms as Perl itself. Files: cpan/File-Path/* Copyright: This module is copyright (C) Charles Bailey, Tim Bunce and David Landgren 1995-2013. All rights reserved. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/File-Temp/* Copyright: Copyright (C) 2007-2009 Tim Jenness. Copyright (C) 1999-2007 Tim Jenness and the UK Particle Physics and Astronomy Research Council. All Rights Reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Filter-Util-Call/* Copyright: Copyright (c) 1995-2011 Paul Marquess. All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Getopt-Long/* Copyright: Module Getopt::Long is Copyright 1990,2009-2010 by Johan Vromans. License: GPL-2+ or Artistic This program is free software; you can redistribute it and/or modify it under the terms of the Perl Artistic License or the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Files: cpan/HTTP-Tiny/* Copyright: This software is copyright (c) 2011 by Christian Hansen. License: GPL-1+ or Artistic This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. Files: cpan/IO-Compress/* Copyright: Copyright (c) 1995-2013 Paul Marquess. All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/IO-Zlib/* Copyright: Copyright (c) 1998-2004 Tom Hughes . All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/IPC-SysV/* Copyright: Version 2.x, Copyright (C) 2007-2010, Marcus Holland-Moritz. Version 1.x, Copyright (c) 1997, Graham Barr. Version 1.x, Copyright (c) 1999, Graham Barr. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/JSON-PP/* Copyright: Copyright 2007-2013 by Makamaka Hannyaharamitu License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/libnet/* Copyright: (C) 1995-2007 Graham Barr. All rights reserved. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/List-Util/* Copyright: Copyright (c) 1997-2009 Graham Barr . All rights reserved. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/List-Util/lib/Scalar/Util.pm Copyright: Copyright (c) 1997-2007 Graham Barr . All rights reserved. Copyright (c) 1999 Tuomas J. Lukka . All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Locale-Codes/* Copyright: Copyright (C) 1997-2001 Canon Research Centre Europe (CRE). Copyright (C) 2001-2010 Neil Bowers Copyright (c) 1996-2013 Sullivan Beck Copyright (c) 2001 Michael Hennecke License: GPL-1+ or Artistic This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Locale-Maketext-Simple/* Copyright: Copyright 2003, 2004, 2005, 2006 by Audrey Tang License: Expat or GPL-1+ or Artistic This software is released under the MIT license cited below. Additionally, when this software is distributed with Perl Kit, Version 5, you may also redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Locale-Maketext-Simple/t/po_with_i_default/i_default.po cpan/Locale-Maketext-Simple/t/po_with_i_default/fr.po cpan/Locale-Maketext-Simple/t/po_with_i_default/en.po cpan/Locale-Maketext-Simple/t/po_without_i_default/en.po cpan/Locale-Maketext-Simple/t/po_without_i_default/fr.po Copyright: Copyright (C) All Perl Hackers everywhere Ton Voon , 2009. License: Expat or GPL-1+ or Artistic It is assumed that these translations are licensed under the same terms as the rest of the Locale-Maketext-Simple distribution. Files: cpan/Log-Message/* Copyright: This module is copyright (c) 2002 Jos Boumans . All rights reserved. License: GPL-1+ or Artistic This library is free software; you may redistribute and/or modify it under the same terms as Perl itself. Files: cpan/Log-Message-Simple/* Copyright: unknown License: GPL-1+ or Artistic There are no copyright or license notices in this distribution. It is assumed that the copyright and license of Perl itself applies here as well. . This is supported by the README of the separate CPAN distribution at , which states: . This module is copyright (c) 2002 Jos Boumans . All rights reserved. . This library is free software; you may redistribute and/or modify it under the same terms as Perl itself. Files: cpan/Math-Complex/* Copyright: unknown License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Memoize/* Copyright: Copyright 1998, 1999, 2000, 2001, 2012 M-J. Dominus. License: GPL-1+ or Artistic This library is free software; you may redistribute it and/or modify it under the same terms as Perl itself. . You may copy and distribute this program under the same terms as Perl itself. If in doubt, write to mjd-perl-memoize+@plover.com for a license. Files: cpan/MIME-Base64/* Copyright: Copyright 1995-2004,2010 Gisle Aas License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/MIME-Base64/Base64.xs Copyright: Copyright 1997-2004 Gisle Aas Copyright (c) 1991 Bell Communications Research, Inc. (Bellcore) License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. . The tables and some of the code that used to be here was borrowed from metamail, which comes with this message: . Copyright (c) 1991 Bell Communications Research, Inc. (Bellcore) . Permission to use, copy, modify, and distribute this material for any purpose and without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies, and that the name of Bellcore not be used in advertising or publicity pertaining to this material without the specific, prior written permission of an authorized representative of Bellcore. BELLCORE MAKES NO REPRESENTATIONS ABOUT THE ACCURACY OR SUITABILITY OF THIS MATERIAL FOR ANY PURPOSE. IT IS PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES. Files: cpan/Module-Build/* Copyright: Copyright (c) 1999, 2001-2008 Ken Williams. All rights reserved. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Module-Build/lib/inc/latest.pm Copyright: Copyright (c) 2009 by Eric Wilhelm and David Golden License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Module-Build/t/README.pod Copyright: This documentation is Copyright (C) 2009 by David Golden. License: GPL-1+ or Artistic You can redistribute it and/or modify it under the same terms as Perl 5.10.0. Files: cpan/Module-Build/t/bundled/Tie/CPHash.pm Copyright: Copyright 1997 Christopher J. Madsen License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Module-Metadata/* Copyright: Copyright (c) 2001-2011 Ken Williams. All rights reserved. Copyright (c) 2010-2011 Matt Trout and David Golden. All rights reserved. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Module-Pluggable/* Copyright: 2005-2006 Simon Wistow License: GPL-1+ or Artistic Distributed under the same terms as Perl itself. Files: cpan/NEXT/* Copyright: Copyright (c) 2000-2001, Damian Conway. All Rights Reserved. License: GPL-1+ or Artistic This module is free software. It may be used, redistributed and/or modified under the same terms as Perl itself. Files: cpan/parent/* Copyright: Copyright (c) 2007-10 Max Maischein License: GPL-1+ or Artistic This module is released under the same terms as Perl itself. Files: cpan/Parse-CPAN-Meta/* Copyright: Copyright 2006 - 2010 Adam Kennedy. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/PerlIO-via-QuotedPrint/* Copyright: Copyright (c) 2002-2004,2012 Elizabeth Mattijsen. All rights reserved. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Perl-OSType/* Copyright: This software is copyright (c) 2013 by David Golden. License: GPL-1+ or Artistic This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. Files: cpan/Pod-Checker/* Copyright: Copyright (C) 1994-2000 by Bradford Appleton. All rights reserved. License: GPL-1+ or Artistic This file is part of "PodParser". PodParser is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Pod-Escapes/* Copyright: Copyright (c) 2001-2004 Sean M. Burke. All rights reserved. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Pod-LaTex/* Copyright: Copyright (C) 2011 Tim Jenness. Copyright (C) 2000-2004 Tim Jenness. All Rights Reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/podlators/* Copyright: Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012, 2013 Russ Allbery Substantial contributions by Sean Burke License: GPL-1+ or Artistic This program is free software; you may redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/podlators/lib/Pod/Text/Overstrike.pm Copyright: Copyright 2000 Joe Smith . Copyright 2001, 2004, 2008 Russ Allbery . License: GPL-1+ or Artistic This program is free software; you may redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Pod-Parser/* Copyright: Copyright (C) 1996-2000 by Bradford Appleton. All rights reserved. License: GPL-1+ or Artistic PodParser is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Pod-Parser/lib/Pod/PlainText.pm Copyright: Copyright 1999-2000 by Russ Allbery License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Pod-Parser/lib/Pod/ParseUtils.pm Copyright: Copyright (C) 1999-2000 by Marek Rouchal. All rights reserved. License: GPL-1+ or Artistic This file is part of "PodParser". PodParser is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Pod-Parser/t/pod/contains_pod.t Copyright: Copyright (C) 2005 Joshua Hoblitt License: GPL-1+ or Artistic This file has no explicit license notice, but it is assumed that it is licensed under the same terms as the rest of the distribution. Files: cpan/Pod-Simple/* Copyright: Copyright (c) 2002-2004 Sean M. Burke. All rights reserved. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Pod-Simple/lib/Pod/Simple/XHTML.pm Copyright: Copyright (c) 2003-2005 Allison Randal. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Pod-Simple/t/perlfaq.pod cpan/Pod-Simple/t/perlfaqo.txt Copyright: Copyright (c) 1997-1999 Tom Christiansen and Nathan Torkington. All rights reserved. License: GPL-1+ or Artistic This document is part of the perlfaq distribution. A newer version of it is also included in pod/perlfaq3.pod. . The license notice in the document is: . When included as an integrated part of the Standard Distribution of Perl or of its documentation (printed or otherwise), this works is covered under Perl's Artistic License. For separate distributions of all or part of this FAQ outside of that, see L. . Irrespective of its distribution, all code examples here are in the public domain. You are permitted and encouraged to use this code and any derivatives thereof in your own programs for fun or for profit as you see fit. A simple comment in the code giving credit to the FAQ would be courteous but is not required. . The corresponding license in pod/perlfaq.pod is: . This document is available under the same terms as Perl itself. Code examples in all the perlfaq documents are in the public domain. Use them as you see fit (and at your own risk with no warranty from anyone). Files: cpan/Pod-Usage/* Copyright: Copyright (C) 1996-2000 by Bradford Appleton. All rights reserved. License: GPL-1+ or Artistic This file is part of "PodParser". PodParser is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Shell/* Copyright: unknown License: GPL-1+ or Artistic There are no copyright or license notices in this distribution. It is assumed that the copyright and license of Perl itself applies here as well. . This is supported by the README of the separate CPAN distribution at , which states: . Copyright (C) 2005 by Perl 5 Porters . This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Sys-Syslog/* Copyright: Copyright (C) 1990-2012 by Larry Wall and others. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Sys-Syslog/fallback/syslog.h Copyright: Copyright (c) 1982, 1986, 1988, 1993 The Regents of the University of California. All rights reserved. License: BSD-4-clause Files: cpan/Term-ANSIColor/* Copyright: Copyright 1996 Zenin Copyright 1996, 1997, 1998, 2000, 2001, 2002, 2005, 2006, 2008, 2009, 2010, 2011, 2012, 2013 Russ Allbery Copyright 2012 Kurt Starsinic License: GPL-1+ or Artistic This program is free software; you may redistribute it and/or modify it under the same terms as Perl itself. This means that you may choose between the two licenses that Perl is released under: the GNU GPL and the Artistic License. Please see your Perl distribution for the details and copies of the licenses. Files: cpan/Term-ANSIColor/t/stringify.t Copyright: Copyright 2011 Revilo Reegiles Copyright 2011 Russ Allbery License: GPL-1+ or Artistic This program is free software; you may redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Term-Cap/* Copyright: unknown License: GPL-1+ or Artistic There are no copyright or license notices included. The file cpan/Term-Cap/Cap.pm refers to a README file, but that has apparently been filtered out when bundling the software into the Perl core distribution. . The referenced README file is available at , and it states: . Copyright 1995-2007 (c) perl5 porters. . This software is free software and can be modified and distributed under the same terms as Perl itself. Files: cpan/Term-UI/* Copyright: This module is copyright (c) 2005 Jos Boumans Ekane@cpan.orgE. All rights reserved. License: GPL-1+ or Artistic This library is free software; you may redistribute and/or modify it under the same terms as Perl itself. Files: cpan/Test/* Copyright: Copyright (c) 1998-2000 Joshua Nathaniel Pritikin. Copyright (c) 2001-2002 Michael G. Schwern. Copyright (c) 2002-2004 Sean M. Burke. License: GPL-1+ or Artistic This package is free software and is provided "as is" without express or implied warranty. It may be used, redistributed and/or modified under the same terms as Perl itself. Files: cpan/Test-Harness/* Copyright: Copyright (c) 2007-2011, Andy Armstrong . All rights reserved. License: GPL-1+ or Artistic This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Test-Harness/lib/TAP/Parser.pm Copyright: Copyright 2006-2008 Curtis "Ovid" Poe, all rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Test-Harness/lib/TAP/Parser/YAMLish/Reader.pm Copyright: Copyright 2007-2011 Andy Armstrong. Portions copyright 2006-2008 Adam Kennedy. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Test-Simple/* Copyright: Copyright 2001-2008 by Michael G Schwern . License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Test-Simple/lib/Test/Builder.pm Copyright: Copyright 2002-2008 by chromatic and Michael G Schwern E. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Test-Simple/lib/Test/Builder/Tester/Color.pm Copyright: Copyright Mark Fowler 2002. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Test-Simple/lib/Test/Builder/Tester.pm Copyright: Copyright Mark Fowler 2002, 2004. . Some code taken from Test::More and Test::Catch, written by by Michael G Schwern . Hence, those parts Copyright Micheal G Schwern 2001. Used and distributed with permission. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Test-Simple/lib/Test/Tutorial.pod Copyright: Copyright 2001 by Michael G Schwern . License: GPL-1+ or Artistic This documentation is free; you can redistribute it and/or modify it under the same terms as Perl itself. . Irrespective of its distribution, all code examples in these files are hereby placed into the public domain. You are permitted and encouraged to use this code in your own programs for fun or for profit as you see fit. A simple comment in the code giving credit would be courteous but is not required. Files: cpan/Text-Balanced/* Copyright: Copyright 1997 - 2001 Damian Conway. All Rights Reserved. Some (minor) parts copyright 2009 Adam Kennedy. License: GPL-1+ or Artistic This module is free software. It may be used, redistributed and/or modified under the same terms as Perl itself. Files: cpan/Text-ParseWords/* Copyright: unknown License: GPL-1+ or Artistic There are no copyright notices or license information in this distribution. It is assumed that the software is licensed under the same terms as Perl itself. This is supported by the Makefile.PL file of the separate CPAN distribution at . Files: cpan/Text-Soundex/* Copyright: (c) Copyright 1998-2007 by Mark Mielke License: TEXT-SOUNDEX Files: cpan/Text-Tabs/* Copyright: Copyright (C) 1996-2009 David Muir Sharnoff. Copyright (C) 2005 Aristotle Pagaltzis Copyright (C) 2012 Google, Inc. License: TEXT-TABS Files: cpan/Tie-File/* Copyright: Tie::File version 0.97 is copyright (C) 2003 Mark Jason Dominus. License: GPL-2+ or Artistic This library is free software; you may redistribute it and/or modify it under the same terms as Perl itself. . These terms are your choice of any of (1) the Perl Artistic Licence, or (2) version 2 of the GNU General Public License as published by the Free Software Foundation, or (3) any later version of the GNU General Public License. Files: cpan/Tie-RefHash/* cpan/Win32API-File/* dist/bignum/* dist/ExtUtils-Install/* dist/Math-BigInt/* dist/Math-BigInt-FastCalc/* dist/Math-BigRat/* dist/Thread-Queue/* Copyright: unknown License: GPL-1+ or Artistic This program is free software; you may redistribute it and/or modify it under the same terms as Perl itself. Comment: These distributions include no copyright notices but have the same explicit licensing information. Files: cpan/Time-HiRes/* Copyright: Copyright (c) 1996-2002 Douglas E. Wegscheid. All rights reserved. Copyright (c) 2002-2010 Jarkko Hietaniemi. Copyright (c) 2011, 2012 Andrew Main (Zefram) All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Time-Local/* Copyright: Copyright (c) 1997-2003 Graham Barr, 2003-2007 David Rolsky. All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Time-Piece/* Copyright: unknown License: GPL-1+ or Artistic This module is free software, you may distribute it under the same terms as Perl. Files: cpan/Time-Piece/Piece.xs Copyright: strptime copied from freebsd with the following copyright: Copyright (c) 1994 Powerdog Industries. All rights reserved. License: GPL-1+ or Artistic, and BSD-4-clause-POWERDOG Comment: The strptime function is licensed under the BSD-like license included below. It is assumed that the other parts are licensed under the same terms as the rest of the distribution. Files: cpan/Unicode-Collate/* Copyright: This module is Copyright(C) 2001-2012, SADAHIRO Tomoyuki. Japan. All rights reserved. License: GPL-1+ or Artistic This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Unicode-Collate/Collate/allkeys.txt Copyright: Copyright (c) 2001-2012 Unicode, Inc. License: Unicode For terms of use, see http://www.unicode.org/terms_of_use.html Comment: See below for the full text of this license as downloaded from the above URL on Tue, 26 Apr 2011 14:41:24 +0300. Files: cpan/Unicode-Normalize/* Copyright: Copyright(C) 2001-2012, SADAHIRO Tomoyuki. Japan. All rights reserved. License: GPL-1+ or Artistic This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: cpan/Win32/* Copyright: unknown License: GPL-1+ or Artistic There are no copyright notices or license information in this distribution. It is assumed that the software is licensed under the same terms as Perl itself. This is supported by the META.yml file of the separate CPAN distribution at Files: dist/Attribute-Handlers/* Copyright: Copyright (c) 2001-2009, Damian Conway. All Rights Reserved. License: GPL-1+ or Artistic This module is free software. It may be used, redistributed and/or modified under the same terms as Perl itself. Files: dist/autouse/* dist/base/* dist/B-Lint/* dist/constant/* dist/Devel-SelfStubber/* dist/Dumpvalue/* dist/Env/* dist/ExtUtils-Command/* dist/ExtUtils-Manifest/* dist/File-Checktree/* dist/I18N-Collate/* dist/if/* dist/Safe/* ext/Fcntl/* ext/FileCache/* ext/GDBM_File/* ext/IPC-Open2/* ext/IPC-Open3/* ext/NDBM_File/* ext/ODBM_File/* ext/Opcode/* ext/PerlIO-encoding/* ext/PerlIO-scalar/* ext/PerlIO-via/* ext/POSIX/* ext/re/* ext/Socket/* ext/Sys-Hostname/* ext/Tie-Hash-NamedCapture/* ext/Tie-Memoize/* ext/VMS-DCLsym/* ext/VMS-Stdio/* Copyright: unknown License: GPL-1+ or Artistic There is no copyright or license information in these distributions. It is assumed that they are licensed under the same terms as Perl itself. Files: dist/B-Deparse/* Copyright: Copyright (c) 1998-2000, 2002, 2003, 2004, 2005, 2006 Stephen McCamant. All rights reserved. License: GPL-1+ or Artistic This module is free software; you can redistribute and/or modify it under the same terms as Perl itself. Files: dist/Carp/* Copyright: Copyright (c) 1994-2012 Larry Wall Copyright (c) 2011, 2012 Andrew Main (Zefram) License: GPL-1+ or Artistic This module is free software. It may be used, redistributed and/or modified under the same terms as Perl itself. Files: dist/Cwd/* Copyright: Copyright (c) 2004 by the Perl 5 Porters. All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: dist/Cwd/Cwd.xs Copyright: Copyright (c) 2004 by the Perl 5 Porters. All rights reserved. Copyright (c) 2003 Constantin S. Svintsoff License: GPL-1+ or Artistic, and BSD-3-clause-GENERIC Comment: The main license applies to most of the code: . This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. . but portions of it have been taken from a BSD variant and are licensed under the terms of the "BSD-3-clause-GENERIC" license included in this file. . dist/Cwd/Cwd.pm states: . Portions of the C code in this library are copyright (c) 1994 by the Regents of the University of California. All rights reserved. The license on this code is compatible with the licensing of the rest of the distribution - please see the source code in F for the details. . but, as discussed in http://rt.cpan.org/Public/Bug/Display.html?id=64116 this is outdated and dist/Cwd/Cwd.xs itself contains the correct information. Files: dist/Data-Dumper/* Copyright: Copyright (c) 1996-98 Gurusamy Sarathy. All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: dist/ExtUtils-CBuilder/* Copyright: Copyright (c) 2003-2005 Ken Williams. All rights reserved. Copyright (c) 2012 Ken Williams. All rights reserved. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: dist/ExtUtils-ParseXS/* Copyright: Copyright 2002-2012 by Ken Williams, David Golden and other contributors. All rights reserved. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. . Based on the ExtUtils::xsubpp code by Larry Wall and the Perl 5 Porters, which was released under the same license terms. Files: dist/Filter-Simple/* Copyright: Copyright (c) 2000-2008, Damian Conway. All Rights Reserved. License: GPL-1+ or Artistic This module is free software. It may be used, redistributed and/or modified under the same terms as Perl itself. Files: dist/I18N-LangTags/* Copyright: Copyright 1998+, Sean M. Burke , all rights reserved. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: dist/I18N-LangTags/lib/I18N/LangTags/List.pm Copyright: Copyright (c) 2001+ Sean M. Burke. All rights reserved. License: GPL-1+ or Artistic You can redistribute and/or modify this document under the same terms as Perl itself. Files: dist/IO/* Copyright: Copyright (c) 1996-2003 Graham Barr . All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: dist/IO/lib/IO/Socket.pm Copyright: Copyright (c) 1997-8 Graham Barr . All rights reserved. Copyright 2001, Lincoln Stein . License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. . The atmark() implementation: Copyright 2001, Lincoln Stein . This module is distributed under the same terms as Perl itself. Feel free to use, modify and redistribute it as long as you retain the correct attribution. Files: dist/lib/* Copyright: as above for 'Files: *' License: GPL-1+ or Artistic This package has the same copyright and license as the perl core. Files: dist/Locale-Maketext/* Copyright: Copyright 1999-2004, Sean M. Burke , all rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: dist/Locale-Maketext/lib/Locale/Maketext/TPJ13.pod Copyright: 1999 The Perl Journal. License: GPL-1+ or Artistic This document may be distributed under the same terms as Perl itself. Files: dist/Module-CoreList/* Copyright: Copyright (C) 2002-2009 Richard Clamp. All Rights Reserved. License: GPL-1+ or Artistic This program is free software; you may redistribute it and/or modify it under the same terms as Perl itself. Files: dist/Module-CoreList/corelist Copyright: Copyright (c) 2002-2007 by D.H. aka PodMaster License: GPL-1+ or Artistic This program is distributed under the same terms as perl itself. Files: dist/Module-CoreList/lib/Module/CoreList/Utils.pm Copyright: Copyright (C) 2013 Chris Williams. All Rights Reserved. License: GPL-1+ or Artistic This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: dist/Net-Ping/* Copyright: Copyright (c) 2002-2003, Rob Brown. All rights reserved. Copyright (c) 2001, Colin McMillen. All rights reserved. License: GPL-1+ or Artistic This program is free software; you may redistribute it and/or modify it under the same terms as Perl itself. Files: dist/Pod-Perldoc/* Copyright: Copyright (c) 2002-2007 Sean M. Burke. Copyright (c) 2011 Mark Allen. All rights reserved. Copyright (c) 2011 brian d foy. All rights reserved. Copyright (c) 2011 Mark Allen. License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: dist/Storable/* Copyright: Copyright (c) 1995-2000, Raphael Manfredi Copyright (c) 2001-2004, Larry Wall License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl 5 itself. Files: dist/Storable/t/forgive.t Copyright: Copyright (c) 1995-2000, Raphael Manfredi (C) Copyright 1997, Universitat Dortmund, all rights reserved. License: GPL-1+ or Artistic You may redistribute only under the same terms as Perl 5, as specified in the README file that comes with the distribution. Files: dist/Storable/t/attach_errors.t dist/Storable/t/attach_singleton.t dist/Storable/t/circular_hook.t Copyright: Copyright 2005, Adam Kennedy. License: GPL-1+ or Artistic You may redistribute only under the same terms as Perl 5, as specified in the README file that comes with the distribution. Files: dist/Storable/t/code.t dist/Storable/t/sig_die.t Copyright: Copyright (c) 2002 Slaven Rezic License: GPL-1+ or Artistic You may redistribute only under the same terms as Perl 5, as specified in the README file that comes with the distribution. Files: dist/threads/* Copyright: unknown License: GPL-1+ or Artistic threads is released under the same license as Perl. Files: dist/threads-shared/* Copyright: unknown License: GPL-1+ or Artistic threads::shared is released under the same license as Perl. Files: dist/threads-shared/shared.xs Copyright: Copyright (c) 2001-2002, 2006 Larry Wall License: GPL-1+ or Artistic You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the README file. Files: dist/XSLoader/* Copyright: Copyright (C) 1990-2011 by Larry Wall and others. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: ext/attributes/* Copyright: Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 by Larry Wall and others License: GPL-1+ or Artistic You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the README file. Files: ext/B/* Copyright: Copyright (c) 1996, 1997, 1998 Malcolm Beattie License: GPL-1+ or Artistic You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the README file. Files: ext/B/B/Concise.pm Copyright: Copyright (C) 2000-2003 Stephen McCamant. All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute and/or modify it under the same terms as Perl itself. Files: ext/Devel-Peek/* Copyright: Copyright (c) 1995-98 Ilya Zakharevich. All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: ext/DynaLoader/* Copyright: unknown License: GPL-1+ or Artistic There is no license information included that clearly applies to the whole of this distribution. It is assumed that it is licensed under the same terms as Perl itself. Files: ext/DynaLoader/dl_aix.xs Copyright: This is an unpublished work copyright (c) 1992 Helios Software GmbH 3000 Hannover 1, Germany License: GPL-1+ or Artistic It is assumed that this file is licensed under the same terms as Perl itself. Files: ext/DynaLoader/dl_dld.xs Copyright: based upon the file "dl.c", which is Copyright (c) 1994, Larry Wall License: GPL-1+ or Artistic You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the README file. Files: ext/DynaLoader/dl_symbian.xs Copyright: 2004, Nokia License: GPL-1+ or Artistic The license in the file is specified as . License: Artistic/GPL Files: ext/Errno/* Copyright: Copyright (c) 1997-8 Graham Barr. All rights reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: ext/File-Glob/* Copyright: unknown License: Artistic The Perl interface was written by Nathan Torkington , and is released under the artistic license. Further modifications were made by Greg Bacon , Gurusamy Sarathy , and Thomas Wegner . Files: ext/File-Glob/bsd_glob.c ext/File-Glob/bsd_glob.h Copyright: Copyright (c) 1989, 1993 The Regents of the University of California. All rights reserved. . This code is derived from software contributed to Berkeley by Guido van Rossum. License: BSD-3-clause Files: ext/Hash-Util/* Copyright: unknown License: GPL-1+ or Artistic There is no license information in this distribution. It is assumed that it is licensed under the same terms as Perl itself. Files: ext/Hash-Util/lib/Hash/Util.pm Copyright: hv_store() is from Array::RefElem, Copyright 2000 Gisle Aas. License: GPL-1+ or Artistic As above, it is assumed that this file is licensed under the same terms as Perl itself. Comment: The copyright and license information of Array::RefElem, as fetched from , is as follows: . Copyright 2000 Gisle Aas . This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: ext/Hash-Util-FieldHash/* Copyright: Copyright (C) 2006-2007 by (Anno Siegel) License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.7 or, at your option, any later version of Perl 5 you may have available. Files: ext/I18N-Langinfo/* Copyright: Copyright 2001 by Jarkko Hietaniemi License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: ext/mro/* Copyright: Copyright (c) 2007 Brandon L Black Copyright (c) 2008,2009 Larry Wall and others License: GPL-1+ or Artistic You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the README file. Files: ext/Pod-Html/* Copyright: unknown License: Artistic This program is distributed under the Artistic License. Files: ext/SDBM_File/* Copyright: unknown License: GPL-1+ or Artistic There is no copyright or license information in this distribution. It is assumed that it is licensed under the same terms as Perl itself. Files: ext/SDBM_File/sdbm/* Copyright: none License: SDBM-PUBLIC-DOMAIN Files: ext/Win32CORE/* Copyright: Copyright (C) 2007 by Larry Wall and others License: GPL-1+ or Artistic You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the README file. Files: ext/XS-APItest/* Copyright: Copyright (C) 2002,2004 Tim Jenness, Christian Soeller, Hugo van der Sanden. All Rights Reserved. . Copyright (C) 2009 Andrew Main (Zefram) License: GPL-1+ or Artistic This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: ext/XS-Typemap/* Copyright: Copyright (C) 2001 Tim Jenness All Rights Reserved. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: pod/perldebtut.pod pod/perlperf.pod Copyright: Richard Foley Copyright (c) 2000 License: GPL-1+ or Artistic These files are a part of Perl itself, licensed as above. Files: pod/perlembed.pod Copyright: Copyright (C) 1995, 1996, 1997, 1998 Doug MacEachern and Jon Orwant. All Rights Reserved. License: GPL-1+ or Artistic This document may be distributed under the same terms as Perl itself. Files: pod/perlexperiment.pod Copyright: Copyright 2010, brian d foy License: GPL-1+ or Artistic You can use and redistribute this document under the same terms as Perl itself. Files: pod/perlfaq*.pod pod/perlopentut.pod pod/perltooc.pod Copyright: Copyright (c) 1997-2010 Tom Christiansen, Nathan Torkington, and other authors as noted. All rights reserved. License: GPL-1+ or Artistic This documentation is free; you can redistribute it and/or modify it under the same terms as Perl itself. . Irrespective of its distribution, all code examples here are in the public domain. You are permitted and encouraged to use this code and any derivatives thereof in your own programs for fun or for profit as you see fit. A simple comment in the code giving credit to the FAQ would be courteous but is not required. Files: pod/perlfaq.pod Copyright: Tom Christiansen wrote the original version of this document. brian d foy wrote this version. See the individual perlfaq documents for additional copyright information. License: GPL-1+ or Artistic This document is available under the same terms as Perl itself. Code examples in all the perlfaq documents are in the public domain. Use them as you see fit (and at your own risk with no warranty from anyone). Files: pod/perlfilter.pod pod/perlthrtut.pod Copyright: copyright 1998 The Perl Journal License: GPL-1+ or Artistic This document may be distributed under the same terms as Perl itself. Files: pod/perlglossary.pod Copyright: Based on the Glossary of I, Fourth Edition, by Tom Christiansen, brian d foy, Larry Wall, & Jon Orwant. Copyright (c) 2000, 1996, 1991, 2012 O'Reilly Media, Inc. License: GPL-1+ or Artistic This document may be distributed under the same terms as Perl itself. Files: pod/perlmodinstall.pod Copyright: Copyright (C) 1998, 2002, 2003 Jon Orwant. All Rights Reserved. License: GPL-1+ or Artistic This document may be distributed under the same terms as Perl itself. Files: pod/perlopentut.pod pod/perltooc.pod pod/perltoot.pod Copyright: Copyright 1997-1999 Tom Christiansen. License: GPL-1+ or Artistic This documentation is free; you can redistribute it and/or modify it under the same terms as Perl itself. . Irrespective of its distribution, all code examples in these files are hereby placed into the public domain. You are permitted and encouraged to use this code in your own programs for fun or for profit as you see fit. A simple comment in the code giving credit would be courteous but is not required. Files: pod/perlpodstyle.pod Copyright: Copyright 1999, 2000, 2001, 2004, 2006, 2008, 2010 Russ Allbery . License: GPL-1+ or Artistic This documentation is free software; you may redistribute it and/or modify it under the same terms as Perl itself. Files: pod/perlreapi.pod Copyright: Copyright 2006 Yves Orton and 2007 Ævar Arnfjörð Bjarmason. License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: pod/perlreftut.pod Copyright: Copyright 1998 The Perl Journal. License: GPL-1+ or Artistic This documentation is free; you can redistribute it and/or modify it under the same terms as Perl itself. . Irrespective of its distribution, all code examples in these files are hereby placed into the public domain. You are permitted and encouraged to use this code in your own programs for fun or for profit as you see fit. A simple comment in the code giving credit would be courteous but is not required. Files: pod/perlrequick.pod pod/perlretut.pod Copyright: Copyright (c) 2000 Mark Kvale All rights reserved. License: GPL-1+ or Artistic This document may be distributed under the same terms as Perl itself. Files: pod/perluniintro.pod Copyright: Copyright 2001-2011 Jarkko Hietaniemi License: GPL-1+ or Artistic This document may be distributed under the same terms as Perl itself. Files: Copying pod/perlgpl.pod Copyright: Copyright (C) 1989 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA License: DONT-CHANGE-THE-GPL Files: t/io/shm.t Copyright: Copyright (C) 1999, Graham Barr . Copyright (C) 2007-2010, Marcus Holland-Moritz . License: GPL-1+ or Artistic This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Files: debian/* Copyright: Portions of the Debian packaging are Copyright 2008-2011 Niko Tyni Copyright 2011 Dominic Hargreaves The other people listed in debian/changelog are most probably copyright holders too, but they have not included explicit copyright or licensing information. License: GPL-1+ or Artistic The portions by Niko Tyni and Dominic Hargreaves may be redistributed and/or modified under the same terms as Perl itself. It is assumed that other contributors have placed their contributions under a compatible license. License: Artistic-2 Copyright (c) 2000-2006, The Perl Foundation. . Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. . Preamble . This license establishes the terms under which a given free software Package may be copied, modified, distributed, and/or redistributed. The intent is that the Copyright Holder maintains some artistic control over the development of that Package while still keeping the Package available as open source and free software. . You are always permitted to make arrangements wholly outside of this license directly with the Copyright Holder of a given Package. If the terms of this license do not permit the full use that you propose to make of the Package, you should contact the Copyright Holder and seek a different licensing arrangement. . Definitions . "Copyright Holder" means the individual(s) or organization(s) named in the copyright notice for the entire Package. . "Contributor" means any party that has contributed code or other material to the Package, in accordance with the Copyright Holder's procedures. . "You" and "your" means any person who would like to copy, distribute, or modify the Package. . "Package" means the collection of files distributed by the Copyright Holder, and derivatives of that collection and/or of those files. A given Package may consist of either the Standard Version, or a Modified Version. . "Distribute" means providing a copy of the Package or making it accessible to anyone else, or in the case of a company or organization, to others outside of your company or organization. . "Distributor Fee" means any fee that you charge for Distributing this Package or providing support for this Package to another party. It does not mean licensing fees. . "Standard Version" refers to the Package if it has not been modified, or has been modified only in ways explicitly requested by the Copyright Holder. . "Modified Version" means the Package, if it has been changed, and such changes were not explicitly requested by the Copyright Holder. . "Original License" means this Artistic License as Distributed with the Standard Version of the Package, in its current version or as it may be modified by The Perl Foundation in the future. . "Source" form means the source code, documentation source, and configuration files for the Package. . "Compiled" form means the compiled bytecode, object code, binary, or any other form resulting from mechanical transformation or translation of the Source form. . Permission for Use and Modification Without Distribution . (1) You are permitted to use the Standard Version and create and use Modified Versions for any purpose without restriction, provided that you do not Distribute the Modified Version. . Permissions for Redistribution of the Standard Version . (2) You may Distribute verbatim copies of the Source form of the Standard Version of this Package in any medium without restriction, either gratis or for a Distributor Fee, provided that you duplicate all of the original copyright notices and associated disclaimers. At your discretion, such verbatim copies may or may not include a Compiled form of the Package. . (3) You may apply any bug fixes, portability changes, and other modifications made available from the Copyright Holder. The resulting Package will still be considered the Standard Version, and as such will be subject to the Original License. . Distribution of Modified Versions of the Package as Source . (4) You may Distribute your Modified Version as Source (either gratis or for a Distributor Fee, and with or without a Compiled form of the Modified Version) provided that you clearly document how it differs from the Standard Version, including, but not limited to, documenting any non-standard features, executables, or modules, and provided that you do at least ONE of the following: . (a) make the Modified Version available to the Copyright Holder of the Standard Version, under the Original License, so that the Copyright Holder may include your modifications in the Standard Version. (b) ensure that installation of your Modified Version does not prevent the user installing or running the Standard Version. In addition, the Modified Version must bear a name that is different from the name of the Standard Version. (c) allow anyone who receives a copy of the Modified Version to make the Source form of the Modified Version available to others under (i) the Original License or (ii) a license that permits the licensee to freely copy, modify and redistribute the Modified Version using the same licensing terms that apply to the copy that the licensee received, and requires that the Source form of the Modified Version, and of any works derived from it, be made freely available in that license fees are prohibited but Distributor Fees are allowed. . Distribution of Compiled Forms of the Standard Version or Modified Versions without the Source . (5) You may Distribute Compiled forms of the Standard Version without the Source, provided that you include complete instructions on how to get the Source of the Standard Version. Such instructions must be valid at the time of your distribution. If these instructions, at any time while you are carrying out such distribution, become invalid, you must provide new instructions on demand or cease further distribution. If you provide valid instructions or cease distribution within thirty days after you become aware that the instructions are invalid, then you do not forfeit any of your rights under this license. . (6) You may Distribute a Modified Version in Compiled form without the Source, provided that you comply with Section 4 with respect to the Source of the Modified Version. . Aggregating or Linking the Package . (7) You may aggregate the Package (either the Standard Version or Modified Version) with other packages and Distribute the resulting aggregation provided that you do not charge a licensing fee for the Package. Distributor Fees are permitted, and licensing fees for other components in the aggregation are permitted. The terms of this license apply to the use and Distribution of the Standard or Modified Versions as included in the aggregation. . (8) You are permitted to link Modified and Standard Versions with other works, to embed the Package in a larger work of your own, or to build stand-alone binary or bytecode versions of applications that include the Package, and Distribute the result without restriction, provided the result does not expose a direct interface to the Package. . Items That are Not Considered Part of a Modified Version . (9) Works (including, but not limited to, modules and scripts) that merely extend or make use of the Package, do not, by themselves, cause the Package to be a Modified Version. In addition, such works are not considered parts of the Package itself, and are not subject to the terms of this license. . General Provisions . (10) Any use, modification, and distribution of the Standard or Modified Versions is governed by this Artistic License. By using, modifying or distributing the Package, you accept this license. Do not use, modify, or distribute the Package, if you do not accept this license. . (11) If your Modified Version has been derived from a Modified Version made by someone other than you, you are nevertheless required to ensure that your Modified Version complies with the requirements of this license. . (12) This license does not grant you the right to use any trademark, service mark, tradename, or logo of the Copyright Holder. . (13) This license includes the non-exclusive, worldwide, free-of-charge patent license to make, have made, use, offer to sell, sell, import and otherwise transfer the Package with respect to any patent claims licensable by the Copyright Holder that are necessarily infringed by the Package. If you institute patent litigation (including a cross-claim or counterclaim) against any party alleging that the Package constitutes direct or contributory patent infringement, then this Artistic License to you shall terminate on the date that such litigation is filed. . (14) Disclaimer of Warranty: THE PACKAGE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS "AS IS' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES. THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT ARE DISCLAIMED TO THE EXTENT PERMITTED BY YOUR LOCAL LAW. UNLESS REQUIRED BY LAW, NO COPYRIGHT HOLDER OR CONTRIBUTOR WILL BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING IN ANY WAY OUT OF THE USE OF THE PACKAGE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. License: BZIP Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: . 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. . 2. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. . 3. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. . 4. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission. . THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. . Julian Seward, jseward@bzip.org bzip2/libbzip2 version 1.0.5 of 10 December 2007 License: ZLIB This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. . Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: . 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. License: Expat Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: . The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. . THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. License: BSD-4-clause Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 4. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. . THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. License: BSD-4-clause-POWERDOG Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgement: This product includes software developed by Powerdog Industries. 4. The name of Powerdog Industries may not be used to endorse or promote products derived from this software without specific prior written permission. . THIS SOFTWARE IS PROVIDED BY POWERDOG INDUSTRIES ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE POWERDOG INDUSTRIES BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. License: Unicode EXHIBIT 1 UNICODE, INC. LICENSE AGREEMENT - DATA FILES AND SOFTWARE . Unicode Data Files include all data files under the directories http://www.unicode.org/Public/, http://www.unicode.org/reports/, and http://www.unicode.org/cldr/data/ . Unicode Data Files do not include PDF online code charts under the directory http://www.unicode.org/Public/. Software includes any source code published in the Unicode Standard or under the directories http://www.unicode.org/Public/, http://www.unicode.org/reports/, and http://www.unicode.org/cldr/data/. . NOTICE TO USER: Carefully read the following legal agreement. BY DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S DATA FILES ("DATA FILES"), AND/OR SOFTWARE ("SOFTWARE"), YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE THE DATA FILES OR SOFTWARE. . COPYRIGHT AND PERMISSION NOTICE . Copyright © 1991-2011 Unicode, Inc. All rights reserved. Distributed under the Terms of Use in http://www.unicode.org/copyright.html. . Permission is hereby granted, free of charge, to any person obtaining a copy of the Unicode data files and any associated documentation (the "Data Files") or Unicode software and any associated documentation (the "Software") to deal in the Data Files or Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Data Files or Software, and to permit persons to whom the Data Files or Software are furnished to do so, provided that (a) the above copyright notice(s) and this permission notice appear with all copies of the Data Files or Software, (b) both the above copyright notice(s) and this permission notice appear in associated documentation, and (c) there is clear notice in each modified Data File or in the Software as well as in the documentation associated with the Data File(s) or Software that the data or software has been modified. . THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA FILES OR SOFTWARE. . Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in these Data Files or Software without prior written authorization of the copyright holder. License: BSD-3-clause-GENERIC Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. The names of the authors may not be used to endorse or promote products derived from this software without specific prior written permission. . THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. License: BSD-3-clause Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. . THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. License: REGCOMP Permission is granted to anyone to use this software for any purpose on any computer system, and to redistribute it freely, subject to the following restrictions: . 1. The author is not responsible for the consequences of use of this software, no matter how awful, even if they arise from defects in it. . 2. The origin of this software must not be misrepresented, either by explicit claim or by omission. . 3. Altered versions must be plainly marked as such, and must not be misrepresented as being the original software. License: TEXT-TABS This module may be modified, used, copied, and redistributed at your own risk. Publicly redistributed modified versions must use a different name. License: TEXT-SOUNDEX Freedom to use these sources for whatever you want, as long as credit is given where credit is due, is hereby granted. You may make modifications where you see fit but leave this copyright somewhere visible. As well, try to initial any changes you make so that if I like the changes I can incorporate them into later versions. . - Mark Mielke License: S2P This program is free and open software. You may use, modify, distribute, and sell this program (and any modified variants) in any way you wish, provided you do not restrict others from doing the same. License: DONT-CHANGE-THE-GPL Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. License: SDBM-PUBLIC-DOMAIN From ext/SDBM_File/sdbm/README: . The entire sdbm library package, as authored by me, Ozan S. Yigit, is hereby placed in the public domain. As such, the author is not responsible for the consequences of use of this software, no matter how awful, even if they arise from defects in it. There is no expressed or implied warranty for the sdbm library. . Since the sdbm library package is in the public domain, this original release or any additional public-domain releases of the modified original cannot possibly (by definition) be withheld from you. Also by definition, You (singular) have all the rights to this code (including the right to sell without permission, the right to hoard[3] and the right to do other icky things as you see fit) but those rights are also granted to everyone else. . Please note that all previous distributions of this software contained a copyright (which is now dropped) to protect its origins and its current public domain status against any possible claims and/or challenges. License: GPL-3+-WITH-BISON-EXCEPTION This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see . . As a special exception, you may create a larger work that contains part or all of the Bison parser skeleton and distribute that work under terms of your choice, so long as that work isn't itself a parser generator using the skeleton or a modified version thereof as a parser skeleton. Alternatively, if you modify or redistribute the parser skeleton itself, you may (at your option) remove this special exception, which will cause the skeleton and the resulting Bison output files to be licensed under the GNU General Public License without this special exception. . This special exception was added by the Free Software Foundation in version 2.2 of Bison. License: HSIEH-DERIVATIVE The derivative content includes raw computer source code, ideas, opinions, and excerpts whose original source is covered under another license and transformations of such derivatives. Note that mere excerpts by themselves (with the exception of raw source code) are not considered derivative works under this license. Use and redistribution is limited to the following conditions: . One may not create a derivative work which, in any way, violates the Paul Hsieh exposition license described above on the original content. . One may not apply a license to a derivative work that precludes anyone else from using and redistributing derivative content. . One may not attribute any derivative content to authors not involved in the creation of the content, though an attribution to the author is not necessary. License: HSIEH-BSD Copyright (c) 2010, Paul Hsieh All rights reserved. . Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: . Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. . Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. . Neither my name, Paul Hsieh, nor the names of any other contributors to the code use may not be used to endorse or promote products derived from this software without specific prior written permission. . THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. debian/libcgi-fast-perl.README.Debian0000644000000000000000000000035412265313056014357 0ustar The CGI::Fast module is distributed and built with perl, although as it requires the FCGI module (not part of perl) to work it has been split into a separate package. -- Brendan O'Dea , Fri, 26 Jan 2001 20:03:51 +1100 debian/checkperl0000644000000000000000000000077712265313056011067 0ustar #!/bin/sh # check for a working /usr/bin/perl test -x /usr/bin/perl && exit 0 echo " ************************************************************************ You don't seem to have a working /usr/bin/perl. If you are attempting to bootstrap a port, you can use the static perl in this directory to complete the build by creating a temporary symlink: ln -s `pwd`/perl.static /usr/bin/perl and exporting PERLLIB=`pwd`/lib . ************************************************************************ " exit 1 debian/Documentation0000644000000000000000000000024312265313056011724 0ustar The Perl POD documentation and the majority of the manual pages are in the `perl-doc' package. The Debian Perl Policy document is in the `debian-policy' package. debian/perl-modules.README.Debian0000644000000000000000000000074412265313056013646 0ustar This package contains those Perl core modules that are architecture independent. See /usr/share/doc/perl/README.Debian for more information on the Perl Debian packaging. Please note that this package only exists to save archive space and should be considered an internal implementation detail of the `perl' package. Other packages should not depend on `perl-modules' directly, they should use `perl' (which depends on `perl-modules') instead. See Debian bug #552052 for background. debian/perl-base.lintian-overrides0000644000000000000000000000026312265313056014424 0ustar # see #522827 usr-share-doc-symlink-without-dependency perl # we never want these unpacked at the same time, they break maintainer scripts conflicts-with-version safe-rm (<< 0.8) debian/perl-base.docs0000644000000000000000000000020012265313056011705 0ustar AUTHORS perl debian/Documentation perl debian/README.Debian perl debian/copyright perl debian/changelog perl/changelog.Debian debian/source/0000755000000000000000000000000012265313056010471 5ustar debian/source/options0000644000000000000000000000003512265313056012105 0ustar tar-ignore = debian/.git-dpm debian/source/lintian-overrides0000644000000000000000000000020012265313056014042 0ustar # very much intentional # see also the perl-modules long description intra-source-package-circular-dependency perl perl-modules debian/source/format0000644000000000000000000000001412265313056011677 0ustar 3.0 (quilt) debian/perl.prerm0000644000000000000000000000015612265313056011204 0ustar #!/bin/sh -e if [ "$1" != upgrade ] then update-alternatives --remove rename /usr/bin/prename fi exit 0 debian/errno.ph0000644000000000000000000000002712265313056010646 0ustar use Errno ':POSIX'; 1; debian/perl-doc.files0000644000000000000000000000006312265313056011721 0ustar usr/bin/perldoc usr/share/man usr/share/perl/*/pod debian/headers0000644000000000000000000000014312265313056010525 0ustar asm/termios.h syscall.h syslimits.h syslog.h sys/ioctl.h sys/socket.h sys/time.h wait.h sysexits.h debian/rename0000644000000000000000000000565312265313056010374 0ustar #!/usr/bin/perl -w # # This script was developed by Robin Barker (Robin.Barker@npl.co.uk), # from Larry Wall's original script eg/rename from the perl source. # # This script is free software; you can redistribute it and/or modify it # under the same terms as Perl itself. # # Larry(?)'s RCS header: # RCSfile: rename,v Revision: 4.1 Date: 92/08/07 17:20:30 # # $RCSfile: rename,v $$Revision: 1.5 $$Date: 1998/12/18 16:16:31 $ # # $Log: rename,v $ # Revision 1.5 1998/12/18 16:16:31 rmb1 # moved to perl/source # changed man documentation to POD # # Revision 1.4 1997/02/27 17:19:26 rmb1 # corrected usage string # # Revision 1.3 1997/02/27 16:39:07 rmb1 # added -v # # Revision 1.2 1997/02/27 16:15:40 rmb1 # *** empty log message *** # # Revision 1.1 1997/02/27 15:48:51 rmb1 # Initial revision # use strict; use Getopt::Long; Getopt::Long::Configure('bundling'); my ($verbose, $no_act, $force, $op); die "Usage: rename [-v] [-n] [-f] perlexpr [filenames]\n" unless GetOptions( 'v|verbose' => \$verbose, 'n|no-act' => \$no_act, 'f|force' => \$force, ) and $op = shift; $verbose++ if $no_act; if (!@ARGV) { print "reading filenames from STDIN\n" if $verbose; @ARGV = ; chop(@ARGV); } for (@ARGV) { my $was = $_; eval $op; die $@ if $@; next if $was eq $_; # ignore quietly if (-e $_ and !$force) { warn "$was not renamed: $_ already exists\n"; } elsif ($no_act or rename $was, $_) { print "$was renamed as $_\n" if $verbose; } else { warn "Can't rename $was $_: $!\n"; } } __END__ =head1 NAME rename - renames multiple files =head1 SYNOPSIS B S<[ B<-v> ]> S<[ B<-n> ]> S<[ B<-f> ]> I S<[ I ]> =head1 DESCRIPTION C renames the filenames supplied according to the rule specified as the first argument. The I argument is a Perl expression which is expected to modify the C<$_> string in Perl for at least some of the filenames specified. If a given filename is not modified by the expression, it will not be renamed. If no filenames are given on the command line, filenames will be read via standard input. For example, to rename all files matching C<*.bak> to strip the extension, you might say rename 's/\.bak$//' *.bak To translate uppercase names to lower, you'd use rename 'y/A-Z/a-z/' * =head1 OPTIONS =over 8 =item B<-v>, B<--verbose> Verbose: print names of files successfully renamed. =item B<-n>, B<--no-act> No Action: show what files would have been renamed. =item B<-f>, B<--force> Force: overwrite existing files. =back =head1 ENVIRONMENT No environment variables are used. =head1 AUTHOR Larry Wall =head1 SEE ALSO mv(1), perl(1) =head1 DIAGNOSTICS If you give an invalid Perl expression you'll get a syntax error. =head1 BUGS The original C did not check for the existence of target filenames, so had to be used with care. I hope I've fixed that (Robin Barker). =cut debian/perl.lintian-overrides0000644000000000000000000000117512265313056013517 0ustar # see #522827 # The following override is no longer useful, since the tag has been # marked as non-overridable. It's also no longer needed, since # #553262 was implemented in lintian. Keeping this here to provide # a reminder of this special-case #no-copyright-file debian-changelog-file-missing-or-wrong-name # lintian is looking at the upstream changelog here syntax-error-in-debian-changelog # corner case; this perldoc is just a stub, not a full implementation, # so no point in trying to provide a manpage here. binary-without-manpage usr/bin/perldoc # not intended as a user interface binary-without-manpage usr/bin/cpanp-run-perl debian/fixheaders0000644000000000000000000000053012265313056011234 0ustar #!./perl.static -w # # Fix up generated .ph files # use strict; use File::Find; use Config; my @args = @ARGV; @ARGV = (); find sub { push @ARGV, $File::Find::name if -f and /\.ph$/ }, @args; $^I = ''; while (<>) { # discard casts s/(? /dev/null && [ "$(md5sum /etc/Net)" = "fb2946cae573b8ed3d654a180d458733 /etc/Net" ] then rm -f /etc/Net fi exit 0 debian/config.over0000644000000000000000000000247212265313056011340 0ustar #!/bin/sh # we use a different method to get old site versions into @INC sitelib_stem= # no versions under vendorlib vendorlib_stem= # remove -rpath (shared libperl is moved to /usr/lib by rules) tmp= for t in $ccdlflags do case $t in -Wl,-rpath,*) ;; *) tmp="$tmp${tmp:+ }$t" esac done ccdlflags="$tmp" # set previous version dirs inc_version_list= inc_version_list_init=0 while read ver do dpkg --compare-versions "$ver" lt "$version" || break dpkg --compare-versions "$ver" lt "$api_versionstring" && continue inc_version_list="$ver${inc_version_list:+ }$inc_version_list" inc_version_list_init="\"$ver\",$inc_version_list_init" done &2 exit 1 fi # force /usr/lib/ into $Config{libpth} if it's not there yet # see #630399 multiarch_dir=/usr/lib/`dpkg-architecture -qDEB_HOST_MULTIARCH` if ! echo $libpth | grep -q "$multiarch_dir" then libpth="$libpth $multiarch_dir" fi # set generic email addresses, host/domain names cf_by='Debian Project' cf_email=perl@packages.debian.org perladmin=root@localhost mydomain= myhostname=localhost debian/libnet.cfg0000644000000000000000000000114312265313056011126 0ustar # Prior to perl 5.8.8-7, libnet was a seperate package with a debconf # configuration managed config in /etc/libnet.cfg which is used if # present. Remove the following line, or the old file before making # changes below. return do '/etc/libnet.cfg' if -f '/etc/libnet.cfg'; { nntp_hosts => [ qw {} ], snpp_hosts => [ qw {} ], pop3_hosts => [ qw {} ], smtp_hosts => [ qw {} ], ph_hosts => [ qw {} ], daytime_hosts => [ qw {} ], time_hosts => [ qw {} ], inet_domain => undef, ftp_firewall => qq {}, ftp_firewall_type => qq {}, ftp_ext_passive => 0, ftp_int_passive => 0, local_netmask => qq {}, } debian/changelog0000644000000000000000000047756113375014723011071 0ustar perl (5.18.2-2ubuntu1.7) trusty-security; urgency=medium * SECURITY UPDATE: Integer overflow leading to buffer overflow - debian/patches/fixes/CVE-2018-18311.patch: handle integer wrap in util.c. - CVE-2018-18311 * SECURITY UPDATE: Heap-buffer-overflow read - debian/patches/fixes/CVE-2018-18313.patch: convert some strchr to memchr in regcomp.c. - CVE-2018-18313 -- Marc Deslauriers Tue, 20 Nov 2018 09:27:15 -0500 perl (5.18.2-2ubuntu1.6) trusty-security; urgency=medium * SECURITY UPDATE: Directory traversal vulnerability - debian/patches/fixes/CVE-2018-12015.patch: fix ing cpan/Archive-Tar/lib/Archive/Tar.pm. - CVE-2018-12015 -- Leonidas S. Barbosa Tue, 12 Jun 2018 17:00:53 -0300 perl (5.18.2-2ubuntu1.4) trusty-security; urgency=medium * SECURITY UPDATE: infinite loop via crafted utf-8 data - debian/patches/fixes/CVE-2015-8853-1.patch: fix hangs in regexec.c, t/re/pat.t. - debian/patches/fixes/CVE-2015-8853-2.patch: use Perl_croak_nocontext() in regexec.c. - CVE-2015-8853 * SECURITY UPDATE: arbitrary code exec via library in cwd - debian/patches/fixes/CVE-2016-6185.patch: properly handle paths in dist/XSLoader/XSLoader_pm.PL, dist/XSLoader/t/XSLoader.t. - CVE-2016-6185 * SECURITY UPDATE: race condition in rmtree and remove_tree - debian/patches/fixes/CVE-2017-6512-pre.patch: correct the order of tests of chmod() in cpan/ExtUtils-Command/t/eu_command.t. - debian/patches/fixes/CVE-2017-6512.patch: prevent race in cpan/File-Path/lib/File/Path.pm, cpan/File-Path/t/Path.t. - CVE-2017-6512 * SECURITY UPDATE: heap buffer overflow bug - debian/patches/fixes/CVE-2018-6913.patch: fix various space calculation issues in pp_pack.c, t/op/pack.t. - CVE-2018-6913 -- Marc Deslauriers Thu, 05 Apr 2018 12:49:25 -0400 perl (5.18.2-2ubuntu1.3) trusty-security; urgency=medium * SECURITY UPDATE: Buffer overflow via crafted regular expressiion - debian/patches/CVE-2017-12883.patch: fix crafted expression with invalid '\N{U+...}' escape in regcomp.c - CVE-2017-12883 * SECURITY UPDATE: heap-based buffer overflow in S_regatom - debian/patches/CVE-2017-12837.patch: fix issue in regcomp.c - CVE-2017-12837 -- Leonidas S. Barbosa Fri, 10 Nov 2017 08:42:39 -0300 perl (5.18.2-2ubuntu1.1) trusty-security; urgency=medium * SECURITY UPDATE: denial of service via regular expression invalid backreference - debian/patches/fixes/CVE-2013-7422.patch: properly handle big backreferences in regcomp.c. - CVE-2013-7422 * SECURITY UPDATE: denial of service in Data::Dumper - debian/patches/fixes/CVE-2014-4330.patch: limit recursion in MANIFEST, dist/Data-Dumper/Dumper.pm, dist/Data-Dumper/Dumper.xs, dist/Data-Dumper/t/recurse.t. - CVE-2014-4330 * SECURITY UPDATE: environment variable confusion issue - debian/patches/fixes/CVE-2016-2381.patch: remove duplicate environment variables from environ in perl.c. - CVE-2016-2381 -- Marc Deslauriers Tue, 01 Mar 2016 07:32:17 -0500 perl (5.18.2-2ubuntu1) trusty; urgency=medium * Fix undefined behaviour in sv.c, resulting in test failures when built with GCC 4.9. Patch by Marek Polacek. -- Matthias Klose Tue, 25 Mar 2014 17:52:36 +0100 perl (5.18.2-2) unstable; urgency=medium [ Niko Tyni ] * Update debian/copyright to include the year 2013. [ Dominic Hargreaves ] * Upload to unstable -- Dominic Hargreaves Tue, 14 Jan 2014 19:47:33 +0000 perl (5.18.2-1) experimental; urgency=low * New upstream release. -- Niko Tyni Wed, 08 Jan 2014 21:17:36 +0200 perl (5.18.1-5) unstable; urgency=medium [ Dominic Hargreaves ] * Revert patches disabling GNU/Hurd tests which now succeed: - debian/hurd_net_ping_disable_test.diff (Closes: #709385) - debian/hurd_test_skip_io_pipe.diff (Closes: #650096) - debian/hurd_test_skip_pipe.diff (Closes: #650187) - debian/hurd_test_skip_sigdispatch.diff (Closes: #650188) - debian/hurd_test_todo_syslog.diff (Closes: #650093) * Various tidying of Copyright file in line with Lintian's suggestions * Override Lintian tag spelling-error-in-copyright for an upstream error * Override Lintian tag empty-binary-package for libperl5.18 as it is a dummy package on some architectures [ Niko Tyni ] * Include upstream fix for regex \8 and \9 after literals. (Closes: #731365) * Fix spelling of IPC_CREAT in IPC-SysV documentation. (Closes: #730558) -- Niko Tyni Fri, 06 Dec 2013 20:05:55 +0200 perl (5.18.1-4) unstable; urgency=low * Add Breaks on versions of libcommon-sense-perl which were built with earlier version of perl (Closes: #722460) * Add Module::Metadata fix for use in taint mode (Closes: #722210) * Update Lintian override for wrong-path-for-interpreter false positive -- Dominic Hargreaves Wed, 11 Sep 2013 23:30:25 +0100 perl (5.18.1-3) unstable; urgency=low * Make perl-base conflict with all versions of libscalar-list-utils-perl, which overrides Essential functionality in a way that breaks during upgrades. (Closes: #721364) -- Niko Tyni Sat, 31 Aug 2013 18:32:36 +0300 perl (5.18.1-2) unstable; urgency=low * Remove redundant Provides: perlapi-5.18.0 * Update Module::Metadata documentation to fix CVE-2013-1437 by clarifying that Module::Metadata does execute code from the module it is acting on * Upload to unstable -- Dominic Hargreaves Mon, 26 Aug 2013 19:32:08 +0100 perl (5.18.1-1) experimental; urgency=low [ Dominic Hargreaves ] * Apply patch from upstream fixing Digest::SHA double-free crash (Closes: #711206) [ Niko Tyni ] * Amend the perlbug patchlevel fix for #710842 so that the list of local patches is looked up at perlbug run time. * Fix the permissions of the md5sums control files in the binary packages. (Closes: #714408) * Import new upstream release. + update Breaks versions for the libmodule-corelist-perl and libdigest-sha-perl packages. * Apply upstream patches to (partially) fix qr// precompilation and the /p flag. (Closes: #718209) * Add Breaks and Replaces entries for older versions of the (deprecated) libobject-accessor-perl package. -- Niko Tyni Mon, 12 Aug 2013 18:26:06 +0300 perl (5.18.0-3) experimental; urgency=low * Remove the Provides entries for the deprecated core modules. (See #702096) * Make perlbug.PL run patchlevel.h through cpp where possible. (Closes: #710842) * Migrate the maintainer tests from 'config-edit' to 'cme'. -- Niko Tyni Tue, 11 Jun 2013 22:20:35 +0300 perl (5.18.0-2) experimental; urgency=low * Apply patches from upstream fixing FTBFS on sparc relating to pmop alignment (Closes: #708792) * Update the deprecation warning to point to the Debian packages for modules deprecated in 5.18 * Disable failing Net-Ping tests for GNU/Hurd (see: 709385) * Apply patch from Jonathan Nieder fixing Memoize::Storable 'nstore' option (Closes: #677292) * Apply patch from Peter Pentchev fixing Net::FTP failure handling (Closes: #491062) * Add Breaks/Provides/Replaces/Recommends/Suggests on deprecated modules (Closes: #702096) -- Dominic Hargreaves Sun, 09 Jun 2013 12:47:28 +0100 perl (5.18.0-1) experimental; urgency=low * New upstream release - update Breaks version for libpod-simple-perl * Additional bugs fixed since 5.14: - pending signals are processed in both the parent and child process after a fork() (Closes: 495788) - occasional test failures from Time-HiRes (Closes: #637470) - Storing shared_clone with overload in shared_clone strips off overload (Closes: #677588) - segfaults when freeing deeply nested structures (Closes: #624759) - creating and destroying threads with perl results in memory leak (Closes: #700624) - double free or corruption crash after thread->join when POE::Kernel is loaded (Closes: #707206) - Behaviour changed in Text::Wrap (Closes: #101933) - pod2html doesn't remove temporary files (Closes: #378328) - Syslog.pm adds newline and later EOL whitespace to spamassassin /var/log/syslog messages (Closes: #496254) - Pod::PlainText doesn't recognize =encoding (Closes: #587733) - libdate-manip-perl: Memory Leak (Closes: #600231) - perlembed.pod and perlmodinstall.pod contain invariant sections (Closes: #630149) - perl debugger dies for PDL scripts with "Can't return a temporary from lvalue subroutine" (Closes: #654387) - pod2man: no exit code & empty files left behind (Closes: #659939) - Man.pm: Undefined strings and a number register in groff (Closes: #674206) - perlcall(1) incorrectly refers to "X windows" (Closes: #233214) - perl-base: IO::Handle manual lies about write() (Closes: #335694) - perl-doc: be more explicit about how to use $! (Closes: #484021) - perl-base: Doesn't throw an error if first parameter is a directory (Closes: #689412) - mention "use diagnostics" on perldiag (Closes: #485467) - Please don't pollute manpages with "POD ERRORS" sections (Closes: #497866) * Override lintian warning doc-package-depends-on-main-package as perl-doc really depends on perl * Override lintian warning wrong-path-for-interpreter for a perl module -- Dominic Hargreaves Sun, 19 May 2013 19:00:27 +0100 perl (5.18.0~rc1-1) experimental; urgency=low [ Niko Tyni ] * Reorder the packages in debian/control to improve robustness of the installation step. [ Dominic Hargreaves ] * Merge 5.14.2-21 from unstable: + Update the Locale::Maketext fix by importing 1.23, to avoid double-escaping problems (see: #695224) * Provide a more modern description of Perl in the long description of the perl package (Closes: #678307) * New upstream release - update Breaks versions in debian/control for dual-lived modules [ Niko Tyni ] * Update debian/copyright for 5.17.11. * Fix a few false positive format-security warnings from gcc. * Use the DESTDIR mechanism for installation instead of mangling the install paths before and after. * New upstream release candidate. -- Dominic Hargreaves Sat, 11 May 2013 22:33:07 +0100 perl (5.16.3-1) experimental; urgency=low * Remove Depends/Recommends/Suggests on modules deprecated in 5.12 and 5.14 (Closes: #702094) * Fix FTBFS with findutils from experimental by not using deprecated permissions check syntax; thanks to Roland Stigge (Closes: #702562) * Merge 5.14.2-17, 5.14.2-18, 5.14.2-19 and 5.14.2-20 from unstable + Fix a double-free bug in Digest::SHA. (Closes: #698174) + update the Breaks: entry accordingly. + Avoid wraparound when casting unsigned size_t to signed ssize_t. (Closes: #698320) + [SECURITY] CVE-2013-1667: fix a rehashing DoS opportunity against code that uses arbitrary user input as hash keys. (Closes: #702296) + Fix an Encode memory leak that occurred in the UTF-8 encoding. (Closes: #702416) + upgrade the Broken versions of the separate libencode-perl package accordingly. * Update debian/t/control.t to reflect Module::CoreList version inconsistency and to remove references to non-existent Breaks * Remove unneeded versioned dependencies on gcc and cpio (Closes: #678138) * Fix debian/copyright syntax (thanks, Lintian) * Include correct branch name in Vcs-Git field * New upstream release -- Dominic Hargreaves Tue, 12 Mar 2013 23:08:47 +0000 perl (5.16.2-2) experimental; urgency=low [ Dominic Hargreaves ] * Merge 5.14.2-15 and 5.14.2-16 from unstable + [SECURITY] CVE-2012-5526: CGI.pm improper cookie and p3p CRLF escaping (Closes: #693420) + [SECURITY] Fix misparsing of maketext strings which could allow arbitrary code execution from untrusted maketext templates (Closes: #695224) + [SECURITY] add warning to Storable documentation that Storable documents should not be accepted from untrusted sources (Closes: #695223) + Fix CPAN::FirstTime defaults with nonexisting site dirs if a parent is writable. (Closes: #688842) + Don't overwrite $Config{lddlflags} or ccdlflags on GNU/kFreeBSD. (Closes: #689713) [ Niko Tyni ] * Minor packaging improvements: + present Debian bugs consistently in patchlevel.h. + use gzip -n for reproducible results + support comments in file lists + fix a syntax error in debian/copyright + support the '**' notation in file lists for matching subdirectories -- Dominic Hargreaves Sun, 13 Jan 2013 17:54:46 +0000 perl (5.16.2-1) experimental; urgency=low * New upstream release - update debian/copyright version (no changes) - update Breaks version for libmodule-corelist-perl * Merge 5.14.2-13 and 5.14.2-14 from unstable -- Dominic Hargreaves Fri, 02 Nov 2012 19:33:13 +0000 perl (5.16.1-1) experimental; urgency=low * Merge 5.14.2-11 and 5.14.2-12 from unstable * New upstream release - update Breaks/Replaces/Provides for libscalar-list-utils-perl - update debian/copyright version (no changes) * Update Breaks/Replaces/Provides for new libsocket-perl -- Dominic Hargreaves Sat, 18 Aug 2012 19:18:28 +0100 perl (5.16.0-1) experimental; urgency=low * New upstream release - update debian/copyright - update Breaks versions in debian/control for dual-lived modules - remove Provides/Replaces/Breaks for removed modules libdevel-dprof-perl, libperl4-corelibs-perl, libshell-perl - add Provides/Replaces/Breaks for new libcpan-meta-requirements-perl - add new files to perl-base to keep it self-contained * Add patch from Daniel Kahn Gillmor fixing propagation of socket type information (Closes: #659075) * Fix test failure with t/op/getpid.t on kFreeBSD by including a linuxthreads version check -- Dominic Hargreaves Tue, 05 Jun 2012 13:34:00 +0100 perl (5.14.2-21) unstable; urgency=low [ Dominic Hargreaves ] * Update the Locale::Maketext fix by importing 1.23, to avoid double-escaping problems (see: #695224) -- Niko Tyni Wed, 10 Apr 2013 19:11:35 +0300 perl (5.14.2-20) unstable; urgency=low * Fix an Encode memory leak that occurred in the UTF-8 encoding. (Closes: #702416) + upgrade the Broken versions of the separate libencode-perl package accordingly. -- Niko Tyni Thu, 07 Mar 2013 19:08:47 +0200 perl (5.14.2-19) unstable; urgency=high * [SECURITY] CVE-2013-1667: fix a rehashing DoS opportunity against code that uses arbitrary user input as hash keys. (Closes: #702296) -- Niko Tyni Tue, 05 Mar 2013 21:38:26 +0200 perl (5.14.2-18) unstable; urgency=low * Fix a squeeze regression with STDIN and signal handlers. (Closes: #700171) -- Niko Tyni Sat, 09 Feb 2013 15:31:33 +0200 perl (5.14.2-17) unstable; urgency=low * Fix a double-free bug in Digest::SHA. (Closes: #698174) + update the Breaks: entry accordingly. * Avoid wraparound when casting unsigned size_t to signed ssize_t. (Closes: #698320) -- Niko Tyni Fri, 25 Jan 2013 15:22:58 +0200 perl (5.14.2-16) unstable; urgency=medium * [SECURITY] CVE-2012-5526: CGI.pm improper cookie and p3p CRLF escaping (Closes: #693420) * [SECURITY] Fix misparsing of maketext strings which could allow arbitrary code execution from untrusted maketext templates (Closes: #695224) * [SECURITY] add warning to Storable documentation that Storable documents should not be accepted from untrusted sources (Closes: #695223) -- Dominic Hargreaves Mon, 10 Dec 2012 12:47:14 +0000 perl (5.14.2-15) unstable; urgency=low * Fix CPAN::FirstTime defaults with nonexisting site dirs if a parent is writable. (Closes: #688842) * Don't overwrite $Config{lddlflags} or ccdlflags on GNU/kFreeBSD. (Closes: #689713) * Fix tainted smart matching. (Closes: #690571) * Cherry-pick fixes from 5.14.3: + /i regexps match correctly with latin1 characters again (Closes: #690975) + /i regexps match beyond the start of the string with multi-char folds again. (Closes: #690976) + /[[:lower:]]/i and /[[:upper:]]/i match the opposite cases again (Closes: #690979) + <$fh> no longer hangs or eats memory on a glob copy (Closes: #629363) + enforce Any ~~ Object smartmatch precedence (Closes: #691102) + update perlcheat.pod to 5.14. (Closes: #691112) -- Niko Tyni Sun, 04 Nov 2012 12:37:46 +0200 perl (5.14.2-14) unstable; urgency=high * [SECURITY] CVE-2012-5195: fix a heap buffer overrun with the 'x' string repeat operator. (Closes: #689314) -- Niko Tyni Wed, 10 Oct 2012 21:17:36 +0300 perl (5.14.2-13) unstable; urgency=low * Apply patch fixing IPC::Open3 when command is '-' (Closes: #683894) * Add Breaks/Replaces/Provides for new dual-lived libsocket-perl (Closes: #679154) -- Dominic Hargreaves Thu, 06 Sep 2012 23:24:28 +0100 perl (5.14.2-12) unstable; urgency=low * Re-enable thread tests on kFreeBSD now that libc breakage has been resolved (Closes: #672152, #677045) * Update Standards-Version (no changes) * Add minimal Copyright fields to debian/copyright paragraphs that were missing them, to fix Lintian warnings about missing required fields -- Dominic Hargreaves Mon, 18 Jun 2012 22:44:56 +0100 perl (5.14.2-11) unstable; urgency=low [ Dominic Hargreaves ] * Add patch from Daniel Kahn Gillmor fixing propagation of socket type information (Closes: #659075) [ Niko Tyni ] * Temporarily disable thread tests on kFreeBSD to work around libc breakage. (See #672152 and #673711) * Remove empty Copyright lines from debian/copyright to appease Config::Model. -- Niko Tyni Fri, 25 May 2012 10:14:00 +0300 perl (5.14.2-10) unstable; urgency=low * Properly propagate tainted errors (Closes: #663158) * Invoke x-terminal-emulator rather than xterm in perl5db.pl (Closes: #668490) * Add Conflicts with mono-gac (<< 2.10.8.1-3) to perl-base and perl-modules (Closes: #665384) -- Dominic Hargreaves Mon, 07 May 2012 20:33:52 +0100 perl (5.14.2-9) unstable; urgency=low [ Dominic Hargreaves ] * Add Breaks on various packages which had 5.12/5.14 compatibility bugs fixed since squeeze, to help with partial upgrades * Add Breaks on ftpmirror for the same reason (Closes: #659799) [ Niko Tyni ] * No longer disable the 'pie' build flags: the implementation was overwriting DEB_BUILD_MAINT_OPTIONS altogether. * Modify Config_heavy.pl after the build to remove dpkg-buildflags effects on ccflags and lddlflags; we don't want to force them on all XS modules at this stage. (See #657853) * Update the DEP-5 URL in debian/copyright now that it is finally stabilized. * Make EU::MM pass LD through to recursive Makefile.PL invocations. (Closes: #660195) -- Niko Tyni Sat, 03 Mar 2012 16:23:02 +0200 perl (5.14.2-8) experimental; urgency=low [ Dominic Hargreaves ] * Include some notes in debian/rules about not using perl more than necessary * Fix CGI.pm to not use the deprecated shellwords.pl library * Don't use _POSIX_PATH_MAX as a fallback PATH_MAX (Closes: #656869) [ Niko Tyni ] * Pass system zlib information to the Compress-Raw-Zlib build system with environment variables instead of patching the source. * Make perl-base and perl-modules conflict with defoma (<< 0.11.12), whose older versions may break when invoked from preinst scripts during squeeze -> wheezy upgrades. (Closes: #657940) * Use dpkg-buildflags (when available) to enable hardened builds. (Closes: #657853) + explicitly disable the 'pie' flags until somebody finds a way to make them work with the build system -- Dominic Hargreaves Mon, 06 Feb 2012 21:17:04 +0000 perl (5.14.2-7) unstable; urgency=low [ Dominic Hargreaves ] * Re-enable tests dist/threads/t/libc.t, ext/Socket/t/socketpair.t on GNU/Hurd fixed by changes in hurd (20111206-1) * Re-enable test cpan/autodie/t/recv.t on GNU/Hurd fixed by changes in eglibc (2.13-22) * Add missing POD descriptions in modules from CPAN, to fix Lintian warnings (Closes: #650448, #650450, #650451, #650452) * Fix AE ligature fallback handling in Pod::Man (thanks to Russ Allbery for the fix) (Closes: #652851) * Update references to the FSF's postal address (fixes Lintian warnings) * Add Lintian overrides for missing manpages for perldoc stub and cpanp-run-perl utility script (Closes: #654652) * Fix POD formatting in Term-Cap and Pod-Parser (fixes Lintian warnings) * Remove special-case override for non-overridable no-copyright-file Lintian tag (see #522827 and #553262) [ Jonathan Nieder ] * Add Homepage field pointing to dev.perl.org (Closes: #657274) -- Dominic Hargreaves Sat, 28 Jan 2012 21:40:00 +0000 perl (5.14.2-6) unstable; urgency=low [ Niko Tyni ] * debian/rules: correctly handle subject line wraps in patch headers. [ Dominic Hargreaves ] * Add versioned Conflicts on update-inetd (<< 4.41) (Closes: #649177) * Conflict on rather than Break doc-base (<< 0.10.3); aptitude runs doc-base triggers before the new version has been unpacked * Update Lintian override for perl-module-uses-perl4-libs-without-dep to reflect new path to CGI.pm * Disable various tests which fail on GNU/Hurd (see #648623) -- Dominic Hargreaves Mon, 28 Nov 2011 19:48:05 +0000 perl (5.14.2-5) unstable; urgency=low * Update versioned Breaks for dual-lived modules with updates in 5.14.2 (libmodule-corelist-perl, libencode-perl) * Update versioned Breaks for doc-base to << 0.10.3; this version improves the resilience of the postinst during a major perl upgrade (Closes: #648954) -- Dominic Hargreaves Thu, 17 Nov 2011 23:29:20 +0000 perl (5.14.2-4) unstable; urgency=low * Add Conflicts: libjson-pp-perl (<< 2.27200-2) to perl package to fix file conflict with dual-lived module (Closes: #648897) -- Dominic Hargreaves Tue, 15 Nov 2011 23:36:39 +0000 perl (5.14.2-3) unstable; urgency=low * Upload to unstable -- Dominic Hargreaves Sun, 13 Nov 2011 12:12:26 +0000 perl (5.14.2-2) experimental; urgency=low * [SECURITY] CVE-2011-3597: Fix unsafe use of eval in Digest->new(); thanks to Ansgar Burchardt for the notification (Closes: #644108) * Merge 5.12.4-6 from unstable * Fix NDBM_File hints on GNU/Hurd (thanks, Pino Toscano) (Closes: #645989) * Fix hang in t/ext/POSIX/t/sysconf.t on GNU/Hurd (thanks, Pino Toscano) (Closes: #646016) * Enable LFS on GNU/Hurd (thanks, Pino Toscano) (Closes: #645790) -- Dominic Hargreaves Sat, 12 Nov 2011 17:25:33 +0000 perl (5.14.2-1) experimental; urgency=low * Fix typos in several pod/perl*.pod files (Closes: #637816) * New upstream version. + Fix a memory leak in Carp::shortmess. (Closes: #638676) * Update CPAN::Distribution to use html2text rather than html2text.pl; thanks to Andreas Marschke for the patch (Closes: #640479) * Override Lintian warning perl-module-uses-perl4-libs-without-dep as the Perl4 libraries are provided by perl itself * Merge 5.12.4-5 from unstable -- Dominic Hargreaves Thu, 29 Sep 2011 21:51:55 +0100 perl (5.14.1-2) experimental; urgency=low * Promote libclass-isa-perl and libswitch-perl from Recommends to Depends, to improve partial upgrades from squeeze to wheezy (see: #629472) * Demote libpod-plainer-perl from Recommends to Suggests, based on analysis of its usage in Debian (see: #629472) * Skip a crashing test case in t/op/threads.t on GNU/kFreeBSD (see: #628493, thanks Niko) * Apply patch from Niko documenting the correct use of CCFLAGS in ExtUtils::MakeMaker (see: #628522) * Use a socket timeout on GNU/kFreeBSD to catch ICMP port unreachable messages (thanks, Niko) (Closes: #627821) * [SECURITY] CVE-2011-2939: Fix decode_xs n-byte heap-overflow security bug in Unicode.xs (Closes: #637376) * Improve general GNU hints, fixing build failures on GNU/Hurd. Patch by Pino Toscano. (Closes: #636609) * Merge 5.12.4-3 and 5.12.4-4 from unstable * Fix lintian error by build-depending on procps [!hurd-any] rather than procps | hurd (and adjust existing [!hurd-i386] to [!hurd-any]) (Closes: #635647) -- Dominic Hargreaves Thu, 11 Aug 2011 18:28:44 +0100 perl (5.14.1-1) experimental; urgency=low [ Niko Tyni ] * New upstream version. + ODBM_File hints find libgdbm_compat again in multiarch setups (Closes: #625634) + Lengthen time-out in t/re/re.t; fixes FTBFS on sh4 (Closes: #626125) * Move all package maintainer tests to debian/t/ * Switch to git-dpm for managing debian/patches + generate the patchlevel information from debian/patches at build time. * Multiarch related fixes: + Remove the Debian/Ubuntu specific path fix introduced in 5.12.3-3 and obsoleted by the upstream fix in 5.14.0. + h2ph now correctly gets the header directories from gcc (Closes: #625808) * Revert obsolete patches: - debian/arm_optim.diff - debian/devel-ppport-ia64-optim.diff - fixes/processPL.diff (Closes: #626094) * Support the 'build-arch' and 'build-indep' debian/rules targets as synonyms for 'build'. * Remove a stale perlcc reference from the libperl-dev long description. * Don't use LD_RUN_PATH for multiarch directories (Closes: #631096) (thanks, Ahmed El-Mahmoudy) * Add Depends on libc6-dev | libc-dev to libperl-dev (Closes: #631308) * Add a './perl.static -Ilib -V' invocation to the end of the build, for the build log record (refers to: #630399) * Merge 5.12.4-1 from unstable. * Fix tainting with index() of a constant. (Closes: #291450) * debian/config.over: Force the multiarch directory /usr/lib/ into $Config{libpth} even if doesn't exist yet. This should guarantee that ExtUtils::Embed works on multiarch enabled system even when the package isn't built on one. Thanks to Jonathan Nieder. (Closes: #630399) + needs a build dependency on dpkg-dev (>= 1.16.0) for "dpkg-architecture -qDEB_HOST_MULTIARCH". * Break older versions of doc-base to avoid a Storable binary incompatibility issue in partial upgrades. (Closes: #633076) * No longer prune -lnsl and -lutil in debian/config.over, this was obsoleted by a related change in 5.6.1-7 (!) * Match bzip2 archives in debian/watch. [ Dominic Hargreaves ] * work around -Werror compile failure of XS in linux perf tool (Closes: #628512) * Note removal of perl-suid in README.Debian and suggest alternatives (Closes: #628042) * Add note about git format-patch signatures to git-dpm section of README.source * Update Vcs-* references to point to combined git-dpm based repository at new anonscm URLs * Split up patch debian/extutils_hacks.diff into several logically distinct patches (relates to: #624508) * Merge 5.12.4-2 from unstable. -- Dominic Hargreaves Wed, 27 Jul 2011 22:15:23 +0100 perl (5.14.0-1) experimental; urgency=low [ Niko Tyni ] * New upstream release candidate. + update the Breaks versions for most of the bundled modules. + no longer Breaks/Replaces/Provides libswitch-perl, libclass-isa-perl, and libpod-plainer-perl as the corresponding modules have been removed from the Perl core distribution. + add Breaks/Replaces/Provides for * libcpan-meta-perl * libmath-complex-perl * libextutils-command-perl * libmodule-metadata-perl * libjson-pp-perl * libperl-ostype-perl * libversion-requirements-perl * libcpan-meta-yaml-perl * libdigest-perl * libextutils-install-perl * libhttp-tiny-perl * debian/patches/fixes/extutils-cbuilder-cflags: [perl #89478] Make ExtUtils::CBuilder append CFLAGS and LDFLAGS from the environment to their Config.pm counterparts instead of overriding them. * Totally rework debian/copyright. [ Dominic Hargreaves ] * New upstream release * Add Recommends for deprecated modules libdevel-dprof-perl, libperl4-corelibs-perl, libshell-perl -- Dominic Hargreaves Fri, 20 May 2011 18:07:12 +0100 perl (5.12.4-6) unstable; urgency=medium * [SECURITY] CVE-2011-3597: Fix unsafe use of eval in Digest->new(); thanks to Ansgar Burchardt for the notification (Closes: #644108) -- Dominic Hargreaves Fri, 07 Oct 2011 22:15:54 +0100 perl (5.12.4-5) unstable; urgency=low [ Niko Tyni ] * Fix a memory leak in Carp::shortmess. (Closes: #638676) [ Dominic Hargreaves ] * Update CPAN::Distribution to use html2text rather than html2text.pl; thanks to Andreas Marschke for the patch (Closes: #640479) * Override Lintian warnings perl-module-uses-perl4-libs-without-dep and script-uses-perl4-libs-without-dep as the Perl4 libraries are provided by perl itself -- Dominic Hargreaves Thu, 29 Sep 2011 20:34:43 +0100 perl (5.12.4-4) unstable; urgency=medium * [SECURITY] CVE-2011-2939: Fix decode_xs n-byte heap-overflow security bug in Unicode.xs (Closes: #637376) -- Dominic Hargreaves Wed, 10 Aug 2011 19:25:23 +0100 perl (5.12.4-3) unstable; urgency=low [ Dominic Hargreaves ] * Fix lintian error by build-depending on procps [!hurd-any] rather than procps | hurd (and adjust existing [!hurd-i386] to [!hurd-any]) (Closes: #635647) * Apply patch from Niko documenting the correct use of CCFLAGS in ExtUtils::MakeMaker (see: #628522) * Use a socket timeout on GNU/kFreeBSD to catch ICMP port unreachable messages (thanks, Niko) (Closes: #627821) [ Niko Tyni ] * Improve general GNU hints, fixing build failures on GNU/Hurd. Patch by Pino Toscano. (Closes: #636609) -- Niko Tyni Wed, 10 Aug 2011 08:16:20 +0300 perl (5.12.4-2) unstable; urgency=low [ Niko Tyni ] * debian/config.over: Force the multiarch directory /usr/lib/ into $Config{libpth} even if doesn't exist yet. This should guarantee that ExtUtils::Embed works on multiarch enabled system even when the package isn't built on one. Thanks to Jonathan Nieder. (Closes: #630399) + needs a build dependency on dpkg-dev (>= 1.16.0) for "dpkg-architecture -qDEB_HOST_MULTIARCH". * Fix tainting with index() of a constant. (Closes: #291450) * Break older versions of doc-base to avoid a Storable binary incompatibility issue in partial upgrades. (Closes: #633076) * No longer prune -lnsl and -lutil in debian/config.over, this was obsoleted by a related change in 5.6.1-7 (!) * Match bzip2 archives in debian/watch. -- Dominic Hargreaves Wed, 27 Jul 2011 19:59:30 +0100 perl (5.12.4-1) unstable; urgency=low [ Niko Tyni ] * New upstream release. * Move debian/check-control to debian/t/ to anticipate new package maintainer tests in the future. * Switch to git-dpm for managing debian/patches + generate the patchlevel information from debian/patches at build time. * Multiarch related fixes: + h2ph now correctly gets the header directories from gcc (Closes: #625808) + ODBM_File hints find libgdbm_compat again (Closes: #625634) * Support the 'build-arch' and 'build-indep' debian/rules targets as synonyms for 'build'. * Remove a stale perlcc reference from the libperl-dev long description. * Remove the Debian/Ubuntu specific multiarch path fix introduced in 5.12.3-3 and obsoleted by the upstream fix in 5.12.4. [ Dominic Hargreaves ] * Note removal of perl-suid in README.Debian and suggest alternatives (Closes: #628042) * Lengthen time-out in t/re/re.t; fixes FTBFS on sh4 (Closes: #626125) * Add note about git format-patch signatures to git-dpm section of README.source * Revert obsolete patches: - debian/arm_optim.diff - debian/devel-ppport-ia64-optim.diff - fixes/processPL.diff (Closes: #626094) * Split up patch debian/extutils_hacks.diff into several logically distinct patches (relates to: #624508) * Update Vcs-* references to point to combined git-dpm based repository at new anonscm URLs * Don't use LD_RUN_PATH for multiarch directories (Closes: #631096) (thanks, Ahmed El-Mahmoudy) * Add Depends on libc6-dev | libc-dev to libperl-dev (Closes: #631308) * Add a './perl.static -Ilib -V' invocation to the end of the build, for the build log record (refers to: #630399) -- Dominic Hargreaves Tue, 28 Jun 2011 22:25:28 +0100 perl (5.12.3-7) unstable; urgency=low * Fix failing tilde test when run under a UID without a passwd entry (Closes: #624850) * Adjust debian/check-control to work with strict version checks and release candidates * Add Breaks: mrtg (<< 2.16.3-3.1) (see #625695) * Add Breaks, Replaces, Provides for new dual-lived modules libshell-perl, libdevel-dprof-perl * Add Replaces, Provides for new deprecation module libperl4-corelibs-perl -- Dominic Hargreaves Thu, 19 May 2011 19:16:22 +0100 perl (5.12.3-6) unstable; urgency=low * Upload to unstable. -- Dominic Hargreaves Sun, 01 May 2011 17:40:10 +0100 perl (5.12.3-5) experimental; urgency=low * Add new debian/check-control script written by Niko, backported from 5.14 tree. This is used by maintainer targets in debian/rules to check Provides/Replaces/Breaks against bundled modules. * Apply upstream fix for Module::Corelist version number * Correct various Breaks version numbers and add Breaks, Replaces, Provides for new or missing dual-lived modules: - libmath-complex-perl - libextutils-command-perl - libdigest-perl - libextutils-install-perl -- Dominic Hargreaves Sat, 30 Apr 2011 20:47:53 +0100 perl (5.12.3-4) experimental; urgency=low * Revert gcc-4.3 on sparc workaround for #577016 which turned out to be a kernel bug, now fixed (#581571). gcc-4.3 is no longer available in sid. * Build-depend on unversioned libdb-dev (see #621383) * Merge 5.10.1-20 from unstable: + [SECURITY] CVE-2011-1487: taint laundering in lc, uc, et al. (Closes: #622817) + Make the package fail to build instead of silently dropping the DB_File module if -ldb doesn't work. (See #622916) -- Dominic Hargreaves Fri, 22 Apr 2011 12:04:32 +0100 perl (5.12.3-3) experimental; urgency=low [ Dominic Hargreaves ] * Remove Eugene from Uploaders as requested [ Niko Tyni ] * Move to libdb5.1. (Closes: #621383) * Merged from 5.10.1-19: + debian/config.debian: pass multiarch paths to the build (if available) so that we're able to find libraries needed to build. thanks to Steve Langasek. (Closes: #620189) * debian/config.debian: never use , even if libbsd-dev is installed. Inspired by a similar Ubuntu change. * Add Conflicts, Replaces, Provides for libunicode-collate-perl which is now also packaged separately. (Closes: #599486) [ Dominic Hargreaves ] * Update Standards-Version to 3.9.2 (no changes) -- Dominic Hargreaves Thu, 14 Apr 2011 18:59:52 +0100 perl (5.12.3-2) experimental; urgency=low * Fix inconsistent mix of literal tabs and spaces in debian/perl.postinst * Activate the 'perl-major-upgrade' trigger on major version upgrades to notify other packages that might need to be restarted, or take some other action (Closes: #230308) * Merge 5.10.1-17 and 18 from unstable: + Include information about preparing the repository for use with topgit in debian/README.source + Add Conflicts, Replaces, Provides for libfile-path-perl which is packaged separately (Closes: #617985) + Include the full text of the license statements for BSD-style licenses in debian/copyright, rather than the deprecated practice of referring to an external copy * Don't include full path for md5sum in perl-modules maintainer scripts (thanks, Lintian) * debian/rules: clean: remove .bak files created in cpan/DB_File/t * Update Standards-Version to 3.9.1 (no changes) -- Dominic Hargreaves Sun, 20 Mar 2011 22:33:48 +0000 perl (5.12.3-1) experimental; urgency=low [ Dominic Hargreaves ] * Add Conflicts, Replaces, Provides for libencode-perl which is being packaged separately. (Closes: #608385) [ Niko Tyni ] * New upstream release. + [SECURITY] CVE-2010-2761 CVE-2010-4410 CVE-2010-4411: fixes CGI.pm MIME boundary and multiline header vulnerabilities. (Closes: #606995) + Update the conflict versions for libmodule-corelist-perl, libmodule-build-perl, and libcgi-pm-perl. * Don't traverse the current directory with "enc2xs -C". (Closes: #603686) * Use versioned breaks instead of versioned conflicts, as suggested by lintian. The sole exception is safe-rm, whose older versions we never want unpacked at the same time because they break maintainer scripts. -- Niko Tyni Sun, 06 Feb 2011 11:31:38 +0200 perl (5.12.2-2) experimental; urgency=low * Merge 5.10.1-15 and -16 from unstable: + Include the Text::Tabs license in debian/copyright. Thanks to "v.nix.is". (Closes: #596844) + Downgrade the 'make' recommendation to a suggestion to avoid pulling it in by default after all. (Closes: #596734) (Reopens: #293908) + Squelch useless locale warnings during package maintainer scripts. (Closes: #508764) + Improve LC_NUMERIC documentation. (Closes: #379329) + Fix sprintf not to ignore LC_NUMERIC with constants. (Closes: #601549) + Fix stack pointer corruption in pp_concat() with "use encoding". (Closes: #596105) * Unapply the debian/use_gdbm patch, obsolete since 5.8.4. * Fix h2ph header generation with GCC 4.5. Upstream patch by Robin Barker. (Closes: #599933) -- Niko Tyni Tue, 02 Nov 2010 11:34:32 +0200 perl (5.12.2-1) experimental; urgency=low * New upstream release. -- Niko Tyni Tue, 07 Sep 2010 10:13:56 +0300 perl (5.12.2~rc1-1) experimental; urgency=low * New upstream release candidate. + includes the arm alignment fix (Closes: #289884) + upgrade the conflict versions of updated modules. + put the libfile-spec-perl conflict version in line with the separate package, which uses four digits. (Closes: #595121) * Merge 5.10.1-13 and -14 from unstable, most notably: + the GNU/Hurd @INC fix (Closes: #587901) + the gcc 4.5 build fix (Closes: #588799) + the binNMU regexp fix (Closes: #585678) + remove the Provides entries for the deprecated core modules and update their conflict versions. * Remove the libshell-perl recommendation, its deprecation has been postponed for 5.14. (See #580034) -- Niko Tyni Wed, 01 Sep 2010 21:38:34 +0300 perl (5.12.1-1) experimental; urgency=low * New upstream release. + upgrade the conflict versions of updated modules. * Transition away from the deprecated core modules (Shell, Switch, Pod::Plainer, Class::ISA). (Closes: #580034) + Recommend the now separately packaged versions + Modify the deprecation warnings to point to the Debian packages instead of CPAN. * Break libmarc-charset-perl (<< 1.2) because the earlier versions were sensitive to Perl ABI changes like use64bitint. (Closes: #579521) -- Niko Tyni Mon, 17 May 2010 16:16:54 +0300 perl (5.12.0-2) experimental; urgency=low * Revert -Dusemorebits but leave -Duse64bitint to aim for consistency across all the Debian architectures. See the discussion at http://lists.debian.org/debian-devel/2010/05/msg00078.html + fixes powerpc test failures due to non-IEEE compliant long doubles. (Closes: #578295) + use gcc-4.3 on sparc to work around a numeric conversion bug in 4.4. (Closes: #577016) * Downgrade the optimization of sv.c on arm due to a gcc-4.4 bug. (Closes: #580334) * Fix the new libterm-readline-gnu-perl related failure in perl5db.t and version the build conflict back to (<< 1.17). -- Niko Tyni Tue, 11 May 2010 22:53:31 +0300 perl (5.12.0-1) experimental; urgency=low * New upstream release. + POD markup in the NAME section is now suppressed by podlators, fixing garbled whatis information for perlpacktut. (Closes: #304143) + "runaway format" errors have been removed. (Closes: #77707) + Pod::Perldoc no longer generates broken markup for the last perlfunc and perlvar entries. (Closes: #558147) + Data::Dumper no longer crashes on an invalid push call. (Closes: #513935) * Move CPANPLUS::Config::System to the right source directory. * Fix CPANPLUS test failures when $HOME does not exist. (Closes: #577011) * Build-Conflict with libfile-sharedir-perl to avoid Module-Build test failures due to ABI incompatibilities. (Closes: #577018) * Point Vcs-* fields to the experimental git repository. * Set -Dusemorebits on all architectures to support long doubles. + apparently fixes use64bitint test failures on sparc. (Closes: #577016) -- Niko Tyni Fri, 16 Apr 2010 23:22:01 +0300 perl (5.12.0~rc3-1) experimental; urgency=low * New upstream release candidate. * Update conflicts/replaces/provides entries for the numerous separately packaged modules. * Unversion the libterm-readline-gnu-perl build conflict again due to a new failure mode in lib/perl5db.t. * Verify at build time that perl-base stays self contained. + re.so (and attributes.so) now need to go in perl-base * Use 64 bit integers (-Duse64bitint) on all platforms. (Closes: #310995) -- Niko Tyni Tue, 06 Apr 2010 20:08:41 +0300 perl (5.10.1-20) unstable; urgency=medium [ Niko Tyni ] * [SECURITY] CVE-2011-1487: taint laundering in lc, uc, et al. (Closes: #622817) * Make the package fail to build instead of silently dropping the DB_File module if -ldb doesn't work. (See #622916) [ Dominic Hargreaves ] * debian/config.debian: never use , even if libbsd-dev is installed. Inspired by a similar Ubuntu change and merged from perl 5.12.3-3. -- Dominic Hargreaves Fri, 22 Apr 2011 10:29:41 +0100 perl (5.10.1-19) unstable; urgency=low * Remove Eugene from Uploaders as requested * debian/config.debian: pass multiarch paths to the build (if available) so that we're able to find libraries needed to build. Thanks to Steve Langasek. (Closes: #620189) -- Dominic Hargreaves Fri, 01 Apr 2011 09:09:17 +0100 perl (5.10.1-18) unstable; urgency=low * Add Conflicts, Replaces, Provides for libencode-perl which is being packaged separately. (Closes: #608385) * Include information about preparing the repository for use with topgit in debian/README.source * Fix h2ph header generation with GCC 4.5. Upstream patch by Robin Barker. (Closes: #599933) * Override Lintian error wrong-path-for-interpreter for ./usr/share/perl/5.10.1/Class/ISA.pm which is not expected to be executed * Add Conflicts, Replaces, Provides for libfile-path-perl which is packaged separately (Closes: #617985) * Include the full text of the license statements for BSD-style licenses in debian/copyright, rather than the deprecated practice of referring to an external copy -- Dominic Hargreaves Tue, 15 Mar 2011 20:59:04 +0000 perl (5.10.1-17) unstable; urgency=medium * [SECURITY] CVE-2010-2761 CVE-2010-4410 CVE-2010-4411: fix CGI.pm MIME boundary and multiline header vulnerabilities. (Closes: #606995) -- Niko Tyni Fri, 07 Jan 2011 13:57:42 +0200 perl (5.10.1-16) unstable; urgency=low * Improve LC_NUMERIC documentation. (Closes: #379329) * Fix sprintf not to ignore LC_NUMERIC with constants. (Closes: #601549) * Fix stack pointer corruption in pp_concat() with "use encoding". (Closes: #596105) -- Niko Tyni Tue, 02 Nov 2010 10:17:28 +0200 perl (5.10.1-15) unstable; urgency=low * Include the Text::Tabs license in debian/copyright. Thanks to "v.nix.is". (Closes: #596844) * Downgrade the 'make' recommendation to a suggestion to avoid pulling it in by default after all. (Closes: #596734) (Reopens: #293908) * Put the libfile-spec-perl conflict version in line with the separate package, which uses four digits. (Closes: #595121) * Squelch useless locale warnings during package maintainer scripts. (Closes: #508764) -- Niko Tyni Wed, 06 Oct 2010 21:45:00 +0300 perl (5.10.1-14) unstable; urgency=medium * Don't override -DDEBIAN on GNU/Hurd, fixing @INC breakage and other things. Thanks to Samuel Thibault. (Closes: #587901) * Fix builds on gcc 4.5 by passing PERL_PATCHLEVEL_H_IMPLICIT to cpp. Thanks to Loïc Minier and Paul Brook. (Closes: #588799) * Fix builds when the name of the current directory contains regexp metacharacters, particularly binNMUs with current sbuild versions. Thanks to Kyle Moffett and Ansgar Burchardt. (Closes: #585678) * Releasing with 'medium' urgency due to an RC bug fix. -- Niko Tyni Wed, 04 Aug 2010 13:52:05 +0300 perl (5.10.1-13) unstable; urgency=low * [SECURITY] CVE-2010-1974: Update to Safe-2.25, fixing code injection and execution vulnerabilities. (Closes: #582978) * Add conflicts/replaces/provides for the new libswitch-perl, libclass-isa-perl, and libpod-plainer-perl packages. (See #580034) * Fix a tell() crash on bad arguments. (Closes: #578577) * Fix a format/write crash. (Closes: #579537) * Prevent gcc from optimizing the u32align check away, finally fixing MD5 on armel. Thanks to Marc Pignat. (Closes: #289884) * Fix a test failure in CGI/t/fast.t when FCGI is available. -- Niko Tyni Sun, 30 May 2010 11:09:48 +0300 perl (5.10.1-12) unstable; urgency=low * Fix the location of an Archive::Tar test file. * Update conflict versions on libscalar-list-utils-perl, libxsloader-perl, and libnet-perl. * Properly include the 5.10.0 site directories on @INC as per Perl policy. (Closes: #575030) * Fix an errno stringification bug in taint mode. (Closes: #574129) * Move Config_heavy.pl into perl-base and unapply the DynaLoader changes introduced in 5.10.1-5. (Closes: #575308) * Remove B and B::Deparse from perl-base, they haven't worked without the perl package for a long time if ever. (Closes: #576153) * Upgrade to Standards-Version 3.8.4 with no changes. -- Niko Tyni Sun, 11 Apr 2010 22:55:05 +0300 perl (5.10.1-11) unstable; urgency=low * Unapply obsolete Debian patches: - Object::Accessor POD patch (fixed in 5.10.1) - "missing /etc/hosts" (fixed in 5.10.1) - "arm fp non-IEEE rounding" (fixed in armel) - "ppc/ia64 optimization upgrade" (no-op since 5.10.0-5) - "arm optimization downgrade" (fixed sometime after gcc 4.0) * Make perl-base conflict with older versions of safe-rm to unbreak maintainer scripts on partial upgrades. (Closes: #566080) * Update debian/README.source to recommend using quilt in NMUs. * Include upstream commit information in patchlevel.h. * Upload to unstable. -- Niko Tyni Wed, 03 Feb 2010 22:38:26 +0200 perl (5.10.1-10) experimental; urgency=low * Add conflicts/replaces/provides for libtime-local-perl. (Closes: #567188) * Really add the new perl-modules README.Debian. (Closes: #565721) * Make libcgi-fast-perl depend on perl (<< 5.10.2~) because it's now in the core directory. (Closes: #567092) * Switch to dpkg v3 source format. + remove the obsoleted quilt-series-but-no-build-dep lintian override. * Describe the applied Debian patches in patchlevel.h (and therefore `perl -V' output too.) (Closes: #567489) * Include minimal copyright and license information on the Debian packaging in debian/copyright. * Don't try to ship Changes5.* or patching.pod in perl-doc anymore, they have been removed upstream for 5.10.1. * Upload to experimental to verify that the source format changes work -- Niko Tyni Fri, 29 Jan 2010 21:52:06 +0200 perl (5.10.1-9) unstable; urgency=low * Move CGI/Fast.pm back to the core directory so that libcgi-pm-perl can override it. (Closes: #563713) * Add a README.Debian file to perl-modules. * Other packages should not depend on perl-modules but perl; clarify this in the perl-modules long description and the new README.Debian file. (Closes: #552052) * Fix a NULL pointer dereference when looking for a DESTROY method. (Closes: #564074) * Add conflicts/replaces/provides for libfile-spec-perl. (Closes: #556789) + note that perl-base contains part of libfile-spec-perl, so it has a conflicts entry for earlier versions but does not provide and replace it. The rest of the functionality is in perl-modules. -- Niko Tyni Sat, 16 Jan 2010 22:13:15 +0200 perl (5.10.1-8) unstable; urgency=medium * Fix another perl-suid/i386 dependency bug by using dpkg-shlibdeps correctly. (Closes: #556847) * Add Conflicts/Replaces/Provides for libthread-queue-perl. (Closes: #556793) -- Niko Tyni Sat, 21 Nov 2009 21:01:14 +0200 perl (5.10.1-7) unstable; urgency=medium * Only run dpkg-shlibdeps when all the shlibs files have been created. This fixes perl-suid dependencies on i386. (Closes: #552797) * Set myself as Maintainer and remove Brendan O'Dea from the control file at his request. * Make the threads-shared test suite more robust, fixing failures on hppa. (Closes: #554218) -- Niko Tyni Fri, 06 Nov 2009 22:18:07 +0200 perl (5.10.1-6) unstable; urgency=high * Added /me to Uploaders. * Apply upstream fix to resolve some crash in pattern matching against non-Unicode tainted string. This fixes CVE-2009-3626. (Closes: #552291) -- Eugene V. Lyubimkin Thu, 22 Oct 2009 23:21:24 +0300 perl (5.10.1-5) unstable; urgency=low * Make DynaLoader work without Config_heavy.pl again. (Closes: #549170) -- Niko Tyni Thu, 01 Oct 2009 10:52:33 +0300 perl (5.10.1-4) unstable; urgency=low * Temporarily work around an internal compiler error in Devel::PPPort on ia64+gcc-4.3. (Closes: #548943) -- Niko Tyni Tue, 29 Sep 2009 22:28:23 +0300 perl (5.10.1-3) unstable; urgency=low * Upload to unstable. -- Niko Tyni Fri, 25 Sep 2009 21:47:47 +0300 perl (5.10.1-2) experimental; urgency=low * reinstate Debian change to ExtUtils::MakeMaker for now to allow overriding PREFIX at installation time again. (Closes: #545904) * Separate Archive::Tar instance error strings from each other. (Closes: #539355) * Fix a crash with \G on first match. (Closes: #545234) -- Niko Tyni Tue, 15 Sep 2009 21:23:45 +0300 perl (5.10.1-1) experimental; urgency=low * New upstream release. * Remove traces of libcpan-plus-perl provides/conflicts/replaces in favour of libcpanplus-perl. * Clean an accidentally duplicated libcpanplus-perl conflict entry. * Add conflicts/replaces/provides for + libio-compress-bzip2-perl * Don't test .ph file syntax when DEB_BUILD_OPTIONS contains "nocheck" or "x-perl-notest" * Replace /usr/share/doc symlinks with separate changelog and copyright files in the arch-independent packages (perl-doc and perl-modules) to make sure they correspond to the right package version. (Closes: #536384, #542137) * Add support for abstract sockets. Thanks to Lubomir Rintel. (Closes: #329291, #490660) * In versions older than 5.10.0-24, CPANPLUS system configuration would be erroneously saved under /usr/share. Avoid loss of local configuration by copying it to /etc/perl/CPANPLUS/Config/System.pm on upgrades before the new package overwrites it. (Closes: #543910) * Add gcc predefined macros to $Config{cppsymbols} on GNU/Hurd. Thanks to Samuel Thibault. (Closes: #544307) * Fix autodie on hppa by allowing for flock returning EAGAIN instead of EWOULDBLOCK. (Closes: #543731) * Move /usr/share/perl/5.10/unicore/To into perl-base. (See #543149) -- Niko Tyni Thu, 03 Sep 2009 23:41:17 +0300 perl (5.10.1~rc2-1) experimental; urgency=low * New upstream release candidate. + Archive::Tar now supports bzip2 files. (Closes: #457326) + Module::CoreList now includes ExtUtils::Miniperl. (Closes: #508696) + ExtUtils::Manifest now handles whitespace correctly. (Closes: #538005) + CGI.pm unwanted UTF-8 conversion in URLs is fixed. (Closes: #516129) + FileCache needs symbolic references, documentation updated. (Closes: #318579) + perldoc.pod now references perlpod.pod. (Closes: #479638) + Long regular expressions work again. (Closes: #527039) + File::Temp::tempfile now supports TMPDIR. (Closes: #351373) + File::Temp now works with ACLs. (Closes: #531770) + IPC::Cmd now works with arrayrefs. (Closes: #533380) + perlpod.pod documentation fix: =encoding affects the whole document. (Closes: #527023) + CPAN.pm no longer passes make arguments through to Build. (Closes: #508183) + using the same lexically scoped variable in a foreach loop twice no longer segfaults. (Closes: #511589) + unwanted filehandle stringification in CGI.pm is fixed. (Closes: #483144) + script_name() in CGI.pm is fixed. (Closes: #493965) + revision information removed from perlfaq whatis entries (Closes: #402046) * Updated the conflicts list for the various dual-lived modules. * Added conflicts/replaces/provides for + libio-compress-perl + libcompress-raw-bzip2-perl + libthreads-perl + libthreads-shared-perl + libparse-cpan-meta-perl + libparent-perl + libautodie-perl * Update the search path in the h2ph check. Thanks to Marius Vollmer. * Build-Depend on libbz2-dev instead of using the bundled library in ext/Compress-Raw-Bzip2. -- Niko Tyni Wed, 19 Aug 2009 23:39:54 +0300 perl (5.10.0-25) unstable; urgency=low * Fix File::Copy::copy with pipes on GNU/kFreeBSD. Thanks to Petr Salinger. (Closes: #537555) * Module::Build::Compat makefiles now support 'distclean'. Thanks to Ryan Niebur. (Closes: #527993) * Honor TMPDIR when open()ing an anonymous temporary file. Thanks to Norbert Buchmuller. (Closes: #528544) * Move to libdb4.7. (Closes: #536443) -- Niko Tyni Sat, 15 Aug 2009 23:24:30 +0300 perl (5.10.0-24) unstable; urgency=low * Change the perl-debug package section and priority to debug/extra. * POD fix for Module::Build::Cookbook. * Fix a memory leak with the map operator. (Closes: #528332) * Add gcc predefined macros to $Config{cppsymbols} on GNU/kFreeBSD. (Closes: #533098) * Fix CPAN and CPANPLUS configuration to consistently use the site directories with both Build.PL and Makefile.PL. (Closes: #533707) * Save local versions of CPANPLUS::Config::System into /etc/perl. (See #533707) -- Niko Tyni Wed, 08 Jul 2009 23:21:31 +0300 perl (5.10.0-23) unstable; urgency=high * Don't try to check nonexistent .ph files: the kFreeBSD port doesn't have . (Closes: #526974) * [SECURITY] CVE-2009-1391: Fix a buffer overflow in Compress::Raw::Zlib. (Closes: #532736) -- Niko Tyni Fri, 12 Jun 2009 21:26:18 +0300 perl (5.10.0-22) unstable; urgency=low * Make Archive::Extract work with recent versions of GNU tar. (Closes: #526822) -- Niko Tyni Sun, 03 May 2009 22:09:50 +0300 perl (5.10.0-21) unstable; urgency=low * Make the perl package recommend make because /usr/bin/cpan uses it. (Closes: #293908) * Add a .NOTPARALLEL debian/rules target to explicitly disable parallel builds. (Closes: #523940) * Squelch 'Constant subroutine ... undefined' warnings from .ph files. (Closes: #379757) * Elaborate PERL_SYS_* documentation a bit. * Fix a segmentation fault with array ties. (Closes: #525180) * Improve Archive::Tar error reporting on short corrupted archives. (Closes: #521613) * Fix use of -section in Pod::Usage and =over, =back. (Closes: #519785) * Archive::Tar now validates archives created by SunOS and HP-UX tar. (Closes: #516472) * XS_VERSION_BOOTCHECK may break if $VERSION is a long floating point number, so recommend using a string instead. (Closes: #482139) -- Niko Tyni Sun, 03 May 2009 15:08:58 +0300 perl (5.10.0-20) experimental; urgency=low * Manage debian/patches with TopGit as documented in README.source. + tweak patch descriptions to consistently have a one-line subject * Fixes cherry-picked from upstream: + Elaborate a confusing cross-reference in 'perldoc -f sort'. (Closes: #405470) + Fix a crash on binary-or lvalue operation on qr//. (Closes: #483150) + Fix h2xs enum handling with C++ comments. (Closes: #320286) + Fix Data::Dumper::new() argument checking. (Closes: #512036) + setpgrp() no longer corrupts the stack. (Closes: #512796) + Document PERL_SYS_* macros. (Closes: #522099) + Fix pod2man to escape backslashes in .IX entries. (Closes: #521256) + Fix h2xs enum handling. (Closes: #502297) + Add a SEE ALSO section to perldoc.pod. (Closes: #444932) * Activate delayed-branch optimizations on hppa and mips again. * Disable ext/threads/shared/t/waithires.t on m68k due to missing TLS. (Closes: #517938) * Make perlivp skip include directories in /usr/local. (Closes: #510895) * Wrap overlong dependency lines in debian/control. * Add conflicts/replaces/provides for + libcpanplus-perl (Closes: #516289) + libsys-syslog-perl (Closes: #498885) + libcompress-zlib-perl + libcompress-raw-zlib-perl + libio-compress-zlib-perl + libio-compress-base-perl + libpod-escapes-perl * Version the build-conflict with libterm-readline-gnu-perl. (Closes: #498807) * Remove the Etch->Lenny upgrade specific conflicts introduced in 5.10.0-14. * Remove the obsolete replacement of libclass-multimethods-perl. * Remove the obsolete conflict with libapache-mod-perl. * Include copyright and license information for + the Unicode database (Closes: #493421) + the embedded zlib source in Compress::Raw::Zlib + the Cwd module + the C parts of File::Glob * Test .ph files during the build phase. Thanks to Kees Cook for the patch. (Closes: #511848) + fix h2ph to find again. (Closes: #522673) * Various lintian fixes and overrides, most importantly: + Use ${binary:Version} for arch:any->any dependencies. + Disable zlib bundling in Compress::Raw::Zlib. * needs a build-dependency on zlib1g-dev | libz-dev. * Include sysexits.ph. (Closes: #505289) * Upgrade to Standards-Version 3.8.1. * Upload to experimental to test the new h2ph checks. -- Niko Tyni Mon, 13 Apr 2009 00:01:02 +0300 perl (5.10.0-19) unstable; urgency=low * Downgrade the perl-doc recommendation to a suggestion. (Closes: #496770, #442805) * Make File::Temp warn on cleaning up the current working directory at exit instead of bailing out. (Closes: #479317) * Fix $? when dumping core. (Closes: #509041) * Fix a memory leak with Scalar::Util::weaken(). (Closes: #506324) * [SECURITY] "second half of CVE-2007-4829": Archive::Tar no longer follows symlinks when unpacking. Upstream fix backported by Ubuntu. (Closes: #509802) -- Niko Tyni Thu, 01 Jan 2009 14:15:07 +0200 perl (5.10.0-18) unstable; urgency=high * [SECURITY] CVE-2005-0448 revisited: File::Path::rmtree no longer allows creating of setuid files. (Closes: #286905) -- Niko Tyni Fri, 21 Nov 2008 00:49:57 +0200 perl (5.10.0-17) unstable; urgency=low * Fix 'Unknown error' messages with attribute.pm. (Closes: #488088) * Add conflicts/replaces/provides for podlators-perl. (Closes: #503123) * Raise the timeout of ext/threads/shared/t/stress.t to accommodate slower build hosts. (Closes: #501970) * Stop t/op/fork.t relying on rand(). (Closes: #317843) * Fix two regexp memory leaks. (Closes: #503975) -- Niko Tyni Sat, 01 Nov 2008 14:48:22 +0200 perl (5.10.0-16) unstable; urgency=low * Revert the perldoc "pod2man --utf8" change from 5.10.0-14. The --utf8 option may break for POD documents with a wrong or missing =encoding. (Reopens: #492037) * Make Pod::Man use the PerlIO UTF-8 output layer when --utf8 is enabled. (See #500210) * Revert an incorrect substitution optimization introduced in 5.10.0. (Closes: #501178) -- Niko Tyni Sun, 05 Oct 2008 16:00:41 +0300 perl (5.10.0-15) unstable; urgency=low * Fix Sys::Syslog slowness when logging with non-native mechanisms. (Closes: #498776) * Fix memory corruption with in-place sorting. (Closes: #498769) * Pod::Man no longer remaps the code point for non-breaking space. (Closes: #500210) -- Niko Tyni Mon, 29 Sep 2008 15:06:37 +0300 perl (5.10.0-14) unstable; urgency=low * Make perl-base Pre-Depend on dpkg (>= 1.14.20), whose Essential scripts don't break when liblocale-gettext-perl and perl-base aren't binary compatible. (Closes: #488300) * Fix tainted usage of $ENV{TMPDIR} as an sprintf format in CGI.pm. (Closes: #494679) * Disable ext/threads/shared/t/stress.t on m68k for now. (Closes: #495826) * Improve Etch->Lenny upgrades by making perl-base conflict with those XS module packages in Etch that lacked the required perlapi-* dependency. (Closes: #494779) * Upgrade to Pod::Man 2.18 to get the 'pod2man --utf8' functionality in lenny. (Closes: #480997) + also fixes dash overescaping with non-ascii characters. (Closes: #480565) + headings starting with groff special characters are now handled correctly. (Closes: #448204) * Make /usr/bin/perldoc invoke pod2man with the "--utf8" option if it detects a new enough Pod::Man version. (Closes: #492037) -- Niko Tyni Mon, 08 Sep 2008 20:48:07 +0300 perl (5.10.0-13) unstable; urgency=low * Fix the libpod-simple-perl conflict version number. (Closes: #494272) -- Niko Tyni Fri, 08 Aug 2008 10:47:39 +0300 perl (5.10.0-12) unstable; urgency=low * Acknowledge NMU, thanks Bastian. * Bugfix release targeted for lenny. * Upgrade libfile-temp-perl conflict to (<= 0.18). (Closes: #480719) * Add upstream integration status information into debian/patches where applicable. * Add Vcs-Git and Vcs-Browser information in debian/control. * Fix Math::BigFloat::sqrt() breaking with too many digits. (Closes: #417528) * Remove numeric overloading of Getopt::Long callback functions. (Closes: #479434) * Support GNU/Hurd and GNU/kFreeBSD in Module::Build and ExtUtils::CBuilder. (Closes: #480385, #480375) * Fix a segmentation fault occurring in the mod_perl2 test suite. (Closes: #475498) * Fix the PerlIO_teardown prototype to suppress a compiler warning. (Closes: #479540) * Integrate some documentation fixes from upstream. (Closes: #357663, #443733, #412542) * Mention the relation between 'eval "require Foo"' and PERL_DL_NONLAZY in the 'perldoc -f eval' documentation . (See #479711). * Fix a typo in perlpodspec.pod. (Closes: #447830) * Fix 'constant subroutine SEEK_* redefined' warnings when using the Fcntl and POSIX modules together. (Closes: #479957) * Add conflicts/replaces/provides for libpod-simple-perl. (Closes: #481956) * Fix crashes on @ISA fiddling. (Closes: #480480) * Fix building with DEB_BUILD_OPTIONS=noopt. (Closes: #482110) * Remove the __LONG_MAX__ kludge introduced in 5.8.1-1, it shouldn't be needed anymore and emits warnings. (Closes: #480428) * Make the '-x' test work with 'use filetest q/access/'. (Closes: #483734) * Update the description of the perl-base package. Thanks to Justin B Rye. (Closes: #484681, #144193) * Move /usr/share/perl/5.10/unicore/lib into perl-base. (Closes: #480533) * Add conflicts/replaces/provides for libextutils-parsexs-perl. (Closes: #485416) -- Niko Tyni Tue, 05 Aug 2008 14:17:05 +0300 perl (5.10.0-11.1) unstable; urgency=low * Non-maintainer upload. * Fix lost reference in PerlIO::via::via. (closes: #479698) -- Bastian Blank Tue, 15 Jul 2008 14:48:44 +0000 perl (5.10.0-11) unstable; urgency=high * [SECURITY] File::Path::rmtree() no longer makes symlink targets world-writable. Patch by Ben Hutchings. (Closes: #487319) -- Niko Tyni Sat, 21 Jun 2008 15:18:50 +0300 perl (5.10.0-10) unstable; urgency=low * Integrate NMU, thanks Bastian. * Make h2ph allow the quote mark delimiter also for those #include directives chased with "h2ph -a". (Closes: #479762) * Adjust manual page sections in Module::Build::Base for the Debian Perl policy. (Closes: #479460) * Disable the "v-string in use/require is non-portable" warning again. (Closes: #479863) -- Niko Tyni Thu, 08 May 2008 14:32:30 +0300 perl (5.10.0-9.1) unstable; urgency=low * Non-maintainer upload. * Move Hash::Util into perl-base. (closes: #479202) -- Bastian Blank Tue, 06 May 2008 11:26:01 +0000 perl (5.10.0-9) unstable; urgency=low * Upload to unstable. -- Brendan O'Dea Thu, 01 May 2008 01:11:40 +1000 perl (5.10.0-8) experimental; urgency=low * Apply upstream change 33388 to fix a segmentation fault with 'debugperl -Dm'. (Closes: #474613) * Move Tie::Hash into perl-base, as it's now needed by POSIX.pm. (Closes: #475909) -- Niko Tyni Sun, 13 Apr 2008 23:40:04 +0300 perl (5.10.0-7) experimental; urgency=low * New comaintainer. * Make perl replace libmodule-corelist-perl (<< 2.14-2) because of /usr/bin/corelist. (Closes: #470385) * Update the libmodule-corelist-perl conflict version to 2.13-1. (Closes: #471515) * Apply upstream change 33554 to make IO::Socket::INET able to resolve "udp" without /etc/protocols. * Make perl recommend netbase. Along with the new fallback defaults for the most common protocols, this should be a good compromise for the "IO::Socket::INET needs netbase" problem. (Closes: #185244) -- Niko Tyni Sun, 30 Mar 2008 21:09:46 +0300 perl (5.10.0-6) experimental; urgency=low * More fiddling with libarchive-tar-perl conflict version on perl-modules plus addition of replaces to perl due to ptar, ptardiff. Thanks to Niko Tyni for picking this up (closes: #466874). -- Brendan O'Dea Mon, 10 Mar 2008 00:40:00 +1100 perl (5.10.0-5) experimental; urgency=low * Really bump libarchive-tar-perl conflict version (closes: #466874). * Fix typo in libmodule-corelist-perl conflict version (closes: #467112). * Add conflicts/replaces/provides for libxsloader-perl (closes: #468121). * Include debug info for all ELF files in /usr/lib/debug (closes: #468484). * Apply upstream change 33287 (removes non-null contraint, closes: #467072). * Regex engine in new version is no longer recursive--stops some regexes from blowing the stack and segfaulting (closes: #466298). -- Brendan O'Dea Sun, 09 Mar 2008 19:54:55 +1100 perl (5.10.0-4) experimental; urgency=low * New version fixes RT segfault in Text::Tabs (closes: #400733). * New version fixes segfaulting oneliner (closes: #336920). * Apply upstream change 33127: File::Find bydepth doc (closes: #460922). * Convert upstream Changes file to UTF-8. * Bump libarchive-tar-perl conflict version (closes: #466874). * Fix spelling of libmodule-pluggable-perl in control file (closes: #467007). -- Brendan O'Dea Fri, 22 Feb 2008 23:47:52 +1100 perl (5.10.0-3) experimental; urgency=low * New version retains pos after localizing target (closes: #49669). * Add conflicts/replaces/provides for libperl-version (closes: #460915). * Correct typo in CGI.pm documentaion (closes: #459841). * Modify MakeMaker install target dependencies to facilitate parallel makes. -- Brendan O'Dea Mon, 28 Jan 2008 11:58:25 +1100 perl (5.10.0-2) experimental; urgency=low * Fix libperl-dev depends (closes: #458135). * Skip failing Sys::Syslog test when /dev/log unavailable (closes: #457760). -- Brendan O'Dea Sun, 30 Dec 2007 12:51:30 +1100 perl (5.10.0-1) experimental; urgency=low * New upstream version. * perlcc has been removed (closes: #162950, #88463). * warn with non-ascii and I18N::Langinfo appears fixed (closes: #343831). * Replace use of Source-Version with source:Version. * Remove /etc/Net (incorrectly installed by perl 5.8, see #425850) on upgrade and removal (closes: #453915, #450694). * Add build-conflict for libterm-readline-gnu-perl to avoid a spurious test failure of perl5db.pl * Update perl conflict versions for: libdigest-sha-perl (5.45) and libtime-piece-perl (1.12). * Update perl-modules conflict versions for: libmodule-corelist-perl (2.12), libio-zlib-perl (1.07), libarchive-tar-perl (1.37.1), libextutils-cbuilder-perl (0.21), libmodule-build-perl (0.2808.1), libmodule-load-perl (0.12), liblocale-maketext-simple-perl (0.18), libparams-check-perl (0.26), libmodule-plugable-perl (3.6), libmodule-load-conditional-perl (0.22) and libcpan-plus-perl (0.83.09). -- Brendan O'Dea Sat, 22 Dec 2007 22:27:01 +1100 perl (5.8.8-12) unstable; urgency=high * SECURITY [CVE-2007-5116] (closes: #450456): Apply patch from Will Drewry and Tavis Ormandy of the Google Security Team to fix a UTF-8 related heap overflow in Perl's regular expression compiler, probably allowing attackers to execute arbitrary code by compiling specially crafted regular expressions. * Support "nocheck" option in DEB_BUILD_OPTIONS (closes: #449549). * Suppress Configure test for ualarm() so that setitimer() emulation is used (closes: #448965). -- Brendan O'Dea Thu, 08 Nov 2007 08:42:01 +1100 perl (5.8.8-11.1) unstable; urgency=high * Non-maintainer upload. * Urgency high because of RC bug fix. * Fix h2ph to generate a correct check to distinguish i386/amd64 systems. (Closes: #443785) -- Faidon Liambotis Wed, 17 Oct 2007 16:26:33 +0300 perl (5.8.8-11) unstable; urgency=low * Remove arm and alpha special cases (closes: #443353). -- Brendan O'Dea Fri, 21 Sep 2007 07:24:08 +1000 perl (5.8.8-10) unstable; urgency=low * Add support for SH4 arch (closes: #424867). * Add --strip-unneeded when stripping shared objects. * Include stripped debugging symbols for perl and libperl.so in /usr/lib/debug in perl-debug package (closes: #433631). * Switch to libdb4.6 (closes: #427517). * Re-instate libcgi-fast-perl, relocating module to vendor directory (closes: #443236). -- Brendan O'Dea Thu, 20 Sep 2007 19:47:14 +1000 perl (5.8.8-9) unstable; urgency=low * Fix perl-base replaces after move of PVA.pl etc. * Remove ancient conflicts on perl-transition packages (perl-5.004, etc). * Bump dependency of perl-modules on perl to version after move of modules to perl-base (closes: #377385). * Pod/Man.pm: preserve quote chars in verbatim paragraphs (closes: #393810). * Fix typo in Locale::Maketext::TPJ13 docs (closes: #320060). -- Brendan O'Dea Tue, 18 Sep 2007 17:32:21 +1000 perl (5.8.8-8) unstable; urgency=low * Include unicore/{PVA,Exact,Canonical}.pl in perl-base (closes: #437142). * Install libnet.cfg in /etc/perl/Net (closes: #425850). * Update makedepend.SH from perl-current to handle changed preprocessor output from new gcc (closes: #381703). * Fix CGI::upload when fileno == 0 (closes: #383378). * Abort CPAN setup if stdin is not a tty (closes: #246511). * Bump gcc build-depends to 4.2 and remove workaround added for register declaration problems in g++ 4.1 (closes: #378399). * Replace '_' with '.' in conflict version for libattribute-handlers-perl (closes: #403249). * Fix hang when using study + taint (closes: #415296). * Remove libcgi-fast-perl as a separate package (closes: #422592). * Pod/Man.pm: escape backslashes in index entries (closes: #440448). * Pod/Html.pm: Fix handling of nested definition lists (closes: #423168). -- Brendan O'Dea Mon, 17 Sep 2007 03:42:48 +1000 perl (5.8.8-7) unstable; urgency=low * Apply optimisation for File::Spec->abs2rel suggested by joeyh (closes: #376658). * Patch perl5db.pl to cope with lines from a remote socket requiring multiple calls to recv (fixes a problem reported by EPIC folks). * Merge NMU. [Marc 'HE' Brockschmidt] (closes: #398331) * Completly replace libnet-perl: + Integrate some patches for the Net:: modules + debian/control: Update to replace the last libnet-perl version. + Update configuration mechanism so that /etc/perl/Net/libnet.cfg sources in /etc/libnet.cfg if it exists, otherwise the configuration is stored there. This saves us trouble from converting debconf-managed /etc/libnet.cfg to a dpkg conffile -- Brendan O'Dea Sun, 19 Nov 2006 01:07:26 +1100 perl (5.8.8-6.1) unstable; urgency=high * Non-maintainer upload to fix Failure To Build From Source in hppa, mips and mipsel architectures. * Added debian/patches/74_debian_hppa_mips_optim, that forces pp_pack.c to be compiled without the delayed-branch optimization option. (Closes: #374396) -- Margarita Manterola Sun, 6 Aug 2006 11:50:18 -0300 perl (5.8.8-6) unstable; urgency=low * Work around g++-4.1 issue with register parameter declarations. * Add errno.ph (simple wrapper around Errno module). -- Brendan O'Dea Sun, 11 Jun 2006 22:38:12 +1000 perl (5.8.8-5) unstable; urgency=low * Correctly identify arch-specific modules in ext/ where the .pm files are under lib. Adjust perl-base.files (closes: #369481). * Ensure that POSIX/SigAction is kept with the rest of the POSIX module under archlib. * Apply upstream change 26536: add INSTALL{VENDOR,SITE}SCRIPT macros (closes: #362949). * [Don Armstrong] Revert part of upstream change 24524 to always use PERLRUNINST when building perl modules (closes: #357264). -- Brendan O'Dea Sat, 3 Jun 2006 17:06:45 +1000 perl (5.8.8-4) unstable; urgency=low * Preserve timestamps in /usr/share/doc. * Revert Sys::Syslog change (see: #345157). * Fix typo in perlsec(1) (closes: #358455). * Change build-dep on procps to "procps|hurd" (closes: #357699). -- Brendan O'Dea Wed, 5 Apr 2006 01:30:11 +1000 perl (5.8.8-3) unstable; urgency=low * Add build-dep on procps (required by t/op/magic). * Remove trailing \0 from Sys::Syslog messages (closes: #345157). * Getopt::Long: allow "ignorecase_always" as a synonym for "ignore_case_always" to match the documention (closes #354197). * Don't add -Wdeclaration-after-statement to ccflags: this causes problems when building extensions with gcc-3.3 . * Pod::Man: don't translate "|" (closes: #291391). -- Brendan O'Dea Fri, 10 Mar 2006 03:07:28 +1100 perl (5.8.8-2) unstable; urgency=low * Move overload.pm back to perl-base (closes: #352060). * Extend timer in Time::HiRes test to 5 mins (for m68k). -- Brendan O'Dea Fri, 10 Feb 2006 06:23:17 +1100 perl (5.8.8-1) unstable; urgency=low * New upstream version. * Update perl-base conflict versions for: libscalar-list-utils-perl (1.18). * Update perl conflict versions for: libdigest-md5-perl (2.36), libmime-base64-perl (3.07), libstorable-perl (2.15) and libtime-hires-perl (1.86). * Update perl-modules conflict versions for: libattribute-handlers-perl (0.78_02), libcgi-pm-perl (3.15), libpod-parser-perl (1.32), libansicolor-perl (1.10), libtest-harness-perl (2.56) and libtest-simple-perl (0.62). * Revert debian/patches/02_fix_file_path to upstream fix. * Update to DB_File to db4.4. * Move Data::Dumper and overload from perl-base to perl now that debconf no longer requires Data::Dumper. -- Brendan O'Dea Sat, 4 Feb 2006 19:33:24 +1100 perl (5.8.7-10) unstable; urgency=low * Remove DB_File version checks (closes: #340047, #343335). * Remove Errno version check, which can cause problems with long-running processes that embed perl when perl is upgraded (closes: #343351) * Apply upstream 26321: Disallow sprintf's vector handling for non-integer formats. -- Brendan O'Dea Fri, 16 Dec 2005 01:32:14 +1100 perl (5.8.7-9) unstable; urgency=high * SECURITY [CVE-2005-3962] (closes: #341542): + Apply upstream fixes to prevent buffer overflows in printf/sprintf caused by malicious format strings. + Update Sys::Syslog to 0.09, which only uses the message as a format string to sprintf when additional arguments are given. * Remove -Dusemymalloc from perl-debug (added for #178243: to enable PERL_DEBUGGING_MSTATS), as this causes debugperl to break with compiled modules. Closes: #337050, #342526). * Skip Math::Complex tests 267 and 487, failing due to non-IEEE fp rounding rules in the kernel fp emulation. -- Brendan O'Dea Sat, 10 Dec 2005 16:43:02 +1100 perl (5.8.7-8) unstable; urgency=low * ARM fix is also required for armeb. * Skip lib/Net/hostent.t test if no /etc/hosts (some buildds). * Fix debugger termination message to refer to "o" rather than "O" for setting options (closes: #334516). * Fix problem with untainting of captured $N (thanks to Chris Heath for analysis and patch; closes: #303308). * Fix h2ph to correctly locate gcc's include directory (closes: #328500). * Update to DB_File to db4.3 (closes: #336486). -- Brendan O'Dea Sun, 13 Nov 2005 12:05:29 +1100 perl (5.8.7-7) unstable; urgency=low * ARM optimisation fix take 2. Downgrade optimisation of pp_pack to -Os (closes: #333510). Thanks to Bill Gatliff for the extended use of the CSB625 is his basement. * Change section of perl-base to "perl". -- Brendan O'Dea Mon, 17 Oct 2005 23:16:32 +1000 perl (5.8.7-6) unstable; urgency=low * Downgrade optimisation on arm to -O1 for certain files due to problems with gcc 4.0 (closes: #333510). -- Brendan O'Dea Thu, 13 Oct 2005 13:35:38 +1000 perl (5.8.7-5) unstable; urgency=low * Handle changed dpkg-architecture output so that perl is statically linked on i386 again (closes: #324418). * Add build-dep on cpio 2.6-5 to ensure libperl.so link is included in libperl-dev package (#326090). * Various a2p fixes: + Make {$1++;print} work correctly. The re-join was occuring for assignment, but not increment (close: #198945). + Make {$NF++} work. Was generating $Fld[$#Fld++]. + Use -1 as the last argument to split (closes: #18395). + Omit last argument to substr (cosmetic). -- Brendan O'Dea Mon, 12 Sep 2005 01:14:31 +1000 perl (5.8.7-4) unstable; urgency=low * Don't generate broken md5sums for libperl5.8 (closes: #304640). * Build with gcc 4.0; restore standard (-O2) optimisation on arm, ia64 and powerpc. Remove gcc-2.95 build work-around for m68k. * Fix test of reenterant function return values which was causing perl to malloc itself to death if ERANGE was encountered before ENOENT (such as a long line in /etc/group; closes: #227621). -- Brendan O'Dea Sat, 9 Jul 2005 11:14:13 +1000 perl (5.8.7-3) unstable; urgency=low * Add alternative for /usr/bin/rename (closes: #304705). * install* variables have been moved from Config.pm to Config_heavy.pl; strip (closes: #312419). -- Brendan O'Dea Wed, 8 Jun 2005 23:00:25 +1000 perl (5.8.7-2) unstable; urgency=low * Sarge has released. Rebuild for unstable. -- Brendan O'Dea Tue, 7 Jun 2005 09:31:16 +1000 perl (5.8.7-1) experimental; urgency=low * New upstream version. * Update perl conflict versions for: libtime-hires-perl (1.66). * Update perl-module conflict versions for: libcgi-pm-perl (3.10), libfile-temp-perl (1.16), libmath-bigint-perl (1.77), libpod-parser-perl (1.30), libansicolor-perl (1.09), libtest-harness-perl (2.48) and libtest-simple-perl (0.54). -- Brendan O'Dea Fri, 3 Jun 2005 00:40:00 +1000 perl (5.8.6-1) experimental; urgency=low * New upstream version. Uploading to experimental due to the sarge freeze. * Update perl conflict versions for: libmime-base64-perl (3.05) and libtime-hires-perl (1.65). * Update perl-module conflict versions for: libcgi-pm-perl (3.05), libi18n-langtags-perl (1.35) and libmath-bigint-perl (1.73). -- Brendan O'Dea Sat, 21 May 2005 18:01:17 +1000 perl (5.8.4-8) unstable; urgency=low * Remove $!{ENOENT} test from rmtree; File::Path is used during the build process before Errno is installed. -- Brendan O'Dea Tue, 8 Mar 2005 19:30:38 +1100 perl (5.8.4-7) unstable; urgency=low * SECURITY [CAN-2005-0448]: rewrite File::Path::rmtree to avoid race condition which allows an attacker with write permission on directories in the tree being removed to make files setuid or to remove arbitrary files (closes: #286905, #286922). Supersedes the previous patch for CAN-2004-0452. * Add PERL_DEBUGGING_MSTATS for debugperl (closes: #178243). * Escape dashes in verbatim text to have groff render them as-is rather than as \x{2010} (closes: #250877). * CGI: handle escaped newlines in URLs (closes: #289709). * Net::NNTP: fix precedence error in article routine (closes: #275142). * Devel::Dprof: refer to executable as `perl' (closes: #198855). * Remove spurious undefined warning in getopts.pl (closes: #255919). * Remove XSI-isms from maintainer scripts (closes: #256731). * Revise MakeMaker patch to defer expansion of $(MANnEXT) until runtime (closes: #263325). * Normalise case of a2p man page OPTIONS section, place optional filename in brackets (closes: #281091, #281092). * Fix octal glitch in perlreref(1) (closes: #281437). * Have perl suggest both ReadLine variants (gnu, perl). * Upgrade suggestion on perl-doc to recommends now that dselect is less pedantic about the latter. -- Brendan O'Dea Mon, 7 Mar 2005 10:22:01 +1100 perl (5.8.4-6) unstable; urgency=high * SECURITY [CAN-2005-0155, CAN-2005-0156]: apply Mandrake patch to perlio.c which removes a privilege escalation in debug mode and a buffer overflow. * Make close return false if the stream had prior errors (patch from Jim Meyering; closes: #285435). * Fix enc2xs to handle missing entries symlinks in @INC, and missing directories (thanks to Sven Hartge; closes: #290336). * Add --no-backup-if-mismatch to patch/unpatch rules. * Correct some minor errors in 09_fix_insecure_tempfiles: wrong quoting in c2ph.PL, documentation of .perldbtty in perldebug.pod . -- Brendan O'Dea Wed, 2 Feb 2005 23:55:27 +1100 perl (5.8.4-5) unstable; urgency=low * SECURITY [CAN-2004-0452]: use less permissive chmods in rmtree. * Move utf8_heavy.pl from perl-modules to perl-base (closes: #280596). * Change ext/*/hints/gnuk{net,free}bsd.pl to use "./hints/linux.pl" (added leading "./"). * Add debian/watch file. * Install correct MANIFEST.SKIP for ExtUtils (closes: #283802). * Fix error in perlipc documentation of "|-" (closes: #282110). * Add replaces for libclass-multimethods-perl which erroneously included /usr/lib/perl/5.8 (closes: #284489). -- Brendan O'Dea Sat, 11 Dec 2004 22:50:44 +1100 perl (5.8.4-4) unstable; urgency=low * SECURITY [CAN-2004-0976]: patches from Trustix for insecure temp file usage (thanks to Joey Hess for analysis; closes #278404). - Some unsafe examples in the DB_File POD. - Use of the unsafe tmpnam in the ext/DB_File/t/db-recno.t test script. - Use of unsafe temporary file names in ext/Devel/PPPort/PPPort.pm . - An example in MakeMaker.pm that suggets setting PREFIX=/tmp/myperl5 and another that suggets setting DESTDIR=/tmp/ . - Insecure use of /tmp file in instmodsh. - Insecure use of /tmp file in lib/Memoize/t/tie.t, tie_gdbm.t, tie_ndbm.t, tie_sdbm.t, tie_storable.t, probably exploitable at build time if these tests are run. - Use of insecure temp file in POD docs in lib/perl5db.pl and also an insecure temp file in the setterm() function in that program. * Fix "bizarre copy of ARRAY" error (thanks to Frank Lichtenheld for pointing out upstream change 22781; closes #275298). * Re-order DESCRIPTION paragraph of perl(1) (closes: #278323). * Escape - in character class in Encode::Alias (closes: #278874). * Add hints/gnuk{net,free}bsd.pl which sources hints/linux.pl to some extensions (closes: #248184). -- Brendan O'Dea Sun, 7 Nov 2004 02:19:25 +1100 perl (5.8.4-3) unstable; urgency=low * Cleanup NMU: - make patch apply/unapply cleanly (closes: #276969). - update libmime-base64-perl conflicts to 3.04 . * Add -D_GNU_SOURCE to hints/gnu.sh (closes: #258618). * Add hints/gnuk{net,free}bsd.sh (closes: #248184). * Fix IO blocking method on sparc. * Use -O1 selectively on powerpc (as with ia64, arm). -- Brendan O'Dea Mon, 25 Oct 2004 01:07:00 +1000 perl (5.8.4-2.3) unstable; urgency=high * NMU. * Update MIME::Base64 to version 3.03, needed by MIME-tools 5.413. * Fix lintian warnings in synopsis of some binary packages. -- Matthias Klose Sun, 19 Sep 2004 15:07:29 +0200 perl (5.8.4-2.2) unstable; urgency=low * NMU, aided by Adam Conrad. * Make debian package autobuildable by integrating the handholding developed by the people working on #247176 into the package infrastructure. - on ARM and ia64 set optimize=-O1 for selected files (63_debian_optim_workaround) - Build with cpp-2.95/gcc-2.95 on m68k. -- Andreas Metzler Wed, 1 Sep 2004 11:51:10 +0200 perl (5.8.4-2) unstable; urgency=low * Revert DynaLoader version permit programs linked with pre-5.8.4 perl to libperl.so to work (closes: #247291). * Modify MakeMaker to pass the full section name to pod2man (closes: #247370). -- Brendan O'Dea Tue, 11 May 2004 23:29:02 +1000 perl (5.8.4-1) unstable; urgency=low * New upstream version. * DB_File now uses to db4.2 (previously db4.0; closes: #240771). * Update perl conflict versions for: libmime-base64-perl (3.01), libtime-hires-perl (1.59) and libstorable-perl (2.12). * Update perl-module conflict versions for: libansicolor-perl (1.08), libcgi-pm-perl (3.04), liblocale-maketext-perl (1.08) and libmath-bigint-perl (1.70). * Add conflicts/replaces/provides for liblocale-codes-perl. As there are some core changes to this module not reflected in the CPAN package fake up version as 2.06.1-1 (closes: #240497). * Fixed debian/config.debian to pass -Doptimize correctly (changes in 5.8.3-3 broke perl-debug; closes: #246326). -- Brendan O'Dea Sun, 2 May 2004 09:46:25 +1000 perl (5.8.3-3) unstable; urgency=medium * [CAN-2003-0618] Apply Paul Szabo's suidperl fixes to prevent path disclosure (upstream change 22563; closes: #220486). * Add build option to supress regression tests; document perl-specific DEB_BUILD_OPTIONS values in README.Debian. -- Brendan O'Dea Sat, 27 Mar 2004 11:23:37 +1100 perl (5.8.3-2) unstable; urgency=low * Supress spurious pseudohash warning (closes: #231619). * Add patch from Go"ran Weinholt for hurd (closes: #230710). * Create the correct site directory for perllocal (closes: #232074). * Documentation fixes from Julian Gilbey for Encode and perluniintro (closes: #219297, #219308). * Issue a warning for missing section 1 manual pages and add missing instmodsh documentation (closes: #230730). * cpan script moved to the perl package (from perl-modules) in 5.8.1-1; add replaces (closes: #232705). * Add conflict for libapache-mod-perl which segfaults with 5.8.2+ libperl5.8 (closes: #232537). * Set default Makefile.PL arg of 'INSTALLDIRS=site' for CPAN. * Ensure that the version of perl-doc matching Upstream-Version is installed (via depend on perl-doc and conflict on perl). -- Brendan O'Dea Sun, 15 Feb 2004 12:40:09 +1100 perl (5.8.3-1) unstable; urgency=low * New upstream version. * Update conflict versions for updated core modules. * Add epoch to conflict for libscalar-list-utils-perl, move to perl-base (closes: #225873). * Use generic values for $Config{myhostname} and $Config{mydomain}. * Include more information on packaging details in README.Debian. * Clarify signal handling during system (closes: #224235). * Add -march=armv3 for arm until gcc defaults are fixed (closes: #230010). * Drop sub-version from privlib/archlib directories to match the libperl soname, preventing problems for programs embedding an interpreter when upgrading libperl to a new sub-version. -- Brendan O'Dea Thu, 29 Jan 2004 13:39:00 +1100 perl (5.8.2-2) unstable; urgency=low * Remove empty directories from /usr/share/perl (closes: #220422). * Upstream change 21719: empty subroutine segfaults (closes: #220277). * Add reentr.pl patch from Chip to fix C++ API (closes: #220840). * Add Conflicts/Replaces/Provides for libscalar-list-utils-perl (in core since 5.8.0; closes #218356). -- Brendan O'Dea Sat, 15 Nov 2003 14:54:26 +1100 perl (5.8.2-1) unstable; urgency=low * New upstream version. * Update module conflicts. -- Brendan O'Dea Sat, 8 Nov 2003 01:19:29 +1100 perl (5.8.1-4) unstable; urgency=low * ODBM_File/NDBM_File: dbm/ndbm compatability libraries are now in libgdbm_compat.so. -- Brendan O'Dea Thu, 23 Oct 2003 22:10:22 +1000 perl (5.8.1-3) unstable; urgency=low * Don't mark srand as being called when setting the hash seed otherwise all forked processes end up with the same seed. * Move Net::Config back to /usr/share/perl and set location of libnet.cfg to /etc/perl/Net (closes #215730). * Apply Nicholas Clark's "Plan C" for foiling the algorithmic complexity attack (based on Chip's plan A (binary compatibility with 5.8.0 and 5.8.1). Closes: #213976, #214938. -- Brendan O'Dea Sat, 18 Oct 2003 09:41:16 +1000 perl (5.8.1-2) unstable; urgency=low * Added missing Provides: libstorable-perl (closes: #213320). * Remove temporary build dir from install{priv,arch}lib Config variables (closes: #213355). -- Brendan O'Dea Tue, 30 Sep 2003 09:10:33 +1000 perl (5.8.1-1) unstable; urgency=low * New upstream version. Closes: #211967 (problem with Term::Complete). * Remove cpan script in favour of upstream replacement. * Update conflict versions for core modules. * Add note to suidperl package description about possible timing attacks (as noted in #203426). * Kludge around missing __LONG_MAX__ definition in generated .ph headers (closes: #212708). -- Brendan O'Dea Sun, 28 Sep 2003 20:53:25 +1000 perl (5.8.0-21) unstable; urgency=high * Security: further changes for suidperl path disclosure [CAN-2003-0618] to correct exit values and removes extraneous period (closes: #203426). -- Brendan O'Dea Thu, 11 Sep 2003 17:58:19 +1000 perl (5.8.0-20) unstable; urgency=high * Security: path disclosure via suidperl [CAN-2003-0618] fixed by application of upstream change 21045 (thanks Jarkko; closes: #203426). * Add dependency on the exact version of perl-base to libperl5.8 to ensure that the correct base modules are available to programs embedding an interpreter (closes: 182089). Move shared library to the perl-base package on architectures where /usr/bin/perl is dynamically linked to the library (everything other than i386) to avoid a dependency loop. * Change sections to match overrides (new perl and libdevel sections). * Apply upstream change 18471 to correct behaviour of tell on files opened O_APPEND (reported by Sergio Rua). * Apply upstream change 21031 to alter the distribution conditions of perlreftut(1) (see #202723). Include this manual page in perl-doc once again. Many thanks to Kevin Carlson of TPJ and to Mark Jason Dominus for their cooperation and assistance with this licence change. * Apply patch from Matt Kraai making braced-group macro expressions conditional on !__cplusplus (fixes abiword build on m68k; closes: #204859). * Ensure all dependencies of libperl are directly linked (previously -lm and -lpthread were not) for prelink (closes: #187372). * Fix permissions on DEBIAN directories in build (closes: #207332). * Expand perl-modules description (closes: #210096). * Add some documentation to README.Debian about the source package. * Backport some changes from DB_File 1.806 to set some tie argument defaults (reported by Sergio Rua). * Apply upstream fix for h2ph from Kurt Starsinic to suppress redefinition warnings. -- Brendan O'Dea Wed, 10 Sep 2003 17:25:10 +1000 perl (5.8.0-19) unstable; urgency=low * Security: cross site scripting vulnerability in CGI (closes: #202367). * Fix in perlvar.pod (closes: #202784). * Remove non-free perlreftut(1) manual page and POD (closes: #202723). * Change architecture check to use variables set by dpkg-buildpackage or from dpkg-architecture (closes #201240). -- Brendan O'Dea Tue, 29 Jul 2003 23:59:58 +1000 perl (5.8.0-18) unstable; urgency=low * Add build-depends for new libgdbm. * Add -fno-regmove for shared build on m68k to work around an optimiser bug. -- Brendan O'Dea Thu, 5 Jun 2003 23:18:20 +1000 perl (5.8.0-17) unstable; urgency=low * Correct patch to ext/threads/t/join.t (closes: #181306). -- Brendan O'Dea Mon, 17 Feb 2003 20:53:25 +1100 perl (5.8.0-16) unstable; urgency=low * Add conflict on earlier versions of perl-doc to perl (closes: #180260). * Fix build issue with localised cpp output (closes: #177458). * Backport upstream changes to make $0 writable (closes: #178404). * Backport upstream changes to remove implicit utf8 I/O (closes: #164717). * Apply upstream fix for debugging speed issue (closes: #180591, thanks to Chip Salzenberg for the patch). -- Brendan O'Dea Sun, 16 Feb 2003 22:16:19 +1100 perl (5.8.0-15) unstable; urgency=low * Fix insecure use of /tmp by c2ph/pstruct (closes: #173241). * Apply upstream fix for POSIX ctype functions (closes: #175867). * Adjust dprofpp output to screen width (closes: #175956). * Modify splain description to have meaningful apropos (closes: #175584). * Remove bash-ism from debian/rules (closes: #171865). * Fix documentation of S_IMODE macro (closes: #161618). * Fix documentation of -i option (closes: #161636). * Remove hppa/mips* special cases as all arches should now use gcc 3.2. Add gcc build-depend. -- Brendan O'Dea Sat, 11 Jan 2003 21:58:54 +1100 perl (5.8.0-14) unstable; urgency=low * Security update for Safe.pm (closes: #169794): http://www.iss.net/security_center/static/10574.php http://use.perl.org/articles/02/10/06/1118222.shtml?tid=5 -- Brendan O'Dea Wed, 20 Nov 2002 23:24:12 +1100 perl (5.8.0-13) unstable; urgency=low * Use gcc 3.2 to build on some architectures (hppa, mips*). * Fix examples in perlembed to work with a threaded perl. -- Brendan O'Dea Sat, 14 Sep 2002 23:05:37 +1000 perl (5.8.0-12) unstable; urgency=low * Move Attribute/Handlers/demo to perl-doc. * Skip manpages for podless modules (closes: #159504). -- Brendan O'Dea Sat, 7 Sep 2002 00:48:39 +1000 perl (5.8.0-11) unstable; urgency=low * Add accessor methods for POSIX::SigAction (closes: #158587). * Remove conflict on libcgi-pm-perl from libcgi-fast-perl (as perl-modules now C/R/P libcgi-pm-perl). Closes: #159217. -- Brendan O'Dea Wed, 4 Sep 2002 03:09:07 +1000 perl (5.8.0-10) unstable; urgency=low * Copy import/export argument list in lib.pm (closes: #158627). * Term::Cap: deal with comments in infocmp output (closes: #158453). * Update perl-base replaces versions for perl and perl-modules. * libcgi-pm-perl contains CGI.pm rather than libcgi-perl, fix conflicts/replaces/provides (closes: #158645). -- Brendan O'Dea Thu, 29 Aug 2002 22:12:21 +1000 perl (5.8.0-9) unstable; urgency=low * More modules for perl-base (closes: #158499). * Temporarily special-case hppa to use -O1 until gcc-3.2 is the default compiler (issues with 3.0; closes: #158290). * Add build-dep on cpio (used when splitting packages) and add an assertion to debian/splitdoc checking that expected modules were found (closes: #158603). * Modify ext/Sys/Syslog/syslog.t test to work on buildds where syslogd may not be running. -- Brendan O'Dea Wed, 28 Aug 2002 23:51:30 +1000 perl (5.8.0-8) unstable; urgency=low * Some modules for perl-base had moved (lib, Cwd), revise debian/perl-base.files (closes: #158094). * Add dependency on the current version of perl to libperl-dev. * Move module documentation from dirs under /usr/share/perl to /usr/share/doc/perl/_module_. -- Brendan O'Dea Mon, 26 Aug 2002 18:29:45 +1000 perl (5.8.0-7) unstable; urgency=low * New upstream release. * NOTE: this release breaks binary compatability with previous versions of perl. Users will need to upgrade to newer versions of binary module packages (if/when available) and re-build any locally installed modules. * NOTE: DB_File now uses libdb4.0 (previously libdb2). Any DB_File databases created with earlier perl packages will need to be upgraded before being used with the current module with the db4.0_upgrade program (in the libdb4.0-util package, with HTML docs in db4.0-doc). * NOTE: suidperl is now deprecated upstream and support is expected to be discontinued for 5.10. Package description amended. * Add Conflicts/Replaces/Provides for modules now included in core: libdigest-md5-perl, libmime-base64-perl, libnet-perl, libtime-hires-perl, libstorable-perl, libattribute-handlers-perl, libcgi-perl, libi18n-langtags-perl, liblocale-maketext-perl, libmath-bigint-perl, libnet-ping-perl, libtest-harness-perl, libtest-simple-perl * Update versions of conflicts on libpod-parser-perl, libansicolor-perl and libfile-temp-perl. * Add conflict for autoconf2.13 pre 2.13-45 which breaks with this perl (closes: #155064). * Enable threads (closes: #107909, #126233). * Add -f (--force) option to /usr/bin/rename (closes: #140746). * Add -n (--no-act) option to /usr/bin/rename (suggested by frederik@ugcs.caltech.edu). * Correct rename(1) manual page (closes: #153458, #153757). * Prepend /etc/perl to @INC to provide a standard location for configuration modules: /etc/perl/Net/Config.pm (note: previously /etc/Net in libnet-perl) /etc/perl/CPAN/Config.pm (closes: #138167, #103055). * Add an option for CPAN.pm to skip version check (closes: #98235). * Include /usr/bin/cpan script (closes: #136159). * Modify perldoc to format pages simarly to man-db when stdout is a terminal (closes: #135318). * perldoc place-holder now outputs to stderr (closes: #140448). * Add a note in ExtUtils::Embed(3perl) to the effect that the on Debian systems the libperl-dev package is required (closes: #155319). * Allow accept to return addresses > sockaddr_in (closes: #156284). * Modify debian/rules to remove libperl.so* on failure (closes: #157953). * This version appears to correct the following bugs: Closes: #54987: perl: goto inside for(;;) clears variables ?!? Closes: #66702: Redefining running sub dumps core. Closes: #67479: perl-5.005: Sys::Hostname pollutes package main... Closes: #68876: perlipc(1p) has broken examples Closes: #80141: One-liner that makes perl segfault Closes: #88470: perl segfaults Closes: #102163: Bug in perl 5.6.1 when using /sg in regular expressions Closes: #103576: perl: Still links libdb2... Closes: #104414: Taint checking bypassed on read-write file opening Closes: #125735: perl: segfaults on "Ode to My Thesis" Closes: #127973: perl crashes on simple one liner Closes: #131714: perl-base: Perl segfaults with this script Closes: #133803: perl: segfault Closes: #140787: perl: trivial segfault Closes: #144618: perl: segfault parsing bad tie() statement Closes: #149304: perl: chomp function makes perl segfault Closes: #150590: perl-base: Carp::confess() ... overloaded "" operator Closes: #157152: Pod::Man says that all Pod is 3rd Berkeley Distribution -- Brendan O'Dea Sat, 24 Aug 2002 14:53:35 +1000 perl (5.6.1-7) unstable; urgency=medium * Prune libswanted so as to link only the libraries we specifically want (closes: #128355). * Include debug-enabled libperl as /usr/lib/libdebugperl.a in the perl-debug package (closes: #117039). * Only treat a leading "+" as special to open when followed by "<" or ">" (closes: #52166). * Move warning from I18N::Collate NAME section (closes: #113370). * Apply patch to correct utf8 and /\s/ problem (closes: #124227). * Add trailing period to perl-modules description (closes: #127689). * Include sys/ioctl.ph (closes: #128423). * Remove old /usr/lib/perl5/5.* dirs from @INC now that no packages install modules there. -- Brendan O'Dea Fri, 11 Jan 2002 04:05:42 +1100 perl (5.6.1-6) unstable; urgency=medium * Cleanup for woody release. * Update included debhelper subset to 3.0.51. * Install pos2latex man page (closes: #45899). * Avoid undefined warnings from Term::Cap (closes: #103421). * Write full paths to .packlists (closes: #106859). * Update to podlators 1.18 (closes: #109183). * Fix interpreter state variable (upstream patch 10531, closes: #117100). * Remove spurious & from waitpid example (closes: #118115). * Include asm/termios.ph (closes: #118485). * Include sys/time.ph (closes: #119054). * Correct typo in IO::Seekable man page (closes: #119776). -- Brendan O'Dea Tue, 4 Dec 2001 00:56:13 +1100 perl (5.6.1-5) unstable; urgency=low * Correct typo in debian/config.debian which was causing the static perl to be installed on all arches. * Explicitly link NDBM_File against -lgdbm rather than -lndbm. * Update included debhelper subset to 3.0.36. * Changed perl-base depends to pre-depends. * Relaxed perl-modules dependencies on perl. -- Brendan O'Dea Fri, 22 Jun 2001 13:49:58 +1000 perl (5.6.1-4) unstable; urgency=low * Fix ExtUtils::MM_Os2 docs (closes: #99930). * Include autoloaded parts of Getopt::Long in -base (closes: #100557). * Correct perl package description (closes: #99187). * Update copyright date. * Apply all of podlators 1.09. * Change priority of libcgi-fast-perl to extra. * Add LC_MESSAGES to POSIX module. * Update included debhelper subset to 3.0.32. * Add version to perl-5.004* conflicts. -- Brendan O'Dea Wed, 13 Jun 2001 02:10:32 +1000 perl (5.6.1-3) unstable; urgency=high * Clean up /usr/share/doc links and directories in perl/perl-doc postinsts (closes: #98850). * Remove incorrect CGI:: package qualifier from call to unescape in CGI::Cookie module (closes: #98512). * Add conflict/replace/provides to perl-modules for libfile-temp-perl which is now included as a core module (closes: #98977). * Add "file" to build-depends (closes: #98641). * Update included debhelper subset to 3.0.26. -- Brendan O'Dea Mon, 28 May 2001 11:21:16 +1000 perl (5.6.1-2) unstable; urgency=low * Clean up /usr/share/doc/perl symlinks/directories from 5.6.0 packages in perl-base preinst (closes: #98302). * Remove unnecessary pre-dependency on perl-base from perl-doc. * Modify Term::Cap to fake up an entry using "infocmp -C" when all else fails. Based on a suggestion by Adam Rice quite some time ago (closes: #39447 and a bunch more). * Build DynaLoader.o with -fPIC as it may be linked to shared objects like mod_perl. -- Brendan O'Dea Wed, 23 May 2001 23:20:19 +1000 perl (5.6.1-1) unstable; urgency=low * New upstream version. + Closes: #83246 ([upstream-patch] File::Find fails if running -T). + Closes: #83316 (Example from File::Glob documentation does not work). + Closes: #86188 (perl-5.6-doc: strangity in perlop.{1,pod}). + Closes: #88247 (perl-doc: perlre.1 problems). + Closes: #88461 (perlcc doesn't clean up after an error). + Closes: #92151 (Character class [:blank:] unknown). + Closes: #97860 (segfault on next inside File::Find subref). * Changes to perl-base: + Move [massive] upstream changelog to perl. + Move autoloaded routines from POSIX to perl. + Strip pod from modules into separate .pod files, distributed with perl-doc. + Strip autoloaded routines (following __END__ token, already split out into .al files). + Add Getopt::Long. + Add File::Glob (closes: #95238). * Add a place-holder perldoc script to the perl package which instructs the user to install perl-doc and add a similar note to the perl(1) page. * Remove perlfilter docs, newer versions of which are included in the libfilter-perl package (closes: #88485). * Patch perl5db.pl to fall back to "/usr/bin/pager" rather than "more" if $PAGER is not set (Debian Policy 12.4, closes: 94462). * Add conflicts/replaces/provides for libansicolor-perl (closes: #83604). * Allow the default build type (static /usr/bin/perl or shared) to be overridden by including for x-perl-{shared,static} in DEB_BUILD_OPIONS. * Removed build-dependency on debhelper (a subset of debhelper is now included). * Augment the descriptions of libperl5.6 and libperl-dev, including a note about perlcc in the latter (closes: #88462). * Remove build-dependency on netbase for i386 hurd (closes: #89406). * Exclude -lnsl and -lutil from from libs/perllibs (not required by glibc, closes: #95604). * Change the default Sys::Syslog socket to "UNIX" and document as Debian-specific (closes: #95233). -- Brendan O'Dea Mon, 21 May 2001 03:43:18 +1000 perl (5.6.0-21) unstable; urgency=low * Apply upstream patch 6591 to fix //m uninitialized warning (closes: #76900). * Add Build-Depends on netbase, as some tests require /etc/protocols (closes: #88365). * Add /usr/local/lib/site_perl back to @INC (note: not created by installation) to allow local modules to be installed in a non-versioned directory and to pick up local modules installed with the previous packages (closes: #87831). * Don't strip debugperl binary (closes: #88801). * Change man3ext to 3perl as man will otherwise select perl's open(3) over open(2) for example. -- Brendan O'Dea Fri, 9 Mar 2001 05:50:53 +1100 perl (5.6.0-20) unstable; urgency=low * Fix priorities of perl-modules and libperl5.6 to "important" and "required" due to dependencies from perl and (on non-386) perl-base respectively. * Fix Man/Pod.pm problem with CORE::GLOBAL::die() and similar (closes: #87483). * Conflict with old data-dumper package (closes: #86809). * Fix suffix of suidperl/debugperl man pages. -- Brendan O'Dea Tue, 27 Feb 2001 03:14:55 +1100 perl (5.6.0-19) unstable; urgency=low * Fix Build-Depends version for debhelper. * Apply upstream change 7428 to fix Universal::isa (reported by Joey Hess). * Move locale.pm to perl-base (requested by Joey Hess). * Move attributes.pm to perl-base. Used internally to support subroutine attributes such as :lvalue. This should allow debconf to depend only on perl-base (closes: #77399). * Add replaces/provides/conflicts for libpod-parser-perl to the perl package. Note the programs are in perl, and the modules in perl-modules although the latter don't actually conflict as the directory is different (closes: #86459). * Choose one libreadline-*-perl package to suggest, as having both with an | was tickling an obscure bug in apt-get. * Patch perldoc to warn rather than die on non-existent dirs in @INC as not all directories may exist in a debian installation, the site directories for instance are created by MakeMaker on demand (closes: #86690). * Fix Getopt::Long documentation for the require_order option (closes: #86683). * Add a suidperl link for those who wish to use #!/usr/bin/suidperl explicitly (closes: #86654). * Add install-local-thread target to debian/rules to allow people to configure/build/install a threaded perl locally if required. -- Brendan O'Dea Wed, 21 Feb 2001 02:41:34 +1100 perl (5.6.0-18) unstable; urgency=low * Updated to debhelper v3. * Include changelogs in libcgi-fast-perl package. (Closes: #86364). * Remove empty B::Stash and warnings::register man pages. (Closes: #86204). * Fix Math::Complex manual page (11_fix_math_complex_pod). * Remove -lsfio library. (Closes: #86207). * Move AUTHORS to perl-base, as copyright references it. Thanks to Dirk Eddelbuettel . * Move perldiag.pod to the perl-modules package so that the diagnostics module works without perl-doc being installed. (Closes: #86154). * Add /usr/lib/perl5/5.6 to @INC to handle arch-indep module packages which didn't set privlib to /usr/lib/perl5. (Closes: #86122). * Add -mieee for alpha build. (Closes: #86059). -- Brendan O'Dea Sun, 18 Feb 2001 06:13:29 +1100 perl (5.6.0-17) unstable; urgency=low * Fix nasty h2ph loop which was breaking the sparc build. * Site installs now update perllocal.pod in sitearch rather than archlib. -- Brendan O'Dea Wed, 14 Feb 2001 15:10:10 +1100 perl (5.6.0-16) unstable; urgency=low * Split dummy versioned perl transition packages into a seperate source package. -- Brendan O'Dea Tue, 13 Feb 2001 03:38:46 +1100 perl (5.6.0-15) unstable; urgency=low * Add missing version to perl-5.005-base conflicts. * Modify ExtUtils::MM_Unix and Install to create site directories with group write permission (policy 10.1.2). -- Brendan O'Dea Sun, 11 Feb 2001 00:57:59 +1100 perl (5.6.0-14) unstable; urgency=low * The 5.005 packages are now gone. Provide perl-5.005* pseudo-packages for transition. -- Brendan O'Dea Wed, 7 Feb 2001 23:17:19 +1100 perl (5.6.0-13) unstable; urgency=low * Modify MM_Unix yet again to install programs and manual pages under /usr/local for site installs. -- Brendan O'Dea Sun, 4 Feb 2001 23:46:29 +1100 perl (5.6.0-12) unstable; urgency=low * Modify MM_Unix to replace $Config{prefix} with '$(PREFIX)' unconditionally in the Makefile INSTALL* variables. -- Brendan O'Dea Fri, 2 Feb 2001 11:53:03 +1100 perl (5.6.0-11) unstable; urgency=low * Make perl-base essential. * Add conflicts to libcgi-fast-perl for libcgi-pm-perl (which includes a different version of that module). * Apply _PATH_LOG patch from previous packages to fix Sys::Syslog, which croaks if you pass an extra argument to syslog. * Fixed POSIX.xs to work on ia64 (forwarded upstream). * Applied patch 7565 which fixes Errno.pm (was not being created correctly with gcc-2.96). -- Brendan O'Dea Thu, 1 Feb 2001 18:31:45 +1100 perl (5.6.0-10) unstable; urgency=low * Move perlapi- provides to perl-base package to allow binary modules such as libterm-stool-perl to depend only on perl-base. -- Brendan O'Dea Sun, 28 Jan 2001 19:29:23 +1100 perl (5.6.0-9) unstable; urgency=low * Re-order @INC to allow site and vendor installed modules to shadow the versions in core. * Split CGI::Fast module into a separate package due to dependence on libfcgi-perl. -- Brendan O'Dea Fri, 26 Jan 2001 20:33:08 +1100 perl (5.6.0-8) unstable; urgency=low * Patch h2ph to handle glibc's bizzare enum+#define constants. * Clean up some glitches in the generated headers. -- Brendan O'Dea Wed, 24 Jan 2001 19:46:42 +1100 perl (5.6.0-7) unstable; urgency=low * New maintainer. * New packaging. * TODO: revise and include perl-policy and build a seperate ithread-enabled binary if required. -- Brendan O'Dea Tue, 16 Jan 2001 11:39:25 +1100 perl-5.6 (5.6.0-6.2) unstable; urgency=low * NMU * Moving the libperl.so symlink to libperl5.6 requires conflicts and replaces. (Closes: #80794). -- Brendan O'Dea Fri, 29 Dec 2000 16:36:26 +1100 perl-5.6 (5.6.0-6.1) unstable; urgency=low * NMU * Ensure that a valid /usr/bin/perl exists before each instance of "update-alternatives --remove" in perl-5.6-base.postinst, as any of these may possibly blow away the symlink. (Closes: #76432). * If an alternative existed for perl.1p.gz before installation, the file of that name in this package was removed in the postinst update-alternatives. The same goes for cperl-mode.el. Install versioned files and manually link like the rest of the alternatives mess. (Closes: #78742, #79728). Note that both of these changes to alternative handling are merely stop-gap measures. The situation still remains that installing perl-5.004 or 5.005 after 5.6 has been installed will play merry havoc with the symlinks again and stands a good chance of nuking /usr/bin/perl if subsequently removed. * make.versions: rename rather than copying files so that we don't ship two copies of each binary in the .deb (linked to canonical name in postinst). * Move warnings::register to -base. (Closes: #79075, #79234). * Move autosplit.ix for File::Glob to -base. (Closes: #77384) * Move load_imports.al for POSIX to -base. * Move IO.pm to -base. * Move dangling libperl.so symlink to libperl5.6. -- Brendan O'Dea Fri, 29 Dec 2000 00:55:21 +1100 perl-5.6 (5.6.0-6) unstable; urgency=low * Don't do the /usr/bin/perl.dist -> /usr/bin/perl bit anymore. dpkg probably doesn't need it... -- Darren Stalder Sun, 3 Dec 2000 20:24:34 -0800 perl-5.6 (5.6.0-5) unstable; urgency=low * Remove all alternatives related to the Perl packages. (closes: #76432, #76524, #77247, #77303, #77619) * Fixed suidperl manpage paths. Thanks to Jim Bray . * Fixed suidperl postinst (typo). Thanks to Joey Hess . * Make all uses of local perl also make use of local perl modules (oops). Thanks to Daniel Jacobowitz . * Fixup and apply patch to an off by one error in decode \x{}. Thanks to Kai Henningsen . (09_utf8_hex_char_fix) * Fix 5.005 arch compatibility path now uses the correct architecture rather than just i386. (closes: #78174) * Verified that patch in #78048 fixes @_ segfault in ops. (10_op_at_underscore_segfault) (closes #78048) -- Darren Stalder Sat, 2 Dec 2000 15:40:04 -0800 perl-5.6 (5.6.0-4) unstable; urgency=low * put parentheses on the end of the call to _PATH_LOG in Sys::Syslog so that it works. (closes: #76966) Remove references to syslog.ph - 07_syslog_path_log. * The debug target now uses ./Configure -deS to make it not look for a tty. (closes: #77009) * Fix make.base so it works for the newer version number. (closes: #47204) * Add base.pm to perl-5.\d+-base for debconf (closes: #77145) * Add XSLoader.pm to perl-5.\d+-base. Many module authors thought Dynaloader took to much memory; XSLoader is a much smaller version. (closes: #77280, #77292) * Add File::Glob to perl-5.\d+-base so those scripts using globbing work under 5.6. (closes: #77384) * Add libdb2-dev to the Build-Depends list. (closes: #77758) * Downgrade perl-5.\d+-suid to optional. (closes: #77841) * Only mention the problem with updating to the new Berkeley DB format if upgrading. (closes: #76425) * 5.6.0-3 fixed the include paths already. (closes #76421) * Change the documentation of AutoLoader to not suggest testing against the text of an error message. Change those places in Perl where an AUTOLOAD method does so. 08_autoload_not_anglocentric (closes: #75256) -- Darren Stalder Sun, 26 Nov 2000 17:16:07 -0800 perl-5.6 (5.6.0-3) unstable; urgency=high * Quick release since 5.6.0-1 had broken paths aand 5.6.0-2 was rejected from Incoming (I had the source on both of them and it was only there when -1 was installed.) closes: #76425) * Make tests not run on big endian mips (from "Florian Lohoff" ). * Net::Ping makes invalid assumptions about UDP always returning a hostname if there is any data on the socket - 06_netping_udp_fix. (closes: #55427). * Mention that perl-[.\d]+-doc overwrites parts of libansicolor-perl and libpod-parser-perl. (closes: #76443) * Note that I'll release the no-alternatives version of all three Perl packages 2 days after this version is accepted so as to give it time to hit the mirrors. -- Darren Stalder Mon, 6 Nov 2000 22:06:14 -0800 perl-5.6 (5.6.0-2) unstable; urgency=low * Fix t/op/filetest.t so that it works under fakeroot - debian/patches/03_fix_fakeroot_op_filetest * Make the patched target append each patch as it goes to the 'patched' file. Make the target .precious to keep make from removing it on error. That would rather defeat the point. * rm config.sh.static in clean target * Shorten the make targets for building the static Perl: - Now, build target builds both the static Perl and the libperl with extensions and such. - Only Perl and suid Perl get built. We don't need to build the extensions when we're about to blow them away. - We also wait performing the tests until we have the shared Perl. * Actually get the paths correct for Perl, using a colon separated privlib and archlib. This uncovered 2 documentation and 1 Configure bug in Perl. * Make NDBM_File use libgdbm's ndbm emulation instead of libdb's since DB_File can't handle null keys currently. - debian/patches/04_NDBM_uses_libgdbm * Perl 5.6 has to conflict with the old data-dumper package. Since the package isn't available anymore in potato or woody, this shouldn't be a problem. * incpush will create duplicate path entries in @INC if either vendorlibexp or sitelibexp don't end in the version number of Perl. Patch Configure to leave _stem fields empty if they'd be the same as the field they are created from - 05_no_define_stem -- Darren Stalder Sun, 22 Oct 2000 13:43:53 -0700 perl-5.6 (5.6.0-1) unstable; urgency=low * With the massive problems on my system, I've been unable to fix the alternatives so I'm releasing this now so that people have a perl 5.6 to use. -- Darren Stalder Thu, 18 Oct 2000 05:58:26 -0700 perl-5.6 (5.6.0-0.3) unstable; urgency=low * Patched up ExtUtils::MM_Unix to not use LD_RUN_PATH if the envar NO_LD_RUN_PATH is true. * Patched eg/rename to use the modern rewritten version from Robin Barker (Robin.Barker@npl.co.uk). -- Darren Stalder Mon, 16 Oct 2000 04:29:34 -0700 perl-5.6 (5.6.0-0.2) unstable; urgency=low * Add the threading version of Perl into the build system. XS components need it even if users can't. * Move the documentation to binary-indep * Copy Brendan's patched target wholesale for the application of patches. * Adapt Brendan's libperl changes. Be sure and link suidperl static. -- Darren Stalder Wed, 27 Sep 2000 14:53:02 -0700 perl-5.6 (5.6.0-0.1) unstable; urgency=low * New upstream version. New numbering system. * Note that there is currently no threading available with this version. The 5.6 threading model (interpreter threads) isn't currently usable from user space. 5.005 threads can be built but only will be if there is a demand for it since perl-5.005 is available. -- Darren Stalder Wed, 12 Apr 2000 01:12:45 -0700 perl-5.005 (5.005.03-7) frozen unstable; urgency=low * This needs to be put into frozen so that Alpha has the correct syscall.ph constants (important bug #55794) and the copyright on the perl-policy is correct (important bug #60233) * Changed copyright on perl-policy.sgml from "the Debian Project" to "Software in the Public Interest". This is so the document is actually copyrighted by a legal entity. This closes: bug#60233. * Completely regenerated the *.ph files. There appears to be a clean separation these days of system specific stuff into the asm directories. The only question would be the stuff in the bits/ directory since that seems to be autogenerated by the kernel. The only one that I know needs it is bits/syscall.ph. I've written a script to make sure it takes in all the syscalls as necessary. Note that this is a somewhat long job since h2ph only does a 90% job, so the generated .ph files take a bit of hand-editing. This closes: bug#55794. * Install the Perl Social Contract (Porting/Contract) into the doc directory of the perl-5\d+-doc package. This closes #51963. * Modified lib/ExtUtils/MM_Unix.pm so that if the environment variable NO_LD_RUN_PATH is set true, then MakeMaker won't use LD_RUN_PATH in the dynamic_lib method and therefore the .so won't have an rpath built into them. This closes: bug#47116. -- Darren Stalder Sun, 26 Mar 2000 22:25:37 -0800 perl-5.005 (5.005.03-6) unstable frozen; urgency=low * Change Recommends perl-doc to Suggests and add $(DOCDIR)/Where_is_the_Documentation.gz closes: Bug#59145 * Make suidperl be suid even if suidmanager isn't installed. closes: Bug#55521. -- Darren Stalder Tue, 29 Feb 2000 04:58:56 -0800 perl-5.005 (5.005.03-5.3) unstable frozen; urgency=low * NMU * adds frozen to distribution list... * Compile with -mieee to compile options for alpha; closes: #55269 -- Randolph Chung Sat, 22 Jan 2000 09:46:14 -0700 perl-5.005 (5.005.03-5.2) unstable; urgency=low * NMU * Missed GDBM modules last time... adding them back (closes: #55430) -- Randolph Chung Tue, 18 Jan 2000 20:52:15 -0700 perl-5.005 (5.005.03-5.1) unstable; urgency=low * NMU * Adds IO::File; closes: #54922 -- Randolph Chung Sat, 15 Jan 2000 01:44:59 -0700 perl-5.005 (5.005.03-5) unstable; urgency=low * Accept all of Raphael Hertzog's changes in the NMU. Thanks a lot Raphael for helping me through this hard time. Your patches were without flaw. * I'll be fixing this up much more in the coming week. This release is to fix the critical bug below. * Change perl-5.005-doc to Suggests and make sure /usr/share/doc/perl-5.005/Where_is_the_Documentation is installed. Closes: #43078. * Add overload.pm to perl-base as a temporary patch until debconf doesn't use Data::Dumper anymore. Closes: #53428 -- Darren Stalder Mon, 3 Jan 2000 11:07:40 -0800 perl-5.005 (5.005.03-4.1) unstable; urgency=low * Non maintainer upload. * Non-bugs that can be closed. Closes: #51656, #49812, #45908, #47122 * Removes perl-=version= if no more needed. Closes: #46187, #41436, #46188 Also calls update-alternatives remove only when removing the package. Closes: #46581 * Correct permissions of perl-=version= in postinst after update-alternatives to prevent failures like we had because of a 0600 perl binary. Closes: #45898, #45875, #45877, #45898, #46369 * Removed LD_RUN_PATH="". Closes: #48544 * Added POSIX/autosplit.ix to perl-5.005-base. Closes: #50242 * Added Data::Dumper to perl-5.005-base. Closes: #50552 * Added IPC::Open2, IPC::Open3, Text::Wrap and Text::Tabs to perl-5.005-base. Closes: #50937 * Added the perl5.005 binary too. Closes: #51289 * I moved many files from one packages to another. I had to add a Replaces field in order to not cause problems. * Corrected postinst from perl-5.005-doc. Closes: #45863, #45870, #45887, #47870 * Added Errno.pm to perl-5.005-base. Closes: #47204 * Use relative symlinks for compatibility /usr/doc/* link. Closes: #48286 * Applied the patch for mipsel support. Closes: #48915 * perl-5.005-doc replaces: libcgi-perl until a better solution can be found for the overlapping manpages. Closes: #47245, #47844, #47996, #52632, #49371 -- Raphael Hertzog Sun, 19 Dec 1999 15:31:04 +0100 perl-5.005 (5.005.03-4) unstable; urgency=low * Many changes to make Perl build on Hurd from Marcus Brinkman, closes: Bug#31621. - Update debian/README to partially reflect the current situation; no need to type root password; the problem with locales was fixed long ago. - Update debian/copyright to talk about Debian rather than Debian/GNU; There are now many O'Reilly books on Perl. Don't mention a number. - Convince debian/make.base and debian/make.versions to use $cpu-$system rather than $arch. - Use linux and gnu as acceptable systems in debian/make.base - Don't try to mkdir with '/' on the end of the name in debian/make.base - Skip packages we don't build in debian/make.versions - Change all maintainer scripts to use =cpu=-=system= rather than =arch= - Many changes to debian/rules to allow for conditional testing (not on arm, hurd) and conditional building of threads (not on hurd, 5.004) I think this is the last thing (other than debian/control) that is different between the builds. I'll parameterize debian/control on the next build and we'll be happy. * Change the paths in debian/rules and debian/perl-policy.MK to be FHS compliant. * Make the postinsts/prerms install/remove the compatibility symlink for the move from FSSTD to FHS. * Fix debian/make.versions to be FHS compliant as well. * Use -fPIC in the cccdlflags so that Perl compiles with -fPIC everwhere instead of -fpic in some places. This now complies with policy and closes: Bug#41587, #43930. * Have make test actually use make test-notty so as to not die on automated compiles. Closes: Bug#33225. * Use unlink instead of system("rm -f ...") in debian/make.base. I seem to've gotten carried away using cp -a a while back and used system instead of unlink. Brain needs to be on... * Change the mention of the location of the GPL and Artistic copyright files in debian/copyright from /usr/doc/copyright to /usr/share/common-licenses. * Fix Getopt::Long so that the documentation of the require_order configuration option is now correct closes: Bug#39180. * Embedding works now. It's probably as Tom Rothamel said; Perl just needed to be recompiled with glibc2.1. Closes: Bug#38615. * In gv.c, Fix for 'use Safe;' with -w segfaults from Sarathy installed. Closes: Bug#38533. * In handy.h, only #define HAS_BOOL due to _G_HAVE_BOOL if we're using g++. _G_HAVE_BOOL is defined in _G_config.h. This will probably be included in a gcc program since stdio.h includes libio.h which includes _G_config.h. Thanks to Greg Stark . This can be closed once it is tested. * Namespace was cleaned up a while ago, closes: bug#33844. * Complaining locales was fixed a while ago, closes: bug#30207. * Perl has been compiled with glibc for a while, closes: bug#29452. * rename has been included, closes: bug#26616. * cperl-mode is installed in the right place now, closes: bug#24249. * Specify man1dir in Configure so that it goes to the FHS compliant place. * Fix the paths for $(LIBDIR)/ExtUtils/inst $(LIBDIR)/ExtUtils/xsubpp $(LIBDIR)/File/DosGlob.pm to make lintian happy. * Make $(LIBDIR)/ExtUtils/inst $(LIBDIR)/ExtUtils/xsubpp executable to make lintian happy. * Remove $(LIBDIR)/CGI/Fast.pm since we don't include FCGI.pm. This satisfies lintian and closes: bug#44544. * Applied patch from Jim Pick that adds the appropriate arch-specific *.ph files in debian/.ph/asm-arm. This would close bug#44605 but it's requiring some *.ph files he doesn't supply. Mail sent off to him about this. Got .ph/arm-arch/proc/shmparam.ph from him. Closes: bug#44605. * Add Porting/patchls to /usr/bin, fix its path. * install-doc should show be used in both remove && upgrade for prerm. Add stuff to debian/doc.postinst to deal with this problem. * Added re.pm and friends to perl-5.\d+-base. This closes: bug#45552. * Removed the large number of extra POSIX autoloader modules. The locale stuff that's part of POSIX don't need these. * I've already moved to /usr/share/man in this package and so, this closes: bug#45678. -- Darren Stalder Wed, 22 Sep 1999 00:15:40 -0700 perl-5.005 (5.005.03-3) unstable; urgency=low * run with 'make LD_RUN_PATH=""' so that we don't have rpath information in the shared libraries. (Many lintian warnings.) * Make the shell read in the perl-base.preinst script not fail when stdin is /dev/null. (Closes Bug#41598) * Rename asm-ppc (as it is in the linux tree) to asm-powerpc (as policy says it should be). Closes Bug#42803. * Add DirHandle.pm to base. (I thought I had done this.) Closes Bug#33229. * Implemented patch from Julian Gilbey that fixes up INSTALLPRIVLIB so as to make it easier for packagers. Closes Bug#42421. * Provide perl5-suid. Closes Bug#42884. -- Darren Stalder Tue, 17 Aug 1999 00:15:41 -0700 perl-5.005 (5.005.03-2) unstable; urgency=low * Added arm architecture to debian/make.base, Closes Bug #40666. (Thanks to Jim Pick ) * Made a few more changes to debian/rules to support bugs in fileutils (see bug #39680 that I filed) as well as testing for arm under make test and letting it fail. There has to be a better way to do this. Fixes from Jim Pick * perl-5.\d+-doc replaces perl (<< 5.004.05-1) so the manpages won't conflict. Closes Bug #40689. (Thanks to Joel Klecker ) * Conditionalize the inclusion of ndbm.h in ext/NDBM_File/NDBM_File.xs so that m68k (still on glibc 2.0) will build. Closes Bug #40781. (thanks to Roman Hodek ) * New version of perl-policy from Raphael. * Fix Config.pm's startperl to be /usr/bin/perl (or /usr/bin/perl-thread) when the build is done. * Fix the installman[13]dir's in Config.pm so a simple perl Makefile.PL; make test; make install will work from the user's point of view. Closes bugs #34106, #15797, #28955. -- Darren Stalder Wed, 7 Jul 1999 12:23:15 -0700 perl-5.005 (5.005.03-1) unstable; urgency=low * Release to Incoming on master. -- Darren Stalder Thu, 1 Jul 1999 01:51:53 -0700 perl-5.005 (5.005.03-0.10) unstable; urgency=low * Oops. rename needs to be versioned along with all the other commands. -- Darren Stalder Mon, 28 Jun 1999 12:09:11 -0700 perl-5.005 (5.005.03-0.9) unstable; urgency=low * perl.1p.gz didn't have an update-alternatives --remove in the prerm. * Make perl-$(version)-thread provide perl5-thread so packages using perl-thread don't have to depend on a versioned perl-thread. * No longer conflict with data-dumper so that it can remain installed while perl-5.004 and the older packages need it. * No longer ask if we should abort during the preinst. Perl 5.004 isn't diabled with the installation of Perl 5.005, so there is no reason. * Convince commands with no manpages that they should have an unversioned symlink installed by update-alternatives. * Installed updated eg/rename as a command. eg/rename was updated by Robin Barker Sat, 26 Jun 1999 02:54:23 -0700 perl-5.005 (5.005.03-0.8) unstable; urgency=low * Fix typo in perl-base.postinst (=version instead of =version=) * Add all of POSIX.pm,.so,.al to perl-base in an initial attempt at supporting Internationalization in the base disks. We'll need to remove *.al files that aren't necessary and put them in perl. * Automate the update-alternatives lines for the man pages for perl-thread. This way when another Thread::*.3pm comes along, I don't have to notice, it will. * Add/Remove /usr/local/lib/site_perl/$arch-linux-thread in thread.postinst/prerm if /usr/local/lib is writable. * Fixed missing parens around $version when moving perl.1p back to perl from perl-doc * Mentioned installing 5.004_05 in copyright file as well as correcting the path to CPAN on www.perl.com. * Add Debian changelog to perl-base. * Remaining typo fixes from Raphael: /usr/man/man1/perl-=version=.1p.gz in postinst startperl should be #!/usr/bin/perl-$(version) the asm *.ph directories should be =version=/=arch=-version * perl-$(version)-base should conflict with perl-base rather than perl. This way, if someone has never installed the full Perl package, they still conflict until all the non-versioned Perl is gone. * rename threadperl-5.005 to perl-5.005-thread. Raphael is right; tab-completion is handy. -- Darren Stalder Tue, 22 Jun 1999 08:17:23 -0700 perl-5.005 (5.005.03-0.7) unstable; urgency=low * Integrated Raphael's changes without the debhelper stuff. * Made cperl-mode.el be version specific with alternatives. * Raphael updated the Standards-Version in control to 2.5.0. * Raphael fixed up the base.postinst so that the newly installed (not-yet-versioned) perl runs update-alternatives. * Made perl-version-doc Recommend perl-version instead of just Suggest it. perl-doc should only not be installed in special cases. * Made perl-version-thread Priority: extra instead of optional. Considering the experimental nature of threaded Perl right now, I'd say it qualifies having specialized requirements. * Applied the same changes to the i386-linux-thread tree as I did to the i386-linux tree. Don't want my paths leaking into Config.pm. -- Darren Stalder Sat, 19 Jun 1999 05:10:13 -0700 perl-5.005 (5.005.03-0.6) unstable; urgency=low * Removed io reference. * Corrected perl-5.005-thread postinst/versionning/building. * Added replaces data-dumper to perl-5.005-doc so that the Data::Dumper man page may be overwritten without forcing. -- Raphael Hertzog Wed, 16 Jun 1999 00:10:00 +0200 perl-5.005 (5.005.03-0.5) unstable; urgency=low * Converted to debhelper. * Added POSIX stuff into perl-5.005-base. * Corrected many lintian warnings/errors * WARNING: NDBM_File and DB_File built with libdb2 - this is incompatible with old db files. -- Raphael Hertzog Tue, 15 Jun 1999 15:22:01 +0200 perl-5.005 (5.005.03-0.4) unstable; urgency=low * New upstream release. * Major changes to the debian files as we go to versioned Perls. -- Darren Stalder Sat, 5 Jun 1999 00:08:42 -0700 perl (5.005.02-1) unstable; urgency=low * New upstream release. Note that this is a very basic release so that module authors can release their stuff under 5.005. (Fixes Bug #26072) * Defined d_statblks in Configure (Fixes Bug #22367) * Conflict, replace, and provide data-dumper since it's now provided by Perl. (Fixes Bug #27543) * Specifically turn off sfio for the standard release of Perl. -- Darren Stalder Sat, 9 Jan 1999 16:43:23 -0800 perl (5.004.04-6) frozen unstable; urgency=low * Fix symlinks for perl-suid and perl-debug doc directories. (Fixes Bug #19867) * Make sure that *all* files are readable. (Fixes Bug #20791) * Make changes to c2ph.PL (includes pstruct), perldoc, and s2p so that they try to use POSIX::tmpnam() in creating temp files. Note that perlbug already checks for the existence of the temp file before creating it. (Fixes Bug #19805) * Apply patch from next maintenance release so that -e scripts are kept in memory rather than written to a temporary file. * Fix typo in perlop(1p). Thanks to Richard Braakman for pointing this out. (Fixes Bug #22488) * Add /usr/doc/perl/perlfaq-is-free to explain Tom Christiansen's intent with his perlfaq copyright. (Closes Bugs #10286, #22705) * Fix typos in postrm scripts. Thanks to Mark Eichin for this. (Fixes Bug #23107) -- Darren Stalder Tue, 2 Jun 1998 04:42:47 -0700 perl (5.004.04-5) unstable; urgency=low * Add copyright file to perl-base since it makes it comply with the standards and doesn't take up much space. (Fixes Bug #19384) * Added files to base so that dpkg-ftp is fully supported. (Actually in -4, but I forgot to mention it.) (Fixes Bug #16134) * Added even more files to base so that libnet is fully supported. (Fixes Bug #18338, #18593) * Remove /usr/lib/perl5/DynaLoader.pm - yet another file left over from disk install. (Fixes Bug #17970, #18823) * Specify -DSTRUCT_TM_HASZONE to keep POSIX from dumping core. (Fixes Bug #17393) * debugperl and suidperl now have manpages that are symbolic links to perl(1p). I debated linking debugperl(1p) to perlrun(1p) and suidperl(1p) to perlsec(1p) but didn't think that was appropriate. (Fixes Bugs #6295, #6330, #9847, #9995, #10102). * Changed description of perldebug to say that it shows internals of Perl and helps debug Perl. (Fixes Bug #17547). * Changed the permissions on suidperl to give group and world read access. It makes no sense to restrict read access when anyone can get a copy of off CPAN. * Also registered suidperl with suidmanager. (Fixes Bug #15702) * Remove the execute permission and use strip --strip-unneeded on all the .so's. (Fixes #5100, #5124, #6328, #6903) * Sym-Link find2perl.1p.gz and pod2latex.1p.gz to undocumented.7.gz until I can write something or it's provided. Sym-Link pod2text.1p.gz to Pod::Text.3pm.gz. (Fixes #6328) * Sym-link /usr/doc/perl/changelog to /usr/doc/perl/Changes so that the latest upstream changes file has the proper name. * Tell perl_archive in ExtUtils::MM_Unix to return -lc so that the shared libraries built with MakeMaker have libc dependency information embedded in them. Note that if the module specifies it's own libraries, those will come after the -lc. If this is a problem, the module should specify -lc in its library list. * Use mkstemp to avoid security/dos race conditions in /tmp. -- Darren Stalder Tue, 10 Mar 1998 23:00:09 -0800 perl (5.004.04-4) unstable; urgency=low * Add || true to the fixup lines in the perl.postinst - the previous method didn't expose the error return of rmdir -p, the if;then;fi method does. (Fixes Bugs #15854, #16412, #17328, #17425) * Adapted patch from Stephen Zander so that Perl knows to use getspnam if shadowing is enabled. (Needed extra Configure bits added.) (Fixes Bug #15993) * Added Conflicts: perl (<<5.004.04-2) to perl-base so you can't install it with an older version of the perl package. (Fixes Bug #16810) * Make sure that none of the gzipped examples are executable in /usr/doc/perl/examples. (Fixes Bug #11978) * Remove /usr/lib/perl5/IO/Handle.pm. It was left over from a disk install where parts of Perl weren't handled by dpkg. Its presence is causing version mis-matches. (Fixes Bug #15572) -- Darren Stalder Sat, 24 Jan 1998 21:17:28 -0800 perl (5.004.04-3) unstable; urgency=medium (High for those upgrading from bo) * A start on building a libperl5.so.\d+. I'm going to put this into since 1) Perl is linking with a static libperl.a and 2) people may want to install libperl5.so.\d+ without installing perl. * Oops. I hadn't considered the chance that the old perl package would be replaced by the new perl package (without Perl) before perl.base was configured. Added a pre-depends of perl-base (>=5.004.04-2) to make sure that Perl is always installed on an upgrade. * The first 90% of a project takes 90% of the time. The remaining 10% of the time takes the other 90%. Building a libperl ran into some interesting snags and will not debut with this version. * Adapted patch by Herbert Xu that uses if's in the postinst so that we don't get false negatives on install. Took the chance to change the find/xargs to use -print0/-0 jic. -- Darren Stalder Tue, 9 Dec 1997 12:21:48 -0800 perl (5.004.04-2) unstable; urgency=medium * Wonderful idea from Scott Ellis , set archlib to be the major version so that maintenance versions don't break all the arch-dependent perl-debian packages. * Strip a2p, fixing Bug #14891. * Files copied by make.base should keep hard-links. -- Darren Stalder Fri, 28 Nov 1997 22:27:45 -0800 perl (5.004.04-1) unstable; urgency=low * New upstream (maintenance) version * Turn off Perl 5.003 compatibility since this is the libc6 version. (should've been done last version) * All tests finally pass now that locale test #102 was considered not important for Perl. * First attempt to get perl-base -really- working. (As opposed to what I did in 5.003.07). -- Darren Stalder Tue, 21 Oct 1997 02:20:05 -0700 perl (5.004.02-1) unstable; urgency=low * New upstream (maintenance) version * Recompiled for libc6. * Remove ftp.pl from the distribution since it depends on chat2.pl which is obsolete and has been removed from the perl dist at the request of its author. * Remove the -I/usr/include/db since that was only for libc5. -- Darren Stalder Mon, 7 Aug 1997 21:55:23 -0700 perl (5.004-2) unstable; urgency=low * I had a semi-colon in the wrong place such that the gzip of the man-pages (which are now compressed) killed off the removal of the build artifacts in Config.pm. Enough still ran so as to not be overly noticeable. Registering bug against gzip since it should be possible to not have an error if you try to compress already compressed files. -- Darren Stalder Tue, 24 Jun 1997 00:52:12 -0700 perl (5.004-1) unstable; urgency=low * Perl 5.004 is released. Another debian version will follow that fixes packaging problems. * Applied patch from HJ Lu for libc6. * Edit copyright file for correct version. * Take the /bin/perl link out of the build tar's postinst. -- Darren Stalder Thu, 15 May 1997 18:29:55 -0700 perl (5.003.07-10) unstable frozen; urgency=HIGH * SUID perl patch to fix buffer overrun that allows any user to get a suid-root shell. -- Darren Stalder Mon, 21 Apr 1997 20:50:21 -0700 perl (5.003.07-9) unstable frozen; urgency=medium * Applied patch from HJ Lu for libc6 * Removed perl-base from dist for release into bo * This will be the last release that has /bin/perl as a link (or at all). -- Darren Stalder Wed, 16 Apr 1997 01:02:07 -0700 perl (5.003.07-8) unstable; urgency=low * How'd that get in there? Somehow a static version of postinst crept into the dist such that it depended on 5.00320 and i386. *embarrased* -- Darren Stalder Sat, 8 Mar 1997 14:06:21 -0800 perl (5.003.07-7) unstable; urgency=low * Compile the perl library with -D_REENTRANT for LinuxThreads. It's still dangerous and there are problems with MULTIPLICITY (which this isn't compiled with) as well. * Sent the output of the various rmdir -p's in postinst to /dev/null so that people don't see old gunk. * Included target to add a comment to the changelog so that an automatic package from untarring this in a new perl subversion works with the correct version. -- Darren Stalder Mon, 3 Mar 1997 01:35:20 -0800 perl (5.003.07-6) unstable; urgency=low * Changed perl, perl-suid, and perl-debug to section interpreters. Changed perl-base to section base. * Changed rules to determine the perl version dynamically so that it doesn't have to be editted for each new version. * Rebuld and upload so that perl will just pre-depend on libc5.4 rather than libc5.4.17-1. This and -5 were destined for stable and 5.4.17-1 isn't available for that. -- Darren Stalder Fri, 17 Jan 1997 19:04:13 -0800 perl (5.003.07-5) unstable; urgency=low * Moved config.over.MK to the debian directory so that all the files that I add are there. * Just ignore the mkdir on /usr/local as the easiest solution to the NFS-ro /usr/local problem. Suggestion by Guy Maor . -- Darren Stalder Fri, 10 Jan 1997 02:13:22 -0800 perl (5.003.07-4) unstable; urgency=low * Fixed problem with suidperl. It will actually run suid now. -- Darren Stalder Sun, 15 Dec 1996 23:56:59 -0800 perl (5.003.07-3) unstable; urgency=low * Add check to postinst to check for old perlconfig created include directories and removed them. * Made perlbase's Config.pm use the correct install paths * Made perl provide/replace/conflict with perlbase to replace it properly * No longer put libperl.a in suidperl since we not doing shared perl. -- Darren Stalder Thu, 12 Dec 1996 23:40:09 -0800 perl (5.003.07-2) unstable; urgency=low * Changed Perl to provide io as well as conflict with it since it's been subsumed into the main perl distribution. * Applied patch from Nick to make use FileHandle; work transparently although is should be use IO::Handle (or other appropriate IO::) * Applied patch from Randy so that use sigtrap doesn't complain anymore. * Applied patch from Paul that changes use strict tie; into a warning. * Changed perl back to a static libperl * Developed and packaged a perl-base to go on the base-floppies. -- Darren Stalder Thu, 21 Nov 1996 04:13:51 -0800 perl (5.003.07-1) unstable; urgency=medium * added code to postinst/prerm that only creates the empty /usr/local/lib/site_perl directory if /usr/local/lib is writable by root (fixes Bug #5003) * Updated to dpkg standards version 2.1.1.0 (fixes Bugs #3874, 4709) * Pre-generated all the *.ph files that people will probably need. The correct asm directory will have a symbolic link set during postinst. (fixes Bugs #4493, 4739, 1856, 3770, 3277, 3803, 3814, 1099, 3784, 1201, 1170, 3908, 2405, 4717, 2184, 1411, 2440) I wonder if this is a record for the most number of bugs fixed by a change. * Changed debian.rules to generate a shared libperl for the main executable with a static suidperl and debugperl. This should help Fast-CGI, nvi, and if folks are using the compiler. * Edited the copyright file to reflect current reality rather than bygone days (fixes Bug #2589) * Added Pre-depends: ldso to control file in case the user upgrades ldso at the same time they upgrade Perl. (fixes Bug #2589) * Made sure that all files in the examples directory (/usr/doc/perl/examples) were readable (fixes Bug #3995, 4615, 4734, 4870) * Added symbolic link /usr/doc/perl/examples to point to the examples directory. (fixes Bug #3997) (this is obsoleted by new standards) -- Darren Stalder Mon, 28 Oct 1996 05:34:26 -0800 Perl 5.003 Debian 2 Mon Jul 1 01:27:23 1996 Darren Stalder * Changed Depends: libc5, libdb1, libgdbm1 to Pre-Depends * Added check for pre-depends support into preinst * Added a link to ../usr/bin/perl from /bin/perl * Had Configure undef CSH so that we don't need to depend on csh anymore. Perl 5.003 Debian 1 Tue Jun 25 02:25:00 1996 Darren Stalder * Added patches from Charles Bailey to bring Perl up to 5.003 * Included patch set from Andy Dougherty to fix gconvert problem. Perl 5.002 Debian 10 Thu Jun 6 01:05:36 1996 Darren Stalder * The permissions of many of the files were set right. Fix in debian.rules so this can't happen again. Perl 5.002 Debian 9 Tue Jun 4 02:00:00 1996 Darren Stalder * Changed recommends of perl from source | includes to libc5-dev in accord with where the include files actually come from * Added the following Priority fields: Perl - Important (from Packages), perl-suid - Standard, perl-debug - Optional * use dpkg-name instead of a manual move Perl 5.002 Debian 9 Wed May 1 00:13:32 1996 Darren Stalder * Changed the '_' in the the package names to '-' per Ian Jackson. Perl 5.002 Debian 8 Sun Apr 28 18:28:34 1996 Darren Stalder * Added Source and Section fields to all of the control files. Perl 5.002 Debian 8 Fri Apr 26 23:59:47 1996 Darren Stalder * Added tcsh as well as c-shell to the dependency list. I'll remove the tcsh once c-shell is provided by it. * Changed the suidperl from being a question in the postinst to being it's own package. * Added perld (debugging perl) as a package. Both of these are dependent on the specific version of perl. We'll see if this causes a problem in upgrading. * Changed mail address in postinst to debian-bugs@pixar.com. I've got to do something about perlconfig Perl 5.002 Debian 8 Wed Apr 17 02:48:46 1996 Darren Stalder * Changed the tcsh dependency to c-shell. * Added the dosuid define to Configure so that perl would once again create a suidperl. It was dropped from the upstream release. There is a question in the postinst that asks if you want it or not. Perl 5.002 Debian 8 Mon Mar 11 23:01:27 1996 Darren Stalder * Added dependency on tcsh until the globbing works without calling csh. Perl 5.002 Debian 7 Fri Feb 23 21:41:04 1996 Darren Stalder * Added changes from the m68k project to make perl compile cleanly on m68k Perl 5.002 Debian 6 Thu Feb 8 07:42:52 1996 Darren Stalder * Patch from Andreas from Test::Harness for where libwww tickled some bugs. Perl 5.002 Debian 6 Tue Feb 6 21:20:37 1996 Darren Stalder * Paul patched his modules so they comply with version-checking and makes some of them strict clean * Paul patched xsubpp to allow for empty prototypes (1.933) * Patch from Larry to fix a broken study (it didn't know when a string was modified) * Patch from dean to shutup warnings from File:Path Perl 5.002 Debian 5 Tue Feb 6 03:52:37 1996 Darren Stalder * Implemented basic (sev 1) changes to Config.pm for initial fix on Bug #1916. The debian install paths are no longer embedded in it. Perl 5.002 Debian 5 Mon Feb 5 19:02:01 1996 Darren Stalder * Changed to new debian release number since the beta level changed * Larry released beta3 * Some extra configure variables creeped into Configure. Fixed by Tim * Revamped 32bit overflow patch for beta3 from Chip * Don't allow globbing to take place on open if strict refs is in place * Andreas upgraded Test::Harness to 1.06 * Selfstubber nees to tell Exporter that it's autoloaded (andreas) * Fix so that reading the _DATA_ file handle doesn't freeze at EOF (Chip) * debugger still had old version at the end. Deleted (Ilya) * patch to avoid segv's in certain globs (Chip) * make autoloader warnings go away (Ilya) * fix to Makefile.SH so that you don't *have* to have . in your path (Roderick Shertler) * Dean upgraded h2xs to 1.15 Perl 5.002 Debian 4 Sat Feb 3 02:10:40 1996 Darren Stalder * Ilya released a new version of the debugger * A SEGV based on magic is fixed with a patch from Chip Perl 5.002 Debian 4 Tue Jan 30 01:08:52 1996 Darren Stalder * Paul upgraded xsubpp to 1.932 * The documentation for the -M switch had been dropped somewhere. This puts it back in. (from Tom) * $@ would append to itself with each die Perl 5.002 Debian 4 Fri Jan 26 03:15:26 1996 Darren Stalder * perlxs.pod documentation patch by Dean Perl 5.002 Debian 4 Wed Jan 24 00:45:04 1996 Darren Stalder * Andy added an extra $ to nm when he applied my patch - fixed * Paul upgraded xsubpp to 1.931 * Started using the debian-extract-changes.pl from the libdb package Perl 5.002 Debian 4 Tue Jan 23 11:43:51 1996 Darren Stalder * Ilya fixed parts of the Readline pod docs * Andy left out a piece on the pod/Makefile patch * patch to DBL_BIG in case someone tries to build this with a.out Perl 5.002 Debian 4 Mon Jan 22 03:22:34 1996 Darren Stalder * Upgraded to perl5.002beta2 from Andy * Added in the pod fixes from Tom * Upgraded xsubpp to 1.930 from Paul * The debugger was added in twice in 2b2, patch2b2a fixes this * Added a pod/Makefile fix from Andy * Dean upgraded h2x2 to version 1.14 - patched Perl 5.002 Debian 4 Wed Jan 10 04:36:02 1996 Darren Stalder * Added patches for the following: hex('80000000'), 0x80000000 should be the same - Chip Salzenberg a variety of fixes for File::Find - Tim Bunce perlembed.pod is less misleading - Tim Bunce fixes for perlre.pod and perl.pod - Hallvard B Furuseth Perl 5.002 Debian 4 Sun Jan 7 02:47:14 1996 Darren Stalder * Upgraded to the upstream version of perl5.002beta1h from Andy * Removed the a.out generation from debian.rules since I'm not making a.out packages anymore * Changed pod/Makefile from PERL = perl to PERL = ../miniperl so that a build will work if you don't have perl installed already * Changed installperl to not try to guess about links if you installing to a different directory than you will be running from (debian-tmp/usr/bin) Perl 5.002 Debian 4 Fri Dec 29 23:57:14 1995 Darren Stalder * Added a check to see if /usr/local/include is there before attempting to build .ph files from the .h files there (Bug #1856) Perl 5.002 Debian 4 Fri Dec 22 01:39:08 1995 Darren Stalder * Added the patch 5.002b1g from Tom - a documentation only patch Perl 5.002 Debian 3 Tue Dec 19 01:47:19 1995 Darren Stalder * Perl now uses the new sonames for libgdbm and libdb with dependencies on the new names (libdb1 and libgdbm1) Perl 5.002 Debian 3 Mon Dec 18 03:23:04 1995 Darren Stalder * Summary of additions: Added patches a-f from Andy Applied the patch to implement Safe perl that will be coming out soon. Applied some documentation patches - perldata/dsc/mod/ref by TomC, perlembed by JonO, tiehash by RandyR, and perlxs by DeanR * Had to cruft up the Configure script so that it does an nm on static libs and an nm -D on shared libs. I thought just nm should work on both. Perl 5.002 Debian 2 Mon Nov 27 02:34:59 1995 Darren Stalder * Removed find lines in debian.rules binary install since installperl does a good job of it * Removed find lines in postinst/perlconfig since the include file permissions and modes should be fine. * moved /usr/doc/perl/example_code to /usr/doc/examples/perl * Changed reference in example README to 'eg' directory to examples directory * Changed some bad paths in example code directory * Had install check and not ask about installing in odd places if debian-tmp is in the install-path Perl 5.002 Debian 1 Sat Nov 25 01:05:15 1995 Darren Stalder * Removed manual generation of manpages in debian.rules file. Now just call ./installman with the appropriate arguments. * Changed extensions for man1 pages to 1p and man3 pages to 3pm * Changed Configure so that it actually listens when you tell it what extensions to use for for man1 and man3. * Changed references to /usr/local and perl5.000 in the man pages * Changed references in scripts from /usr/local to /usr * Setup config.over file to fix-up config.sh to install into debian-tmp/usr/* instead of trying to do it in sh. The shared libs weren't going in the right place. * Generated absolute path in config.over since the install runs from many different subdirectoris Perl 5.002 Debian 1 Wed Nov 22 20:42:34 1995 Darren Stalder * Applied some doc changes to perlre.pod Perl 5.002 Debian 1 Tue Nov 21 02:57:54 1995 Darren Stalder * Updated to 5.002beta1. * Changed the prerm/postinst scripts to reflect the new version specific *.ph directories * Added dependencies on libgdbm and libdb, giving support for those databases. * Removed gdbm capability from aout version. User can add it if necessary without recompiling perl. * SDBM problem went away with patchlevel 2. Perl 5.002 Debian 1 Sat Nov 18 00:16:15 1995 Darren Stalder * I (Darren Stalder) took over as maintainer of Perl. * Put quotes around $Config{archlibexp} in h2ph.PL to prevent -w warnings. * Changed the various debian files to reflect the new status. * Changed the debian.rules to use elf as the primary development platform with a.out being secondary. * Having problems with SDBM. Perl 5.001 Debian 7 (5.001n) - ??-??-95 Ray Dassen * UNRELEASED * Longer Description field in control file. * Changed Maintainer field to myself. This package should still be considered orphaned though. * a.out version now does dynamic loading via libdld. Perl 5.001 Debian 6 (5.001n) - 04-11-95 Ray Dassen * Updated to 5.001n: big patch, small problems remain. * debian.rules now passes definitions to Configure, instead of running Configure with a modified hints/linux.sh. * Use a variable in debian.rules to test the binary format. * With ELF, DB_File support is disabled (rather ad hoc). * Use softlinks for suidperl and perl. * Added explicit Depends: elf-libc, which was implicit (via elf-libgdbm). Perl 5.001 Debian 5 (5.001m) - 16-10-95 Ray Dassen * ELF version has GDBM support; depends on elf-libgdbm * Diff now relative to Andy Dougherty's patches (these are unofficial, but de facto standard). Perl 5.001 Debian 4 - 13-10-95 Ray Dassen * Interim release, since perl appears to be orphaned. * Updated to 5.001m. Perl 5.001 Debian 3 - 5/9/95 Carl Streeter * Fixed Bug#219. h2ph was making output which didn't work. * put magic in the postinst to fix it. This opens the can * of worms whereby I fix all of h2ph's messups. Ugh. Perl 5.001 Debian 2 - 5/8/95 Carl Streeter * Added dialog.pl interface to dialog for Jim Robinson Perl 5.001 Debian 1 - 3/1/95 Carl Streeter * Updated perl version to 5.001. * Added black magic to figure out if a kernel tree was installed * Yelled a lot if one wasn't * added unofficial patches a-e from perl5-porters * added 'perlconfig' script to generate all possible header files (Just a copy of postinst, really) * perl now passes all of the tests. Perl 5.000 Debian 5 - 3/1/95 Carl Streeter * fixed bug in h2ph handling on subdirectories * merged all of the unofficial patches from the perl5-porters mailing list. Perl 5.000 Debian 4 - 3/1/95 Carl Streeter * h2ph now makes all useful headers. Perl 5.000 Debian 3 - 2/28/95 Carl Streeter * called h2ph to make the handy perl headers. * Put the example code and emacs modes in /usr/doc Perl 5.000 Debian 2 - 2/27/95 Carl Streeter * generally fixed it up so it was useful for debian. Perl 5.000 Debian 1 - Robert Sanders * Initial release. Local variables: mode: debian-changelog End: debian/config.debian0000644000000000000000000000657712265313056011621 0ustar #!/bin/bash eval $(echo '#include "./patchlevel.h" SETver=PERL_REVISION.PERL_VERSION; SETsubver= PERL_SUBVERSION' | gcc -E -DPERL_PATCHLEVEL_H_IMPLICIT - \ | sed -n '/^SET/{s///;s/ //gp;}') fullver="$ver.$subver" nextver="$ver."$(($subver+1)) ccflags=-DDEBIAN ldflags= arch_cpu=${DEB_BUILD_ARCH_CPU:-$(dpkg-architecture -qDEB_BUILD_ARCH_CPU)} gnu_type=${DEB_BUILD_GNU_TYPE:-$(dpkg-architecture -qDEB_BUILD_GNU_TYPE)} optimize=-O2 debugging=-g case "$1" in --static) # static perl build_type=static opts="-Uuseshrplib";; --debug) # debugperl build_type=debug debugging=both # add -DDEBUGGING opts="-Uuseshrplib";; --shared) # shared library build_type=shared opts="-Duseshrplib -Dlibperl=libperl.so.$fullver";; --version) exec echo $ver;; --full-version) exec echo $fullver;; --next-version) exec echo $nextver;; --strip) case ",$DEB_BUILD_OPTIONS," in *[,\ ]nostrip[,\ ]*) exec echo no;; *) exec echo yes;; esac;; --test-target) case ",$DEB_BUILD_OPTIONS," in *[,\ ]nocheck[,\ ]*) exit;; *[,\ ]x-perl-notest[,\ ]*) exit;; *) exec echo test;; esac;; --install-type) # The default installation type for /usr/bin/perl of shared or # static may be changed by including x-perl-static or x-perl-shared # in DEB_BUILD_OPTIONS. The default is shared except for i386 where # there is a measurable performance penalty. case ",$DEB_BUILD_OPTIONS," in *[,\ ]x-perl-static[,\ ]*) exec echo static;; *[,\ ]x-perl-shared[,\ ]*) exec echo shared;; esac case "$arch_cpu" in i386) exec echo static;; *) exec echo shared;; esac;; *) echo "$0: need --shared, --static, or --debug option" exit 2;; esac case "$arch_cpu:$build_type" in sh4:*) # required to correctly handle floating point on sh4 ccflags="$ccflags -mieee";; m68k:shared) # work around an optimiser bug ccflags="$ccflags -fno-regmove";; esac case ",$DEB_BUILD_OPTIONS," in *[,\ ]noopt[,\ ]*) optimize="$optimize${optimize:+ }-O0";; esac if which dpkg-buildflags >/dev/null 2>&1; then ccflags="$ccflags $(dpkg-buildflags --get CPPFLAGS)" ccflags="$ccflags $(dpkg-buildflags --get CFLAGS)" ldflags="$ldflags $(dpkg-buildflags --get LDFLAGS)" fi # post-configure tweaks cp debian/config.over . # need bash when sourcing config.over eval /bin/bash Configure \ -Dusethreads \ -Duselargefiles \ -Dccflags=\'$ccflags\' \ -Dldflags=\'$ldflags\' \ -Dlddlflags=\'-shared $ldflags\' \ -Dcccdlflags=-fPIC \ -Darchname=$gnu_type \ -Dprefix=/usr \ -Dprivlib=/usr/share/perl/$ver \ -Darchlib=/usr/lib/perl/$ver \ -Dvendorprefix=/usr \ -Dvendorlib=/usr/share/perl5 \ -Dvendorarch=/usr/lib/perl5 \ -Dsiteprefix=/usr/local \ -Dsitelib=/usr/local/share/perl/$fullver \ -Dsitearch=/usr/local/lib/perl/$fullver \ -Dman1dir=/usr/share/man/man1 \ -Dman3dir=/usr/share/man/man3 \ -Dsiteman1dir=/usr/local/man/man1 \ -Dsiteman3dir=/usr/local/man/man3 \ -Duse64bitint \ -Dman1ext=1 \ -Dman3ext=3perl \ -Dpager=/usr/bin/sensible-pager \ -Uafs \ -Ud_csh \ -Ud_ualarm \ -Uusesfio \ -Uusenm \ -Ui_libutil \ -Uversiononly \ -DDEBUGGING=$debugging \ -Doptimize=\"$optimize\" \ $extra_path \ $opts -des \ debian/perl-base.files0000644000000000000000000000351612265313056012074 0ustar usr/bin/perl usr/*/perl/*/Config.pm usr/*/perl/*/Config_heavy.pl usr/*/perl/*/Config_git.pl usr/*/perl/*/Cwd.pm usr/*/perl/*/DynaLoader.pm usr/*/perl/*/Errno.pm usr/*/perl/*/Fcntl.pm usr/*/perl/*/File/Glob.pm usr/*/perl/*/Hash/Util.pm usr/*/perl/*/IO.pm usr/*/perl/*/IO/File.pm usr/*/perl/*/IO/Handle.pm usr/*/perl/*/IO/Pipe.pm usr/*/perl/*/IO/Seekable.pm usr/*/perl/*/IO/Select.pm usr/*/perl/*/IO/Socket usr/*/perl/*/IO/Socket.pm usr/*/perl/*/List/Util.pm usr/*/perl/*/POSIX.pm usr/*/perl/*/Scalar/Util.pm usr/*/perl/*/Socket.pm usr/*/perl/*/XSLoader.pm usr/*/perl/*/auto/Cwd usr/*/perl/*/auto/Fcntl usr/*/perl/*/auto/File/Glob usr/lib/perl/*/auto/Hash/Util/Util.so usr/lib/perl/*/auto/re/re.so usr/lib/perl/*/auto/attributes/attributes.so usr/lib/perl/*/auto/IO usr/lib/perl/*/auto/List/Util usr/lib/perl/*/auto/POSIX/POSIX.so usr/*/perl/*/auto/Socket usr/*/perl/*/lib.pm usr/*/perl/*/re.pm usr/*/man/man1/perl.1 usr/*/perl/*/AutoLoader.pm usr/*/perl/*/Carp.pm usr/*/perl/*/Carp/Heavy.pm usr/*/perl/*/Exporter.pm usr/*/perl/*/Exporter/Heavy.pm usr/*/perl/*/File/Spec.pm usr/*/perl/*/File/Spec/Unix.pm usr/*/perl/*/FileHandle.pm usr/*/perl/*/Getopt/Long.pm usr/*/perl/*/IPC/Open2.pm usr/*/perl/*/IPC/Open3.pm usr/*/perl/*/SelectSaver.pm usr/*/perl/*/Symbol.pm usr/*/perl/*/Text/ParseWords.pm usr/*/perl/*/Text/Tabs.pm usr/*/perl/*/Text/Wrap.pm usr/*/perl/*/Tie/Hash.pm usr/*/perl/*/attributes.pm usr/*/perl/*/base.pm usr/*/perl/*/bytes.pm usr/*/perl/*/bytes_heavy.pl usr/*/perl/*/constant.pm usr/*/perl/*/fields.pm usr/*/perl/*/integer.pm usr/*/perl/*/locale.pm usr/*/perl/*/overload.pm usr/*/perl/*/overloading.pm usr/*/perl/*/strict.pm usr/*/perl/*/utf8.pm usr/*/perl/*/utf8_heavy.pl usr/*/perl/*/unicore/Heavy.pl usr/*/perl/*/unicore/To usr/*/perl/*/unicore/lib usr/*/perl/*/vars.pm usr/*/perl/*/warnings.pm usr/*/perl/*/warnings/register.pm usr/*/perl/*/feature.pm