Commit f35d05c3 authored by Niko Tyni's avatar Niko Tyni

unpatch

parent 25055c93
...@@ -1289,7 +1289,8 @@ defvoidused=15 ...@@ -1289,7 +1289,8 @@ defvoidused=15
: List of libraries we want. : List of libraries we want.
: If anyone needs extra -lxxx, put those in a hint file. : If anyone needs extra -lxxx, put those in a hint file.
libswanted='gdbm gdbm_compat db dl m c crypt' 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"
: We probably want to search /usr/shlib before most other libraries. : We probably want to search /usr/shlib before most other libraries.
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist. : This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'` glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'`
...@@ -4775,19 +4776,19 @@ default|recommended) ...@@ -4775,19 +4776,19 @@ default|recommended)
echo "Nope, it doesn't, but that's ok." 2>&1 echo "Nope, it doesn't, but that's ok." 2>&1
fi fi
# echo "Checking if your compiler accepts -Wdeclaration-after-statement" 2>&1 echo "Checking if your compiler accepts -Wdeclaration-after-statement" 2>&1
# echo 'int main(void) { return 0; }' > gcctest.c echo 'int main(void) { return 0; }' > gcctest.c
# if $cc -Wdeclaration-after-statement -o gcctest gcctest.c; then if $cc -Wdeclaration-after-statement -o gcctest gcctest.c; then
# echo "Yes, it does." 2>&1 echo "Yes, it does." 2>&1
# case "$ccflags" in case "$ccflags" in
# *-Wdeclaration-after-statement*) *-Wdeclaration-after-statement*)
# echo "Leaving current flags $ccflags alone." 2>&1 echo "Leaving current flags $ccflags alone." 2>&1
# ;; ;;
# *) dflt="$dflt -Wdeclaration-after-statement" ;; *) dflt="$dflt -Wdeclaration-after-statement" ;;
# esac esac
# else else
# echo "Nope, it doesn't, but that's ok." 2>&1 echo "Nope, it doesn't, but that's ok." 2>&1
# fi fi
;; ;;
esac esac
;; ;;
...@@ -20023,7 +20024,7 @@ set mntent.h i_mntent ...@@ -20023,7 +20024,7 @@ set mntent.h i_mntent
eval $inhdr eval $inhdr
: see if ndbm.h is available : see if ndbm.h is available
set gdbm-ndbm.h t_ndbm set ndbm.h t_ndbm
eval $inhdr eval $inhdr
case "$t_ndbm" in case "$t_ndbm" in
...@@ -20874,7 +20875,7 @@ sunos*X4*) ...@@ -20874,7 +20875,7 @@ sunos*X4*)
;; ;;
*) case "$usedl" in *) case "$usedl" in
$define|true|[yY]*) $define|true|[yY]*)
set X `echo " $libs " | sed -e 's@ -lgdbm @ @' -e 's@ -lgdbm_compat @ @' -e 's@ -ldb @ @'` set X `echo " $libs " | sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'`
shift shift
perllibs="$*" perllibs="$*"
;; ;;
......
...@@ -43,7 +43,12 @@ case "$useshrplib" in ...@@ -43,7 +43,12 @@ case "$useshrplib" in
true) true)
# Prefix all runs of 'miniperl' and 'perl' with # Prefix all runs of 'miniperl' and 'perl' with
# $ldlibpth so that ./perl finds *this* shared libperl. # $ldlibpth so that ./perl finds *this* shared libperl.
ldlibpth=LD_LIBRARY_PATH=`pwd`'$${LD_LIBRARY_PATH:+:}$$LD_LIBRARY_PATH' case "$LD_LIBRARY_PATH" in
'')
ldlibpth="LD_LIBRARY_PATH=`pwd`";;
*)
ldlibpth="LD_LIBRARY_PATH=`pwd`:${LD_LIBRARY_PATH}";;
esac
pldlflags="$cccdlflags" pldlflags="$cccdlflags"
static_target='static_pic' static_target='static_pic'
...@@ -96,7 +101,7 @@ true) ...@@ -96,7 +101,7 @@ true)
;; ;;
esac esac
case "$ldlibpthname" in case "$ldlibpthname" in
''|LD_LIBRARY_PATH) ;; '') ;;
*) *)
case "$osname" in case "$osname" in
os2) os2)
......
...@@ -109,13 +109,7 @@ for file do ...@@ -109,13 +109,7 @@ for file do
pp) ;; pp) ;;
pp_ctl) ;; pp_ctl) ;;
pp_hot) ;; pp_hot) ;;
pp_pack) pp_pack) ;;
case $archname in
arm-*|armeb-*)
optimize=-Os;;
hppa-*|mips*-*)
optimize="$optimize -fno-delayed-branch";;
esac;;
pp_sys) ;; pp_sys) ;;
regcomp) ;; regcomp) ;;
regexec) ;; regexec) ;;
......
...@@ -647,7 +647,7 @@ sub B::NV::save { ...@@ -647,7 +647,7 @@ sub B::NV::save {
return $sym if defined $sym; return $sym if defined $sym;
my $val= $sv->NVX; my $val= $sv->NVX;
$val .= '.00' if $val =~ /^-?\d+$/; $val .= '.00' if $val =~ /^-?\d+$/;
$xpvnvsect->add(sprintf("0, 0, 0, %d, %s", $sv->NVX, $val)); $xpvnvsect->add(sprintf("0, 0, 0, %d, %s", $sv->IVX, $val));
$svsect->add(sprintf("&xpvnv_list[%d], %lu, 0x%x", $svsect->add(sprintf("&xpvnv_list[%d], %lu, 0x%x",
$xpvnvsect->index, $sv->REFCNT , $sv->FLAGS)); $xpvnvsect->index, $sv->REFCNT , $sv->FLAGS));
return savesym($sv, sprintf("&sv_list[%d]", $svsect->index)); return savesym($sv, sprintf("&sv_list[%d]", $svsect->index));
......
...@@ -48,14 +48,12 @@ __getBerkeleyDBInfo() ...@@ -48,14 +48,12 @@ __getBerkeleyDBInfo()
(void)db_version(&Major, &Minor, &Patch) ; (void)db_version(&Major, &Minor, &Patch) ;
#ifndef DEBIAN
/* Check that the versions of db.h and libdb.a are the same */ /* Check that the versions of db.h and libdb.a are the same */
if (Major != DB_VERSION_MAJOR || Minor != DB_VERSION_MINOR if (Major != DB_VERSION_MAJOR || Minor != DB_VERSION_MINOR
|| Patch != DB_VERSION_PATCH) || Patch != DB_VERSION_PATCH)
croak("\nDB_File needs compatible versions of libdb & db.h\n\tyou have db.h version %d.%d.%d and libdb version %d.%d.%d\n", croak("\nDB_File needs compatible versions of libdb & db.h\n\tyou have db.h version %d.%d.%d and libdb version %d.%d.%d\n",
DB_VERSION_MAJOR, DB_VERSION_MINOR, DB_VERSION_PATCH, DB_VERSION_MAJOR, DB_VERSION_MINOR, DB_VERSION_PATCH,
Major, Minor, Patch) ; Major, Minor, Patch) ;
#endif /* DEBIAN */
/* check that libdb is recent enough -- we need 2.3.4 or greater */ /* check that libdb is recent enough -- we need 2.3.4 or greater */
if (Major == 2 && (Minor < 3 || (Minor == 3 && Patch < 4))) if (Major == 2 && (Minor < 3 || (Minor == 3 && Patch < 4)))
......
...@@ -29,7 +29,7 @@ package DynaLoader; ...@@ -29,7 +29,7 @@ package DynaLoader;
use vars qw($VERSION *AUTOLOAD); use vars qw($VERSION *AUTOLOAD);
$VERSION = '1.04'; # avoid typo warning $VERSION = '1.05'; # avoid typo warning
require AutoLoader; require AutoLoader;
*AUTOLOAD = \&AutoLoader::AUTOLOAD; *AUTOLOAD = \&AutoLoader::AUTOLOAD;
...@@ -85,6 +85,7 @@ $Mac_FS = eval { require Mac::FileSpec::Unixish } if $Is_MacOS; ...@@ -85,6 +85,7 @@ $Mac_FS = eval { require Mac::FileSpec::Unixish } if $Is_MacOS;
@dl_library_path = (); # path to look for files @dl_library_path = (); # path to look for files
#XSLoader.pm may have added elements before we were required #XSLoader.pm may have added elements before we were required
#@dl_shared_objects = (); # shared objects for symbols we have
#@dl_librefs = (); # things we have loaded #@dl_librefs = (); # things we have loaded
#@dl_modules = (); # Modules we have loaded #@dl_modules = (); # Modules we have loaded
...@@ -339,6 +340,9 @@ print OUT <<'EOT'; ...@@ -339,6 +340,9 @@ print OUT <<'EOT';
my $xs = dl_install_xsub("${module}::bootstrap", $boot_symbol_ref, $file); my $xs = dl_install_xsub("${module}::bootstrap", $boot_symbol_ref, $file);
# See comment block above # See comment block above
push(@dl_shared_objects, $file); # record files loaded
&$xs(@args); &$xs(@args);
} }
...@@ -555,6 +559,7 @@ DynaLoader Interface Summary ...@@ -555,6 +559,7 @@ DynaLoader Interface Summary
$dl_debug $dl_debug
@dl_librefs @dl_librefs
@dl_modules @dl_modules
@dl_shared_objects
Implemented in: Implemented in:
bootstrap($modulename) Perl bootstrap($modulename) Perl
@filepaths = dl_findfile(@names) Perl @filepaths = dl_findfile(@names) Perl
...@@ -630,6 +635,10 @@ the loaded files. ...@@ -630,6 +635,10 @@ the loaded files.
An array of module (package) names that have been bootstrap'ed. An array of module (package) names that have been bootstrap'ed.
=item @dl_shared_objects
An array of file names for the shared objects that were loaded.
=item dl_error() =item dl_error()
Syntax: Syntax:
......
...@@ -118,6 +118,7 @@ print OUT <<'EOT'; ...@@ -118,6 +118,7 @@ print OUT <<'EOT';
my $xs = dl_install_xsub("${module}::bootstrap", $boot_symbol_ref, $file); my $xs = dl_install_xsub("${module}::bootstrap", $boot_symbol_ref, $file);
# See comment block above # See comment block above
push(@DynaLoader::dl_shared_objects, $file); # record files loaded
return &$xs(@_); return &$xs(@_);
retry: retry:
......
...@@ -102,6 +102,19 @@ end: ...@@ -102,6 +102,19 @@ end:
sv_setiv( ST(0), PTR2IV(obj) ); sv_setiv( ST(0), PTR2IV(obj) );
int
dl_unload_file(libref)
void * libref
CODE:
DLDEBUG(1,PerlIO_printf(Perl_debug_log, "dl_unload_file(%lx):\n", PTR2ul(libref)));
RETVAL = (shl_unload(libref) == 0 ? 1 : 0);
if (!RETVAL)
SaveError(aTHX_ "%s", Strerror(errno));
DLDEBUG(2,PerlIO_printf(Perl_debug_log, " retval = %d\n", RETVAL));
OUTPUT:
RETVAL
void * void *
dl_find_symbol(libhandle, symbolname) dl_find_symbol(libhandle, symbolname)
void * libhandle void * libhandle
......
...@@ -909,11 +909,10 @@ sub find_e2x{ ...@@ -909,11 +909,10 @@ sub find_e2x{
eval { require File::Find; }; eval { require File::Find; };
my (@inc, %e2x_dir); my (@inc, %e2x_dir);
for my $inc (@INC){ for my $inc (@INC){
next unless -d $inc; # skip non-existent directories
push @inc, $inc unless $inc eq '.'; #skip current dir push @inc, $inc unless $inc eq '.'; #skip current dir
} }
File::Find::find( File::Find::find(
{ wanted => sub { sub {
my ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size, my ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,
$atime,$mtime,$ctime,$blksize,$blocks) $atime,$mtime,$ctime,$blksize,$blocks)
= lstat($_) or return; = lstat($_) or return;
...@@ -923,7 +922,7 @@ sub find_e2x{ ...@@ -923,7 +922,7 @@ sub find_e2x{
$e2x_dir{$File::Find::dir} ||= $mtime; $e2x_dir{$File::Find::dir} ||= $mtime;
} }
return; return;
}, follow => 1}, @inc); }, @inc);
warn join("\n", keys %e2x_dir), "\n"; warn join("\n", keys %e2x_dir), "\n";
for my $d (sort {$e2x_dir{$a} <=> $e2x_dir{$b}} keys %e2x_dir){ for my $d (sort {$e2x_dir{$a} <=> $e2x_dir{$b}} keys %e2x_dir){
$_E2X = $d; $_E2X = $d;
......
...@@ -315,8 +315,13 @@ EOF ...@@ -315,8 +315,13 @@ EOF
package Errno; package Errno;
our (\@EXPORT_OK,\%EXPORT_TAGS,\@ISA,\$VERSION,\%errno,\$AUTOLOAD); our (\@EXPORT_OK,\%EXPORT_TAGS,\@ISA,\$VERSION,\%errno,\$AUTOLOAD);
use Exporter (); use Exporter ();
use Config;
use strict; use strict;
"\$Config{'archname'}-\$Config{'osvers'}" eq
"$Config{'archname'}-$Config{'osvers'}" or
die "Errno architecture ($Config{'archname'}-$Config{'osvers'}) does not match executable architecture (\$Config{'archname'}-\$Config{'osvers'})";
\$VERSION = "$VERSION"; \$VERSION = "$VERSION";
\$VERSION = eval \$VERSION; \$VERSION = eval \$VERSION;
\@ISA = qw(Exporter); \@ISA = qw(Exporter);
......
#include "EXTERN.h" #include "EXTERN.h"
#include "perl.h" #include "perl.h"
#include "XSUB.h" #include "XSUB.h"
#include <gdbm-ndbm.h> #include <ndbm.h>
typedef struct { typedef struct {
DBM * dbp ; DBM * dbp ;
......
...@@ -3,4 +3,6 @@ ...@@ -3,4 +3,6 @@
# (no null key support) # (no null key support)
# Jonathan Stowe <gellyfish@gellyfish.com> # Jonathan Stowe <gellyfish@gellyfish.com>
use Config; use Config;
$self->{LIBS} = ['-lgdbm_compat'] if $Config{libs} =~ /(?:^|\s)-lgdbm_compat(?:\s|$)/; use ExtUtils::Liblist;
($self->{LIBS}) = ExtUtils::Liblist->ext('-lgdbm -lgdbm_compat')
if $Config{libs} =~ /(?:^|\s)-lgdbm(?:\s|$)/;
# uses GDBM dbm compatibility feature - at least on SuSE 8.0 # uses GDBM dbm compatibility feature - at least on SuSE 8.0
$self->{LIBS} = ['-lgdbm_compat']; $self->{LIBS} = ['-lgdbm'];
...@@ -65,7 +65,7 @@ use Time::HiRes qw(gettimeofday); ...@@ -65,7 +65,7 @@ use Time::HiRes qw(gettimeofday);
my $have_alarm = $Config{d_alarm}; my $have_alarm = $Config{d_alarm};
my $have_fork = $Config{d_fork}; my $have_fork = $Config{d_fork};
my $waitfor = 300; # 10-20 seconds is normal (load affects this). my $waitfor = 60; # 10-20 seconds is normal (load affects this).
my $timer_pid; my $timer_pid;
my $TheEnd; my $TheEnd;
......
...@@ -94,6 +94,13 @@ case "$optimize" in ...@@ -94,6 +94,13 @@ case "$optimize" in
# use -O2 by default ; -O3 doesn't seem to bring significant benefits with gcc # use -O2 by default ; -O3 doesn't seem to bring significant benefits with gcc
'') '')
optimize='-O2' optimize='-O2'
case "`uname -m`" in
ppc*)
# on ppc, it seems that gcc (at least gcc 3.3.2) isn't happy
# with -O2 ; so downgrade to -O1.
optimize='-O1'
;;
esac
;; ;;
esac esac
...@@ -253,7 +260,6 @@ case "`uname -m`" in ...@@ -253,7 +260,6 @@ case "`uname -m`" in
sparc*) sparc*)
case "$cccdlflags" in case "$cccdlflags" in
*-fpic*) cccdlflags="`echo $cccdlflags|sed 's/-fpic/-fPIC/'`" ;; *-fpic*) cccdlflags="`echo $cccdlflags|sed 's/-fpic/-fPIC/'`" ;;
*-fPIC*) ;;
*) cccdlflags="$cccdlflags -fPIC" ;; *) cccdlflags="$cccdlflags -fPIC" ;;
esac esac
;; ;;
......
...@@ -156,8 +156,11 @@ find(sub { ...@@ -156,8 +156,11 @@ find(sub {
if ("$File::Find::dir/$_" =~ m{^ext\b(.*)/([^/]+)\.pm$}) { if ("$File::Find::dir/$_" =~ m{^ext\b(.*)/([^/]+)\.pm$}) {
my($path, $modname) = ($1,$2); my($path, $modname) = ($1,$2);
# strip to optional "/lib", or remove trailing component # strip trailing component first
$path =~ s{.*/lib\b}{} or $path =~ s{/[^/]*$}{}; $path =~ s{/[^/]*$}{};
# strip optional "/lib";
$path =~ s{/lib\b}{};
# strip any leading / # strip any leading /
$path =~ s{^/}{}; $path =~ s{^/}{};
...@@ -848,7 +851,7 @@ sub installlib { ...@@ -848,7 +851,7 @@ sub installlib {
} }
if (-f $_) { if (-f $_) {
if (/\.(?:al|ix)$/ && !($dir =~ m[^auto/(.*)$])) { if (/\.(?:al|ix)$/ && !($dir =~ m[^auto/(.*)$] && $archpms{$1})) {
$installlib = $installprivlib; $installlib = $installprivlib;
#We're installing *.al and *.ix files into $installprivlib, #We're installing *.al and *.ix files into $installprivlib,
#but we have to delete old *.al and *.ix files from the 5.000 #but we have to delete old *.al and *.ix files from the 5.000
......
...@@ -3411,7 +3411,7 @@ END_OF_FUNC ...@@ -3411,7 +3411,7 @@ END_OF_FUNC
'upload' =><<'END_OF_FUNC', 'upload' =><<'END_OF_FUNC',
sub upload { sub upload {
my($self,$param_name) = self_or_default(@_); my($self,$param_name) = self_or_default(@_);
my @param = grep(ref && defined(fileno($_)), $self->param($param_name)); my @param = grep(ref && fileno($_), $self->param($param_name));
return unless @param; return unless @param;
return wantarray ? @param : $param[0]; return wantarray ? @param : $param[0];
} }
......
...@@ -1246,7 +1246,7 @@ sub load { ...@@ -1246,7 +1246,7 @@ sub load {
$configpm = $INC{"CPAN/MyConfig.pm"}; $configpm = $INC{"CPAN/MyConfig.pm"};
$redo++; $redo++;
} else { } else {
my($path_to_cpan) = '/etc/perl'; my($path_to_cpan) = File::Basename::dirname($INC{"CPAN.pm"});
my($configpmdir) = File::Spec->catdir($path_to_cpan,"CPAN"); my($configpmdir) = File::Spec->catdir($path_to_cpan,"CPAN");
my($configpmtest) = File::Spec->catfile($configpmdir,"Config.pm"); my($configpmtest) = File::Spec->catfile($configpmdir,"Config.pm");
if (-d $configpmdir or File::Path::mkpath($configpmdir)) { if (-d $configpmdir or File::Path::mkpath($configpmdir)) {
...@@ -3290,8 +3290,7 @@ happen.\a ...@@ -3290,8 +3290,7 @@ happen.\a
) )
) { ) {
local($^W)= 0; local($^W)= 0;
if ($CPAN::Config->{cpan_version_check} && if ($version > $CPAN::VERSION){
$version > $CPAN::VERSION){
$CPAN::Frontend->myprint(qq{ $CPAN::Frontend->myprint(qq{
There's a new CPAN.pm version (v$version) available! There's a new CPAN.pm version (v$version) available!
[Current version is v$CPAN::VERSION] [Current version is v$CPAN::VERSION]
...@@ -6765,7 +6764,6 @@ defined: ...@@ -6765,7 +6764,6 @@ defined:
index_expire after this many days refetch index files index_expire after this many days refetch index files
cache_metadata use serializer to cache metadata cache_metadata use serializer to cache metadata
cpan_home local directory reserved for this package cpan_home local directory reserved for this package
cpan_version_check if true, warns you when the CPAN module is out of date.
dontload_hash anonymous hash: modules in the keys will not be dontload_hash anonymous hash: modules in the keys will not be
loaded by the CPAN::has_inst() routine loaded by the CPAN::has_inst() routine
gzip location of external program gzip gzip location of external program gzip
......
...@@ -358,7 +358,7 @@ If you don\'t understand this question, just press ENTER. ...@@ -358,7 +358,7 @@ If you don\'t understand this question, just press ENTER.
}; };
$default = $CPAN::Config->{makepl_arg} || "INSTALLDIRS=site"; $default = $CPAN::Config->{makepl_arg} || "";
$CPAN::Config->{makepl_arg} = $CPAN::Config->{makepl_arg} =
prompt("Parameters for the 'perl Makefile.PL' command? prompt("Parameters for the 'perl Makefile.PL' command?
Typical frequently used settings: Typical frequently used settings:
...@@ -464,7 +464,6 @@ be echoed to the terminal! ...@@ -464,7 +464,6 @@ be echoed to the terminal!
# We don't ask that now, it will be noticed in time, won't it? # We don't ask that now, it will be noticed in time, won't it?
$CPAN::Config->{'inhibit_startup_message'} = 0; $CPAN::Config->{'inhibit_startup_message'} = 0;
$CPAN::Config->{'cpan_version_check'} = 1;
$CPAN::Config->{'getcwd'} = 'cwd'; $CPAN::Config->{'getcwd'} = 'cwd';
print "\n\n"; print "\n\n";
...@@ -554,9 +553,6 @@ sub picklist { ...@@ -554,9 +553,6 @@ sub picklist {
$pos = 0 if $pos >= @$items; $pos = 0 if $pos >= @$items;
my $num = prompt($prompt,$default); my $num = prompt($prompt,$default);
unless ($num or -t) {
die "No default for '$prompt',\naborting non-interactive setup.\n";
}
@nums = split (' ', $num); @nums = split (' ', $num);
my $i = scalar @$items; my $i = scalar @$items;
......
...@@ -300,9 +300,6 @@ and extensions in your C/C++ applications. ...@@ -300,9 +300,6 @@ and extensions in your C/C++ applications.
Typically, an application B<Makefile> will invoke ExtUtils::Embed Typically, an application B<Makefile> will invoke ExtUtils::Embed
functions while building your application. 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 =head1 @EXPORT
ExtUtils::Embed exports the following functions: ExtUtils::Embed exports the following functions:
......
...@@ -173,8 +173,8 @@ sub install { ...@@ -173,8 +173,8 @@ sub install {
if (-f $targetfile){ if (-f $targetfile){
forceunlink($targetfile) unless $nonono; forceunlink($targetfile) unless $nonono;
} else { } else {
mkpath($targetdir) unless $nonono; mkpath($targetdir,0,0755) unless $nonono;
print "mkpath($targetdir)\n" if $verbose>1; print "mkpath($targetdir,0,0755)\n" if $verbose>1;
} }
copy($sourcefile, $targetfile) unless $nonono; copy($sourcefile, $targetfile) unless $nonono;
print "Installing $targetfile\n"; print "Installing $targetfile\n";
......
...@@ -54,9 +54,6 @@ sub _unix_os2_ext { ...@@ -54,9 +54,6 @@ sub _unix_os2_ext {
my($pwd) = cwd(); # from Cwd.pm my($pwd) = cwd(); # from Cwd.pm
my($found) = 0; my($found) = 0;
# Debian-specific: don't use LD_RUN_PATH for standard dirs
$ld_run_path_seen{$_}++ for qw(/lib /usr/lib /usr/X11R6/lib);
foreach $thislib (split ' ', $potential_libs){ foreach $thislib (split ' ', $potential_libs){
# Handle possible linker path arguments. # Handle possible linker path arguments.
......
...@@ -2,7 +2,7 @@ package ExtUtils::MM_Any; ...@@ -2,7 +2,7 @@ package ExtUtils::MM_Any;
use strict; use strict;
use vars qw($VERSION @ISA); use vars qw($VERSION @ISA);
$VERSION = '0.13_01'; $VERSION = '0.13';
use File::Spec; use File::Spec;
BEGIN { @ISA = qw(File::Spec); } BEGIN { @ISA = qw(File::Spec); }
...@@ -645,6 +645,8 @@ all POD files in MAN1PODS and MAN3PODS. ...@@ -645,6 +645,8 @@ all POD files in MAN1PODS and MAN3PODS.
sub manifypods_target { sub manifypods_target {
my($self) = shift; my($self) = shift;
my $man1pods = '';
my $man3pods = '';
my $dependencies = ''; my $dependencies = '';
# populate manXpods & dependencies: # populate manXpods & dependencies:
...@@ -664,7 +666,7 @@ END ...@@ -664,7 +666,7 @@ END
foreach my $section (qw(1 3)) { foreach my $section (qw(1 3)) {
my $pods = $self->{"MAN${section}PODS"}; my $pods = $self->{"MAN${section}PODS"};
push @man_cmds, $self->split_command(<<CMD, %$pods); push @man_cmds, $self->split_command(<<CMD, %$pods);
\$(NOECHO) \$(POD2MAN) --section=\$(MAN${section}EXT) --perm_rw=\$(PERM_RW) \$(NOECHO) \$(POD2MAN) --section=$section --perm_rw=\$(PERM_RW)
CMD CMD
} }
...@@ -1043,19 +1045,12 @@ sub init_INSTALL_from_PREFIX { ...@@ -1043,19 +1045,12 @@ sub init_INSTALL_from_PREFIX {
$self->{INSTALLSITEBIN} ||= '$(INSTALLBIN)' $self->{INSTALLSITEBIN} ||= '$(INSTALLBIN)'
unless $Config{installsitebin}; unless $Config{installsitebin};
$self->{INSTALLSITESCRIPT} ||= '$(INSTALLSCRIPT)'
unless $Config{installsitescript};
unless( $Config{installvendorbin} ) { unless( $Config{installvendorbin} ) {
$self->{INSTALLVENDORBIN} ||= $Config{usevendorprefix} $self->{INSTALLVENDORBIN} ||= $Config{usevendorprefix}
? $Config{installbin} ? $Config{installbin}
: ''; : '';
} }
unless( $Config{installvendorscript} ) {
$self->{INSTALLVENDORSCRIPT} ||= $Config{usevendorprefix}
? $Config{installscript}
: '';
}
my $iprefix = $Config{installprefixexp} || $Config{installprefix} || my $iprefix = $Config{installprefixexp} || $Config{installprefix} ||
...@@ -1078,11 +1073,9 @@ sub init_INSTALL_from_PREFIX { ...@@ -1078,11 +1073,9 @@ sub init_INSTALL_from_PREFIX {
$self->{SITEPREFIX} ||= $sprefix; $self->{SITEPREFIX} ||= $sprefix;
$self->{VENDORPREFIX} ||= $vprefix; $self->{VENDORPREFIX} ||= $vprefix;
my $p = $self->{PREFIX} = $self->{PERLPREFIX}; # Lots of MM extension authors like to use $(PREFIX) so we
for my $t (qw/PERL SITE VENDOR/) # put something sensible in there no matter what.
{ $self->{PREFIX} = '$('.uc $self->{INSTALLDIRS}.'PREFIX)';
$self->{"${t}PREFIX"} =~ s!^\Q$p\E(?=/|$)!\$(PREFIX)!;
}
} }
my $arch = $Config{archname}; my $arch = $Config{archname};
...@@ -1118,12 +1111,6 @@ sub init_INSTALL_from_PREFIX { ...@@ -1118,12 +1111,6 @@ sub init_INSTALL_from_PREFIX {
script => { s => $iprefix, script => { s => $iprefix,
t => 'perl', t => 'perl',
d => 'bin' }, d => 'bin' },
vendorscript=> { s => $vprefix,
t => 'vendor',
d => 'bin' },
sitescript => { s => $sprefix,
t => 'site',
d => 'bin' },
); );
my %man_layouts = my %man_layouts =
...@@ -1266,6 +1253,7 @@ sub init_INSTALL_from_INSTALLBASE { ...@@ -1266,6 +1253,7 @@ sub init_INSTALL_from_INSTALLBASE {
# Adjust for variable quirks. # Adjust for variable quirks.
$install{INSTALLARCHLIB} ||= delete $install{INSTALLARCH}; $install{INSTALLARCHLIB} ||= delete $install{INSTALLARCH};
$install{INSTALLPRIVLIB} ||= delete $install{INSTALLLIB}; $install{INSTALLPRIVLIB} ||= delete $install{INSTALLLIB};
delete @install{qw(INSTALLVENDORSCRIPT INSTALLSITESCRIPT)};
foreach my $key (keys %install) { foreach my $key (keys %install) {
$self->{$key} ||= $install{$key}; $self->{$key} ||= $install{$key};
...@@ -1639,7 +1627,7 @@ sub installvars { ...@@ -1639,7 +1627,7 @@ sub installvars {
return qw(PRIVLIB SITELIB VENDORLIB return qw(PRIVLIB SITELIB VENDORLIB
ARCHLIB SITEARCH VENDORARCH ARCHLIB SITEARCH VENDORARCH
BIN SITEBIN VENDORBIN BIN SITEBIN VENDORBIN
SCRIPT SITESCRIPT VENDORSCRIPT SCRIPT
MAN1DIR SITEMAN1DIR VENDORMAN1DIR MAN1DIR SITEMAN1DIR VENDORMAN1DIR
MAN3DIR SITEMAN3DIR VENDORMAN3DIR MAN3DIR SITEMAN3DIR VENDORMAN3DIR
); );
......
...@@ -20,7 +20,7 @@ use vars qw($VERSION @ISA ...@@ -20,7 +20,7 @@ use vars qw($VERSION @ISA
use ExtUtils::MakeMaker qw($Verbose neatvalue); use ExtUtils::MakeMaker qw($Verbose neatvalue);
$VERSION = '1.50_01'; $VERSION = '1.50';
require ExtUtils::MM_Any; require ExtUtils::MM_Any;
@ISA = qw(ExtUtils::MM_Any); @ISA = qw(ExtUtils::MM_Any);
...@@ -2054,7 +2054,9 @@ doc__install : doc_site_install ...@@ -2054,7 +2054,9 @@ doc__install : doc_site_install
$(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site