remove unused patches
This commit is contained in:
parent
d577113e98
commit
56804a99ef
@ -1,318 +0,0 @@
|
||||
diff -up perl-5.10.0/lib/Archive/Extract/t/01_Archive-Extract.t.BAD perl-5.10.0/lib/Archive/Extract/t/01_Archive-Extract.t
|
||||
--- perl-5.10.0/lib/Archive/Extract/t/01_Archive-Extract.t.BAD 2007-12-18 05:47:07.000000000 -0500
|
||||
+++ perl-5.10.0/lib/Archive/Extract/t/01_Archive-Extract.t 2008-03-08 14:55:53.000000000 -0500
|
||||
@@ -58,6 +58,7 @@ use_ok($Class);
|
||||
$Archive::Extract::VERBOSE = $Archive::Extract::VERBOSE = $Debug;
|
||||
$Archive::Extract::WARN = $Archive::Extract::WARN = $Debug ? 1 : 0;
|
||||
|
||||
+
|
||||
my $tmpl = {
|
||||
### plain files
|
||||
'x.bz2' => { programs => [qw[bunzip2]],
|
||||
@@ -105,6 +106,11 @@ my $tmpl = {
|
||||
method => 'is_zip',
|
||||
outfile => 'a',
|
||||
},
|
||||
+ 'x.lzma' => { programs => [qw[unlzma]],
|
||||
+ modules => [qw[Compress::unLZMA]],
|
||||
+ method => 'is_lzma',
|
||||
+ outfile => 'a',
|
||||
+ },
|
||||
### with a directory
|
||||
'y.tbz' => { programs => [qw[bunzip2 tar]],
|
||||
modules => [qw[Archive::Tar
|
||||
@@ -291,7 +297,7 @@ for my $switch (0,1) {
|
||||
### where to extract to -- try both dir and file for gz files
|
||||
### XXX test me!
|
||||
#my @outs = $ae->is_gz ? ($abs_path, $OutDir) : ($OutDir);
|
||||
- my @outs = $ae->is_gz || $ae->is_bz2 || $ae->is_Z
|
||||
+ my @outs = $ae->is_gz || $ae->is_bz2 || $ae->is_Z || $ae->is_lzma
|
||||
? ($abs_path)
|
||||
: ($OutDir);
|
||||
|
||||
diff -up perl-5.10.0/lib/Archive/Extract.pm.BAD perl-5.10.0/lib/Archive/Extract.pm
|
||||
--- perl-5.10.0/lib/Archive/Extract.pm.BAD 2007-12-18 05:47:07.000000000 -0500
|
||||
+++ perl-5.10.0/lib/Archive/Extract.pm 2008-03-08 14:55:15.000000000 -0500
|
||||
@@ -28,14 +28,15 @@ use constant ZIP => 'zip';
|
||||
use constant BZ2 => 'bz2';
|
||||
use constant TBZ => 'tbz';
|
||||
use constant Z => 'Z';
|
||||
+use constant LZMA => 'lzma';
|
||||
|
||||
use vars qw[$VERSION $PREFER_BIN $PROGRAMS $WARN $DEBUG];
|
||||
|
||||
-$VERSION = '0.24';
|
||||
+$VERSION = '0.26';
|
||||
$PREFER_BIN = 0;
|
||||
$WARN = 1;
|
||||
$DEBUG = 0;
|
||||
-my @Types = ( TGZ, TAR, GZ, ZIP, BZ2, TBZ, Z ); # same as all constants
|
||||
+my @Types = ( TGZ, TAR, GZ, ZIP, BZ2, TBZ, Z, LZMA ); # same as all constants
|
||||
|
||||
local $Params::Check::VERBOSE = $Params::Check::VERBOSE = 1;
|
||||
|
||||
@@ -75,6 +76,7 @@ Archive::Extract - A generic archive ext
|
||||
$ae->is_zip; # is it a .zip file?
|
||||
$ae->is_bz2; # is it a .bz2 file?
|
||||
$ae->is_tbz; # is it a .tar.bz2 or .tbz file?
|
||||
+ $ae->is_lzma; # is it a .lzma file?
|
||||
|
||||
### absolute path to the archive you provided ###
|
||||
$ae->archive;
|
||||
@@ -84,13 +86,14 @@ Archive::Extract - A generic archive ext
|
||||
$ae->bin_gzip # path to /bin/gzip, if found
|
||||
$ae->bin_unzip # path to /bin/unzip, if found
|
||||
$ae->bin_bunzip2 # path to /bin/bunzip2 if found
|
||||
+ $ae->bin_unlzma # path to /bin/unlzma if found
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Archive::Extract is a generic archive extraction mechanism.
|
||||
|
||||
It allows you to extract any archive file of the type .tar, .tar.gz,
|
||||
-.gz, .Z, tar.bz2, .tbz, .bz2 or .zip without having to worry how it
|
||||
+.gz, .Z, tar.bz2, .tbz, .bz2, .zip or .lzma without having to worry how it
|
||||
does so, or use different interfaces for each type by using either
|
||||
perl modules, or commandline tools on your system.
|
||||
|
||||
@@ -101,7 +104,7 @@ See the C<HOW IT WORKS> section further
|
||||
|
||||
### see what /bin/programs are available ###
|
||||
$PROGRAMS = {};
|
||||
-for my $pgm (qw[tar unzip gzip bunzip2 uncompress]) {
|
||||
+for my $pgm (qw[tar unzip gzip bunzip2 uncompress unlzma]) {
|
||||
$PROGRAMS->{$pgm} = can_run($pgm);
|
||||
}
|
||||
|
||||
@@ -114,6 +117,7 @@ my $Mapping = {
|
||||
is_tbz => '_untar',
|
||||
is_bz2 => '_bunzip2',
|
||||
is_Z => '_uncompress',
|
||||
+ is_lzma => '_unlzma',
|
||||
};
|
||||
|
||||
{
|
||||
@@ -183,6 +187,11 @@ Corresponds to a C<.bz2> suffix.
|
||||
Bzip2 compressed tar file, as produced by, for exmample C</bin/tar -j>.
|
||||
Corresponds to a C<.tbz> or C<.tar.bz2> suffix.
|
||||
|
||||
+=item lzma
|
||||
+
|
||||
+Lzma compressed file, as produced by C</bin/lzma>.
|
||||
+Corresponds to a C<.lzma> suffix.
|
||||
+
|
||||
=back
|
||||
|
||||
Returns a C<Archive::Extract> object on success, or false on failure.
|
||||
@@ -209,6 +218,7 @@ Returns a C<Archive::Extract> object on
|
||||
$ar =~ /.+?\.(?:tbz2?|tar\.bz2?)$/i ? TBZ :
|
||||
$ar =~ /.+?\.bz2$/i ? BZ2 :
|
||||
$ar =~ /.+?\.Z$/ ? Z :
|
||||
+ $ar =~ /.+?\.lzma$/ ? LZMA :
|
||||
'';
|
||||
|
||||
}
|
||||
@@ -283,9 +293,9 @@ sub extract {
|
||||
### to.
|
||||
my $dir;
|
||||
{ ### a foo.gz file
|
||||
- if( $self->is_gz or $self->is_bz2 or $self->is_Z) {
|
||||
+ if( $self->is_gz or $self->is_bz2 or $self->is_Z or $self->is_lzma ) {
|
||||
|
||||
- my $cp = $self->archive; $cp =~ s/\.(?:gz|bz2?|Z)$//i;
|
||||
+ my $cp = $self->archive; $cp =~ s/\.(?:gz|bz2?|Z|lzma)$//i;
|
||||
|
||||
### to is a dir?
|
||||
if ( -d $to ) {
|
||||
@@ -418,6 +428,11 @@ See the C<new()> method for details.
|
||||
Returns true if the file is of type C<.zip>.
|
||||
See the C<new()> method for details.
|
||||
|
||||
+=head2 $ae->is_lzma
|
||||
+
|
||||
+Returns true if the file is of type C<.lzma>.
|
||||
+See the C<new()> method for details.
|
||||
+
|
||||
=cut
|
||||
|
||||
### quick check methods ###
|
||||
@@ -428,6 +443,7 @@ sub is_zip { return $_[0]->type eq ZIP
|
||||
sub is_tbz { return $_[0]->type eq TBZ }
|
||||
sub is_bz2 { return $_[0]->type eq BZ2 }
|
||||
sub is_Z { return $_[0]->type eq Z }
|
||||
+sub is_lzma { return $_[0]->type eq LZMA }
|
||||
|
||||
=pod
|
||||
|
||||
@@ -443,6 +459,10 @@ Returns the full path to your gzip binar
|
||||
|
||||
Returns the full path to your unzip binary, if found
|
||||
|
||||
+=head2 $ae->bin_unlzma
|
||||
+
|
||||
+Returns the full path to your unlzma binary, if found
|
||||
+
|
||||
=cut
|
||||
|
||||
### paths to commandline tools ###
|
||||
@@ -452,6 +472,8 @@ sub bin_tar { return $PROGRAMS->
|
||||
sub bin_bunzip2 { return $PROGRAMS->{'bunzip2'} if $PROGRAMS->{'bunzip2'} }
|
||||
sub bin_uncompress { return $PROGRAMS->{'uncompress'}
|
||||
if $PROGRAMS->{'uncompress'} }
|
||||
+sub bin_unlzma { return $PROGRAMS->{'unlzma'} if $PROGRAMS->{'unlzma'} }
|
||||
+
|
||||
=head2 $bool = $ae->have_old_bunzip2
|
||||
|
||||
Older versions of C</bin/bunzip2>, from before the C<bunzip2 1.0> release,
|
||||
@@ -478,8 +500,16 @@ sub have_old_bunzip2 {
|
||||
### $ echo $?
|
||||
### 1
|
||||
### HATEFUL!
|
||||
+
|
||||
+ ### double hateful: bunzip2 --version also hangs if input is a pipe
|
||||
+ ### See #32370: Archive::Extract will hang if stdin is a pipe [+PATCH]
|
||||
+ ### So, we have to provide *another* argument which is a fake filename,
|
||||
+ ### just so it wont try to read from stdin to print it's version..
|
||||
+ ### *sigh*
|
||||
+ ### Even if the file exists, it won't clobber or change it.
|
||||
my $buffer;
|
||||
- scalar run( command => [$self->bin_bunzip2, '--version'],
|
||||
+ scalar run(
|
||||
+ command => [$self->bin_bunzip2, '--version', 'NoSuchFile'],
|
||||
verbose => 0,
|
||||
buffer => \$buffer
|
||||
);
|
||||
@@ -499,7 +529,6 @@ sub have_old_bunzip2 {
|
||||
#
|
||||
#################################
|
||||
|
||||
-
|
||||
### untar wrapper... goes to either Archive::Tar or /bin/tar
|
||||
### depending on $PREFER_BIN
|
||||
sub _untar {
|
||||
@@ -1141,6 +1170,96 @@ sub _bunzip2_cz2 {
|
||||
|
||||
#################################
|
||||
#
|
||||
+# unlzma code
|
||||
+#
|
||||
+#################################
|
||||
+
|
||||
+### unlzma wrapper... goes to either Compress::unLZMA or /bin/unlzma
|
||||
+### depending on $PREFER_BIN
|
||||
+sub _unlzma {
|
||||
+ my $self = shift;
|
||||
+
|
||||
+ my @methods = qw[_unlzma_cz _unlzma_bin];
|
||||
+ @methods = reverse @methods if $PREFER_BIN;
|
||||
+
|
||||
+ for my $method (@methods) {
|
||||
+ $self->_extractor($method) && return 1 if $self->$method();
|
||||
+ }
|
||||
+
|
||||
+ return $self->_error(loc("Unable to unlzma file '%1'", $self->archive));
|
||||
+}
|
||||
+
|
||||
+sub _unlzma_bin {
|
||||
+ my $self = shift;
|
||||
+
|
||||
+ ### check for /bin/unlzma -- we need it ###
|
||||
+ return $self->_error(loc("No '%1' program found", '/bin/unlzma'))
|
||||
+ unless $self->bin_unlzma;
|
||||
+
|
||||
+ my $fh = FileHandle->new('>'. $self->_gunzip_to) or
|
||||
+ return $self->_error(loc("Could not open '%1' for writing: %2",
|
||||
+ $self->_gunzip_to, $! ));
|
||||
+
|
||||
+ my $cmd = [ $self->bin_unlzma, '-c', $self->archive ];
|
||||
+
|
||||
+ my $buffer;
|
||||
+ unless( scalar run( command => $cmd,
|
||||
+ verbose => $DEBUG,
|
||||
+ buffer => \$buffer )
|
||||
+ ) {
|
||||
+ return $self->_error(loc("Unable to unlzma '%1': %2",
|
||||
+ $self->archive, $buffer));
|
||||
+ }
|
||||
+
|
||||
+ ### no buffers available?
|
||||
+ if( !IPC::Cmd->can_capture_buffer and !$buffer ) {
|
||||
+ $self->_error( $self->_no_buffer_content( $self->archive ) );
|
||||
+ }
|
||||
+
|
||||
+ print $fh $buffer if defined $buffer;
|
||||
+
|
||||
+ close $fh;
|
||||
+
|
||||
+ ### set what files where extract, and where they went ###
|
||||
+ $self->files( [$self->_gunzip_to] );
|
||||
+ $self->extract_path( File::Spec->rel2abs(cwd()) );
|
||||
+
|
||||
+ return 1;
|
||||
+}
|
||||
+
|
||||
+sub _unlzma_cz {
|
||||
+ my $self = shift;
|
||||
+
|
||||
+ my $use_list = { 'Compress::unLZMA' => '0.0' };
|
||||
+ unless( can_load( modules => $use_list ) ) {
|
||||
+ return $self->_error(loc("You do not have '%1' installed - Please " .
|
||||
+ "install it as soon as possible.", 'Compress::unLZMA'));
|
||||
+ }
|
||||
+
|
||||
+ my $fh = FileHandle->new('>'. $self->_gunzip_to) or
|
||||
+ return $self->_error(loc("Could not open '%1' for writing: %2",
|
||||
+ $self->_gunzip_to, $! ));
|
||||
+
|
||||
+ my $buffer;
|
||||
+ $buffer = Compress::unLZMA::uncompressfile( $self->archive );
|
||||
+ unless ( defined $buffer ) {
|
||||
+ return $self->_error(loc("Could not unlzma '%1': %2",
|
||||
+ $self->archive, $@));
|
||||
+ }
|
||||
+
|
||||
+ print $fh $buffer if defined $buffer;
|
||||
+
|
||||
+ close $fh;
|
||||
+
|
||||
+ ### set what files where extract, and where they went ###
|
||||
+ $self->files( [$self->_gunzip_to] );
|
||||
+ $self->extract_path( File::Spec->rel2abs(cwd()) );
|
||||
+
|
||||
+ return 1;
|
||||
+}
|
||||
+
|
||||
+#################################
|
||||
+#
|
||||
# Error code
|
||||
#
|
||||
#################################
|
||||
@@ -1208,7 +1327,7 @@ C<Archive::Extract> will not be able to
|
||||
|
||||
C<Archive::Extract> can use either pure perl modules or command line
|
||||
programs under the hood. Some of the pure perl modules (like
|
||||
-C<Archive::Tar> take the entire contents of the archive into memory,
|
||||
+C<Archive::Tar> and Compress::unLZMA) take the entire contents of the archive into memory,
|
||||
which may not be feasible on your system. Consider setting the global
|
||||
variable C<$Archive::Extract::PREFER_BIN> to C<1>, which will prefer
|
||||
the use of command line programs and won't consume so much memory.
|
||||
diff -up perl-5.10.0/lib/Archive/Extract/t/src/x.lzma.packed.BAD perl-5.10.0/lib/Archive/Extract/t/src/x.lzma.packed
|
||||
--- perl-5.10.0/lib/Archive/Extract/t/src/x.lzma.packed.BAD 2008-03-08 19:20:41.000000000 -0500
|
||||
+++ perl-5.10.0/lib/Archive/Extract/t/src/x.lzma.packed 2008-03-08 19:20:33.000000000 -0500
|
||||
@@ -0,0 +1,16 @@
|
||||
+#########################################################################
|
||||
+This is a binary file that was packed with the 'uupacktool.pl' which
|
||||
+is included in the Perl distribution.
|
||||
+
|
||||
+To unpack this file use the following command:
|
||||
+
|
||||
+ uupacktool.pl -u lib/Archive/Extract/t/src/x.lzma.packed lib/Archive/Extract/t/src/x.lzma
|
||||
+
|
||||
+To recreate it use the following command:
|
||||
+
|
||||
+ uupacktool.pl -p lib/Archive/Extract/t/src/x.lzma lib/Archive/Extract/t/src/x.lzma.packed
|
||||
+
|
||||
+Created at Sat Mar 8 19:20:33 2008
|
||||
+#########################################################################
|
||||
+__UU__
|
||||
+270``@```````````````````
|
@ -1,12 +0,0 @@
|
||||
diff -up perl-5.10.0/Configure.didi perl-5.10.0/Configure
|
||||
--- perl-5.10.0/Configure.didi 2007-12-18 11:47:07.000000000 +0100
|
||||
+++ perl-5.10.0/Configure 2008-07-21 10:51:16.000000000 +0200
|
||||
@@ -1327,7 +1327,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="sfio socket resolv inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun"
|
||||
libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD"
|
||||
: We probably want to search /usr/shlib before most other libraries.
|
||||
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
|
@ -1,11 +0,0 @@
|
||||
--- perl-5.8.6/Configure.libresolv 2005-03-17 11:54:54.000000000 -0500
|
||||
+++ perl-5.8.6/Configure 2005-03-17 11:55:26.000000000 -0500
|
||||
@@ -1266,7 +1266,7 @@
|
||||
|
||||
: 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="sfio socket resolv inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun"
|
||||
libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD"
|
||||
: We probably want to search /usr/shlib before most other libraries.
|
||||
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
|
Loading…
Reference in New Issue
Block a user