1*e0c4386eSCy Schubertpackage platform::AIX; 2*e0c4386eSCy Schubert 3*e0c4386eSCy Schubertuse strict; 4*e0c4386eSCy Schubertuse warnings; 5*e0c4386eSCy Schubertuse Carp; 6*e0c4386eSCy Schubert 7*e0c4386eSCy Schubertuse vars qw(@ISA); 8*e0c4386eSCy Schubert 9*e0c4386eSCy Schubertrequire platform::Unix; 10*e0c4386eSCy Schubert@ISA = qw(platform::Unix); 11*e0c4386eSCy Schubert 12*e0c4386eSCy Schubert# Assume someone set @INC right before loading this module 13*e0c4386eSCy Schubertuse configdata; 14*e0c4386eSCy Schubert 15*e0c4386eSCy Schubertsub dsoext { '.so' } 16*e0c4386eSCy Schubertsub shlibextsimple { '.a' } 17*e0c4386eSCy Schubert 18*e0c4386eSCy Schubert# In shared mode, the default static library names clashes with the final 19*e0c4386eSCy Schubert# "simple" full shared library name, so we add '_a' to the basename of the 20*e0c4386eSCy Schubert# static libraries in that case. 21*e0c4386eSCy Schubertsub staticname { 22*e0c4386eSCy Schubert # Non-installed libraries are *always* static, and their names remain 23*e0c4386eSCy Schubert # the same, except for the mandatory extension 24*e0c4386eSCy Schubert my $in_libname = platform::BASE->staticname($_[1]); 25*e0c4386eSCy Schubert return $in_libname 26*e0c4386eSCy Schubert if $unified_info{attributes}->{libraries}->{$_[1]}->{noinst}; 27*e0c4386eSCy Schubert 28*e0c4386eSCy Schubert return platform::BASE->staticname($_[1]) . ($disabled{shared} ? '' : '_a'); 29*e0c4386eSCy Schubert} 30