diff options
Diffstat (limited to 'cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm')
-rw-r--r-- | cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm | 26 |
1 files changed, 18 insertions, 8 deletions
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm index ea646606fc..19f1d5c6c3 100644 --- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm +++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm @@ -1,9 +1,10 @@ package ExtUtils::MM_AIX; use strict; -our $VERSION = '7.24'; +our $VERSION = '7.28'; $VERSION = eval $VERSION; +use ExtUtils::MakeMaker::Config; require ExtUtils::MM_Unix; our @ISA = qw(ExtUtils::MM_Unix); @@ -34,13 +35,7 @@ Define DL_FUNCS and DL_VARS and write the *.exp files. sub dlsyms { my($self,%attribs) = @_; return '' unless $self->needs_linking; - my @m; - # these will need XSMULTI-fying but maybe that already happens - push @m,"\ndynamic :: $self->{BASEEXT}.exp\n\n" - unless $self->{SKIPHASH}{'dynamic'}; # dynamic and static are subs, so... - push @m,"\nstatic :: $self->{BASEEXT}.exp\n\n" - unless $self->{SKIPHASH}{'static'}; # we avoid a warning if we tick them - join "\n", @m, $self->xs_dlsyms_iterator(\%attribs); + join "\n", $self->xs_dlsyms_iterator(\%attribs); } =head3 xs_dlsyms_ext @@ -53,6 +48,21 @@ sub xs_dlsyms_ext { '.exp'; } +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 Michael G Schwern <schwern@pobox.com> with code from ExtUtils::MM_Unix |