This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Upgrade to ExtUtils::MakeMaker 6.27,
[perl5.git] / lib / ExtUtils / MM_AIX.pm
CommitLineData
7292dc67
RGS
1package ExtUtils::MM_AIX;
2
3use strict;
4use vars qw($VERSION @ISA);
5$VERSION = '0.02';
6
7require ExtUtils::MM_Unix;
8@ISA = qw(ExtUtils::MM_Unix);
9
10
11=head1 NAME
12
13ExtUtils::MM_AIX - AIX specific subclass of ExtUtils::MM_Unix
14
15=head1 SYNOPSIS
16
17 Don't use this module directly.
18 Use ExtUtils::MM and let it choose.
19
20=head1 DESCRIPTION
21
22This is a subclass of ExtUtils::MM_Unix which contains functionality for
23AIX.
24
25Unless otherwise stated it works just like ExtUtils::MM_Unix
26
27=head2 Overridden methods
28
29=head3 dlsyms
30
31Define DL_FUNCS and DL_VARS and write the *.exp files.
32
33=cut
34
35sub dlsyms {
36 my($self,%attribs) = @_;
37
38 return '' unless $self->needs_linking();
39
40 my($funcs) = $attribs{DL_FUNCS} || $self->{DL_FUNCS} || {};
41 my($vars) = $attribs{DL_VARS} || $self->{DL_VARS} || [];
42 my($funclist) = $attribs{FUNCLIST} || $self->{FUNCLIST} || [];
43 my(@m);
44
45 push(@m,"
46dynamic :: $self->{BASEEXT}.exp
47
48") unless $self->{SKIPHASH}{'dynamic'}; # dynamic and static are subs, so...
49
50 push(@m,"
51static :: $self->{BASEEXT}.exp
52
53") unless $self->{SKIPHASH}{'static'}; # we avoid a warning if we tick them
54
55 push(@m,"
56$self->{BASEEXT}.exp: Makefile.PL
57",' $(PERLRUN) -e \'use ExtUtils::Mksymlists; \\
58 Mksymlists("NAME" => "',$self->{NAME},'", "DL_FUNCS" => ',
59 neatvalue($funcs), ', "FUNCLIST" => ', neatvalue($funclist),
60 ', "DL_VARS" => ', neatvalue($vars), ');\'
61');
62
63 join('',@m);
64}
65
66
67=head1 AUTHOR
68
69Michael G Schwern <schwern@pobox.com> with code from ExtUtils::MM_Unix
70
71=head1 SEE ALSO
72
73L<ExtUtils::MakeMaker>
74
75=cut
76
77
781;