summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJan Dubois <jand@activestate.com>1999-05-02 01:45:47 +0200
committerGurusamy Sarathy <gsar@cpan.org>1999-05-10 09:45:58 +0000
commit2aea4d4064eddefd1fbe7babfc1d07fc273740b9 (patch)
tree3149fb904efc9bce39955d95e14292b8ea90ea58 /lib
parent91cce2638d90409b99ef27a8e545f2452318f884 (diff)
downloadperl-2aea4d4064eddefd1fbe7babfc1d07fc273740b9.tar.gz
Add POLLUTE=1 option to MakeMaker
Message-ID: <373373fb.59284266@smtp1.ibm.net> p4raw-id: //depot/perl@3366
Diffstat (limited to 'lib')
-rw-r--r--lib/ExtUtils/MM_Unix.pm5
-rw-r--r--lib/ExtUtils/MakeMaker.pm26
2 files changed, 25 insertions, 6 deletions
diff --git a/lib/ExtUtils/MM_Unix.pm b/lib/ExtUtils/MM_Unix.pm
index 8d09668ff8..40a8256475 100644
--- a/lib/ExtUtils/MM_Unix.pm
+++ b/lib/ExtUtils/MM_Unix.pm
@@ -384,6 +384,11 @@ sub cflags {
$self->{OPTIMIZE} =~ s/-TP(\s|$)//;
}
}
+
+ if ($self->{POLLUTE}) {
+ $self->{CCFLAGS} .= ' -DPERL_POLLUTE ';
+ }
+
return $self->{CFLAGS} = qq{
CCFLAGS = $self->{CCFLAGS}
OPTIMIZE = $self->{OPTIMIZE}
diff --git a/lib/ExtUtils/MakeMaker.pm b/lib/ExtUtils/MakeMaker.pm
index 95477fa9c4..a8ea73ea40 100644
--- a/lib/ExtUtils/MakeMaker.pm
+++ b/lib/ExtUtils/MakeMaker.pm
@@ -249,7 +249,7 @@ sub full_setup {
LINKTYPE MAKEAPERL MAKEFILE MAN1PODS MAN3PODS MAP_TARGET MYEXTLIB
NAME NEEDS_LINKING NOECHO NORECURS NO_VC OBJECT OPTIMIZE PERL PERLMAINCC
PERL_ARCHLIB PERL_LIB PERL_SRC PERM_RW PERM_RWX
- PL_FILES PM PMLIBDIRS PPM_INSTALL_EXEC PPM_INSTALL_SCRIPT PREFIX
+ PL_FILES PM PMLIBDIRS POLLUTE PPM_INSTALL_EXEC PPM_INSTALL_SCRIPT PREFIX
PREREQ_PM SKIP TYPEMAPS VERSION VERSION_FROM XS XSOPT XSPROTOARG
XS_VERSION clean depend dist dynamic_lib linkext macro realclean
tool_autosplit
@@ -445,11 +445,13 @@ sub ExtUtils::MakeMaker::new {
}
if ($self->{PARENT}) {
$self->{PARENT}->{CHILDREN}->{$newclass} = $self;
- if (exists $self->{PARENT}->{CAPI}
- and not exists $self->{CAPI})
- {
- # inherit, but only if already unspecified
- $self->{CAPI} = $self->{PARENT}->{CAPI};
+ foreach my $opt (qw(CAPI POLLUTE)) {
+ if (exists $self->{PARENT}->{$opt}
+ and not exists $self->{$opt})
+ {
+ # inherit, but only if already unspecified
+ $self->{$opt} = $self->{PARENT}->{$opt};
+ }
}
}
} else {
@@ -1617,6 +1619,18 @@ they contain will be installed in the corresponding location in the
library. A libscan() method can be used to alter the behaviour.
Defining PM in the Makefile.PL will override PMLIBDIRS.
+=item POLLUTE
+
+Release 5.005 grandfathered old global symbol names by providing preprocessor
+macros for extension source compatibility. As of release 5.006, these
+preprocessor definitions are not available by default. The POLLUTE flag
+specifies that the old names should still be defined:
+
+ perl Makefile.PL POLLUTE=1
+
+Please inform the module author if this is necessary to successfully install
+a module under 5.006 or later.
+
=item PPM_INSTALL_EXEC
Name of the executable used to run C<PPM_INSTALL_SCRIPT> below. (e.g. perl)