diff -aur PAR.orig/lib/PAR.pm PAR/lib/PAR.pm
--- PAR.orig/lib/PAR.pm 2004-01-26 00:22:18.000000000 -0500
+++ PAR/lib/PAR.pm 2004-01-30 22:45:43.000000000 -0500
@@ -165,6 +165,8 @@
my $arch = $Config{archname};
my ($par_temp, $progname);
+my $preemptive_extraction_mode = 1;
+
sub import {
my $class = shift;
@@ -186,7 +188,8 @@
return if $PAR::__import;
local $PAR::__import = 1;
- unshift @INC, \&find_par unless grep { $_ eq \&find_par } @INC;
+ unshift @INC, \&find_par
+ unless $preemptive_extraction_mode || grep { $_ eq \&find_par } @INC;
require PAR::Heavy;
PAR::Heavy::_init_dynaloader();
@@ -196,6 +199,19 @@
push @PAR_INC, unpar($0, undef, undef, 1);
my $zip = $LibCache{$0};
+ if ( $preemptive_extraction_mode ) {
+ my $preemptive_lib_dir = $par_temp;
+ $zip->extractTree( "", "$preemptive_lib_dir/" );
+ unshift @INC,
+ map File::Spec->catdir( $preemptive_lib_dir, @$_ ),
+ [ "lib" ],
+ [ "arch" ],
+ [ $arch ],
+ [ $ver ],
+ [ $ver, $arch ],
+ [];
+ }
+
my $member = $zip->memberNamed("script/main.pl")
|| $zip->memberNamed("main.pl");
@@ -292,6 +308,7 @@
my %escapes;
sub unpar {
my ($par, $file, $member_only, $allow_other_ext) = @_;
+
my $zip = $LibCache{$par};
my @rv = $par;
Only in PAR/lib: .PAR.pm.swp
Only in PAR: Makefile.old
Only in PAR/myldr: Makefile.old
diff -aur PAR.orig/myldr/Makefile.PL PAR/myldr/Makefile.PL
--- PAR.orig/myldr/Makefile.PL 2004-01-07 10:58:31.000000000 -0500
+++ PAR/myldr/Makefile.PL 2004-01-30 21:56:29.000000000 -0500
@@ -150,7 +150,7 @@
$par_exe: \$(OBJECTS) my_par_pl$o
\$(LD) \$(OBJECTS) \$(PERL_LDFLAGS) $out$par_exe_link
-my_par_pl.c:
+my_par_pl.c: $par_pl
\$(PERL) $f2c $par_pl \$@ load_me_2 $long_literal
$parl_exe: $par
Only in PAR/myldr: static.c.orig
diff -aur PAR.orig/script/par.pl PAR/script/par.pl
--- PAR.orig/script/par.pl 2004-01-25 11:10:44.000000000 -0500
+++ PAR/script/par.pl 2004-01-30 22:03:27.000000000 -0500
@@ -247,6 +247,7 @@
$PAR::Heavy::ModuleCache{$fullname} = {
buf => $buf,
crc => $crc,
+ name => $fullname,
};
}
read _FH, $buf, 4;
@@ -477,7 +478,10 @@
next unless defined $name and not $written{$name}++;
next if !ref($file) and $file =~ /\.\Q$lib_ext\E$/;
- outs(qq(Packing "$file"...));
+ outs( join "",
+ qq(Packing "), ref $file ? $file->{name} : $file,
+ qq("...)
+ );
my $content;
if (ref($file)) {
# |
Change |
User |
Description |
Committed |
|
#1
|
6118 |
Dimitry Andric |
Integ from //public/revml to //guest/dimitry_andric/revml/main. |
|
|
//guest/perforce_software/revml/tmp/PAR-preemptive-extract.patch |
#1
|
4163 |
Barrie Slaymaker |
- First cut at patch for PAR to allow POSIX to be used in vcp-rh8 |
|
|