summaryrefslogtreecommitdiffstats
path: root/gnu/usr.bin/perl/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/usr.bin/perl/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm')
-rw-r--r--gnu/usr.bin/perl/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm50
1 files changed, 24 insertions, 26 deletions
diff --git a/gnu/usr.bin/perl/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm b/gnu/usr.bin/perl/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm
index bb7e6105a5f..b114ee49d30 100644
--- a/gnu/usr.bin/perl/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm
+++ b/gnu/usr.bin/perl/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm
@@ -1,14 +1,13 @@
package ExtUtils::MM_AIX;
use strict;
-our $VERSION = '7.10_02';
+our $VERSION = '7.34';
+$VERSION = eval $VERSION;
+use ExtUtils::MakeMaker::Config;
require ExtUtils::MM_Unix;
our @ISA = qw(ExtUtils::MM_Unix);
-use ExtUtils::MakeMaker qw(neatvalue);
-
-
=head1 NAME
ExtUtils::MM_AIX - AIX specific subclass of ExtUtils::MM_Unix
@@ -35,35 +34,34 @@ Define DL_FUNCS and DL_VARS and write the *.exp files.
sub dlsyms {
my($self,%attribs) = @_;
+ return '' unless $self->needs_linking;
+ join "\n", $self->xs_dlsyms_iterator(\%attribs);
+}
- return '' unless $self->needs_linking();
-
- my($funcs) = $attribs{DL_FUNCS} || $self->{DL_FUNCS} || {};
- my($vars) = $attribs{DL_VARS} || $self->{DL_VARS} || [];
- my($funclist) = $attribs{FUNCLIST} || $self->{FUNCLIST} || [];
- my(@m);
-
- push(@m,"
-dynamic :: $self->{BASEEXT}.exp
-
-") unless $self->{SKIPHASH}{'dynamic'}; # dynamic and static are subs, so...
+=head3 xs_dlsyms_ext
- push(@m,"
-static :: $self->{BASEEXT}.exp
+On AIX, is C<.exp>.
-") unless $self->{SKIPHASH}{'static'}; # we avoid a warning if we tick them
+=cut
- push(@m,"
-$self->{BASEEXT}.exp: Makefile.PL
-",' $(PERLRUN) -e \'use ExtUtils::Mksymlists; \\
- Mksymlists("NAME" => "',$self->{NAME},'", "DL_FUNCS" => ',
- neatvalue($funcs), ', "FUNCLIST" => ', neatvalue($funclist),
- ', "DL_VARS" => ', neatvalue($vars), ');\'
-');
+sub xs_dlsyms_ext {
+ '.exp';
+}
- join('',@m);
+sub xs_dlsyms_arg {
+ my($self, $file) = @_;
+ return qq{-bE:${file}};
}
+sub init_others {
+ my $self = shift;
+ $self->SUPER::init_others;
+ # perl "hints" add -bE:$(BASEEXT).exp to LDDLFLAGS. strip that out
+ # so right value can be added by xs_make_dynamic_lib to work for XSMULTI
+ $self->{LDDLFLAGS} ||= $Config{lddlflags};
+ $self->{LDDLFLAGS} =~ s#(\s*)\S*\Q$(BASEEXT)\E\S*(\s*)#$1$2#;
+ return;
+}
=head1 AUTHOR