diff options
author | Jamie Lenehan <lenehan@twibble.org> | 2007-04-26 08:05:52 +0000 |
---|---|---|
committer | Jamie Lenehan <lenehan@twibble.org> | 2007-04-26 08:05:52 +0000 |
commit | 0c0263c009bf9be6ffe9192d3e3c468a081e6382 (patch) | |
tree | 671f553b78982f1618719db46482350424b343a9 /packages/perl/perl-5.8.8 | |
parent | 17bf542a4ab65015d5d10c9fbbe7759294d4821c (diff) |
perl 5.8.8: Minor updates to the packaging:
* don't install packlists - we don't need them and it saves space (debian
patch)
* don't split POSIX module over perl and perl-arch dirs (debian patch)
* add a -doc package and put all the random documentation and examples from
the perl tree in it.
* include all the .pod's from over the tree in the .pod package
* include the .e2x files in the encode package
Diffstat (limited to 'packages/perl/perl-5.8.8')
-rw-r--r-- | packages/perl/perl-5.8.8/09_fix_installperl.patch | 32 | ||||
-rw-r--r-- | packages/perl/perl-5.8.8/52_debian_extutils_hacks.patch | 234 |
2 files changed, 266 insertions, 0 deletions
diff --git a/packages/perl/perl-5.8.8/09_fix_installperl.patch b/packages/perl/perl-5.8.8/09_fix_installperl.patch new file mode 100644 index 0000000000..f550537d02 --- /dev/null +++ b/packages/perl/perl-5.8.8/09_fix_installperl.patch @@ -0,0 +1,32 @@ +Correctly identify arch-specific modules in ext/ where the .pm files +are under lib. + +Ensure that POSIX/SigAction is kept with the rest of the POSIX module +under archlib. + +diff --exclude=debian -Naur perl-5.8.8.orig/installperl perl-5.8.8/installperl +--- perl-5.8.8.orig/installperl 2006-01-29 02:35:28.000000000 +1100 ++++ perl-5.8.8/installperl 2006-05-31 22:54:41.000000000 +1000 +@@ -156,11 +156,8 @@ + if ("$File::Find::dir/$_" =~ m{^ext\b(.*)/([^/]+)\.pm$}) { + my($path, $modname) = ($1,$2); + +- # strip trailing component first +- $path =~ s{/[^/]*$}{}; +- +- # strip optional "/lib"; +- $path =~ s{/lib\b}{}; ++ # strip to optional "/lib", or remove trailing component ++ $path =~ s{.*/lib\b}{} or $path =~ s{/[^/]*$}{}; + + # strip any leading / + $path =~ s{^/}{}; +@@ -851,7 +848,7 @@ + } + + if (-f $_) { +- if (/\.(?:al|ix)$/ && !($dir =~ m[^auto/(.*)$] && $archpms{$1})) { ++ if (/\.(?:al|ix)$/ && !($dir =~ m[^auto/(.*)$])) { + $installlib = $installprivlib; + #We're installing *.al and *.ix files into $installprivlib, + #but we have to delete old *.al and *.ix files from the 5.000 diff --git a/packages/perl/perl-5.8.8/52_debian_extutils_hacks.patch b/packages/perl/perl-5.8.8/52_debian_extutils_hacks.patch new file mode 100644 index 0000000000..8a964f9338 --- /dev/null +++ b/packages/perl/perl-5.8.8/52_debian_extutils_hacks.patch @@ -0,0 +1,234 @@ +Various debian-specific ExtUtils changes: + + * Respect umask during installation, and set as appropriate for each of + perl, vendor and site (policy requires group writable site dirs). + + * Don't install .packlist or perllocal.pod for perl or vendor. + * 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). + + * Set location of libperl.a to /usr/lib. + * Note that libperl-dev package is required for embedded linking. + +diff -Naur --exclude=debian perl-5.8.8.orig/lib/ExtUtils/Embed.pm perl-5.8.8/lib/ExtUtils/Embed.pm +--- perl-5.8.8.orig/lib/ExtUtils/Embed.pm 2004-08-03 20:41:49.000000000 +1000 ++++ perl-5.8.8/lib/ExtUtils/Embed.pm 2006-02-05 10:42:11.000000000 +1100 +@@ -300,6 +300,9 @@ + Typically, an application B<Makefile> will invoke ExtUtils::Embed + functions while building your application. + ++Note that on Debian systems the B<libperl-dev> package is required for ++compiling applications which embed an interpreter. ++ + =head1 @EXPORT + + ExtUtils::Embed exports the following functions: +diff -Naur --exclude=debian perl-5.8.8.orig/lib/ExtUtils/Install.pm perl-5.8.8/lib/ExtUtils/Install.pm +--- perl-5.8.8.orig/lib/ExtUtils/Install.pm 2005-10-21 22:00:01.000000000 +1000 ++++ perl-5.8.8/lib/ExtUtils/Install.pm 2006-02-05 10:42:11.000000000 +1100 +@@ -173,8 +173,8 @@ + if (-f $targetfile){ + forceunlink($targetfile) unless $nonono; + } else { +- mkpath($targetdir,0,0755) unless $nonono; +- print "mkpath($targetdir,0,0755)\n" if $verbose>1; ++ mkpath($targetdir) unless $nonono; ++ print "mkpath($targetdir)\n" if $verbose>1; + } + copy($sourcefile, $targetfile) unless $nonono; + print "Installing $targetfile\n"; +diff -Naur --exclude=debian perl-5.8.8.orig/lib/ExtUtils/MM_Any.pm perl-5.8.8/lib/ExtUtils/MM_Any.pm +--- perl-5.8.8.orig/lib/ExtUtils/MM_Any.pm 2005-04-13 17:49:53.000000000 +1000 ++++ perl-5.8.8/lib/ExtUtils/MM_Any.pm 2006-02-05 11:17:52.000000000 +1100 +@@ -645,8 +645,6 @@ + sub manifypods_target { + my($self) = shift; + +- my $man1pods = ''; +- my $man3pods = ''; + my $dependencies = ''; + + # populate manXpods & dependencies: +@@ -666,7 +664,7 @@ + foreach my $section (qw(1 3)) { + my $pods = $self->{"MAN${section}PODS"}; + push @man_cmds, $self->split_command(<<CMD, %$pods); +- \$(NOECHO) \$(POD2MAN) --section=$section --perm_rw=\$(PERM_RW) ++ \$(NOECHO) \$(POD2MAN) --section=\$(MAN${section}EXT) --perm_rw=\$(PERM_RW) + CMD + } + +@@ -1080,9 +1078,11 @@ + $self->{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 -Naur --exclude=debian perl-5.8.8.orig/lib/ExtUtils/MM_Unix.pm perl-5.8.8/lib/ExtUtils/MM_Unix.pm +--- perl-5.8.8.orig/lib/ExtUtils/MM_Unix.pm 2005-05-21 19:42:56.000000000 +1000 ++++ perl-5.8.8/lib/ExtUtils/MM_Unix.pm 2006-02-05 17:40:19.000000000 +1100 +@@ -2054,9 +2054,7 @@ + $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site + + pure_perl_install :: +- $(NOECHO) $(MOD_INSTALL) \ +- read }.$self->catfile('$(PERL_ARCHLIB)','auto','$(FULLEXT)','.packlist').q{ \ +- write }.$self->catfile('$(DESTINSTALLARCHLIB)','auto','$(FULLEXT)','.packlist').q{ \ ++ $(NOECHO) umask 022; $(MOD_INSTALL) \ + $(INST_LIB) $(DESTINSTALLPRIVLIB) \ + $(INST_ARCHLIB) $(DESTINSTALLARCHLIB) \ + $(INST_BIN) $(DESTINSTALLBIN) \ +@@ -2068,7 +2066,7 @@ + + + pure_site_install :: +- $(NOECHO) $(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) \ +@@ -2081,9 +2079,7 @@ + }.$self->catdir('$(PERL_ARCHLIB)','auto','$(FULLEXT)').q{ + + pure_vendor_install :: +- $(NOECHO) $(MOD_INSTALL) \ +- read }.$self->catfile('$(VENDORARCHEXP)','auto','$(FULLEXT)','.packlist').q{ \ +- write }.$self->catfile('$(DESTINSTALLVENDORARCH)','auto','$(FULLEXT)','.packlist').q{ \ ++ $(NOECHO) umask 022; $(MOD_INSTALL) \ + $(INST_LIB) $(DESTINSTALLVENDORLIB) \ + $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \ + $(INST_BIN) $(DESTINSTALLVENDORBIN) \ +@@ -2092,37 +2088,19 @@ + $(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR) + + doc_perl_install :: +- $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod +- -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) +- -$(NOECHO) $(DOC_INSTALL) \ +- "Module" "$(NAME)" \ +- "installed into" "$(INSTALLPRIVLIB)" \ +- LINKTYPE "$(LINKTYPE)" \ +- VERSION "$(VERSION)" \ +- EXE_FILES "$(EXE_FILES)" \ +- >> }.$self->catfile('$(DESTINSTALLARCHLIB)','perllocal.pod').q{ + + doc_site_install :: +- $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod +- -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) +- -$(NOECHO) $(DOC_INSTALL) \ ++ $(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 :: +- $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod +- -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) +- -$(NOECHO) $(DOC_INSTALL) \ +- "Module" "$(NAME)" \ +- "installed into" "$(INSTALLVENDORLIB)" \ +- LINKTYPE "$(LINKTYPE)" \ +- VERSION "$(VERSION)" \ +- EXE_FILES "$(EXE_FILES)" \ +- >> }.$self->catfile('$(DESTINSTALLARCHLIB)','perllocal.pod').q{ + + }; + +@@ -2131,13 +2109,12 @@ + $(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); +@@ -2415,7 +2392,7 @@ + ($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"; +@@ -3007,8 +2984,7 @@ + print STDERR " prefixify $var => $path\n" if $Verbose >= 2; + print STDERR " from $sprefix to $rprefix\n" if $Verbose >= 2; + +- if( $self->{ARGS}{PREFIX} && $self->file_name_is_absolute($path) && +- $path !~ s{^\Q$sprefix\E\b}{$rprefix}s ) ++ if( $path !~ s{^\Q$sprefix\E\b}{$rprefix}s && $self->{ARGS}{PREFIX} ) + { + + print STDERR " cannot prefix, using default.\n" if $Verbose >= 2; +diff -Naur --exclude=debian perl-5.8.8.orig/lib/ExtUtils/t/INST.t perl-5.8.8/lib/ExtUtils/t/INST.t +--- perl-5.8.8.orig/lib/ExtUtils/t/INST.t 2005-10-21 19:12:39.000000000 +1000 ++++ perl-5.8.8/lib/ExtUtils/t/INST.t 2006-02-05 17:48:56.000000000 +1100 +@@ -65,9 +65,7 @@ + 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 -Naur --exclude=debian perl-5.8.8.orig/lib/ExtUtils/t/INST_PREFIX.t perl-5.8.8/lib/ExtUtils/t/INST_PREFIX.t +--- perl-5.8.8.orig/lib/ExtUtils/t/INST_PREFIX.t 2005-10-21 22:00:19.000000000 +1000 ++++ perl-5.8.8/lib/ExtUtils/t/INST_PREFIX.t 2006-02-05 17:48:06.000000000 +1100 +@@ -16,7 +16,7 @@ + } + + use strict; +-use Test::More tests => 52; ++use Test::More tests => 47; + use MakeMaker::Test::Utils; + use MakeMaker::Test::Setup::BFD; + use ExtUtils::MakeMaker; +@@ -62,16 +62,16 @@ + Writing\ $Makefile\ for\ Big::Dummy\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'); |