/usr/share/perl/5.34.0/ExtUtils
NameSizeModeActions
CBuilder/-0755rm
Command/-0755rm
Constant/-0755rm
Liblist/-0755rm
MakeMaker/-0755rm
ParseXS/-0755rm
Typemaps/-0755rm
CBuilder.pm88830644editdlrm
Command.pm78110644editdlrm
Constant.pm150500644editdlrm
Embed.pm128680644editdlrm
Install.pm408810644editdlrm
Installed.pm143320644editdlrm
Liblist.pm95090644editdlrm
MakeMaker.pm1094980644editdlrm
Manifest.pm234910644editdlrm
MANIFEST.SKIP11980644editdlrm
Miniperl.pm66340644editdlrm
Mkbootstrap.pm32740644editdlrm
Mksymlists.pm110130644editdlrm
MM.pm21840644editdlrm
MM_AIX.pm14960644editdlrm
MM_Any.pm829140644editdlrm
MM_BeOS.pm10620644editdlrm
MM_Cygwin.pm41270644editdlrm
MM_Darwin.pm14810644editdlrm
MM_DOS.pm10650644editdlrm
MM_MacOS.pm9010644editdlrm
MM_NW5.pm54800644editdlrm
MM_OS2.pm32290644editdlrm
MM_OS390.pm22690644editdlrm
MM_QNX.pm9070644editdlrm
MM_Unix.pm1138590644editdlrm
MM_UWIN.pm9940644editdlrm
MM_VMS.pm682790644editdlrm
MM_VOS.pm7620644editdlrm
MM_Win32.pm150620644editdlrm
MM_Win95.pm12930644editdlrm
MY.pm6760644editdlrm
Packlist.pm85380644editdlrm
ParseXS.pm669280644editdlrm
ParseXS.pod44060644editdlrm
PL2Bat.pm52190644editdlrm
testlib.pm9110644editdlrm
typemap113150644editdlrm
Typemaps.pm268930644editdlrm
xsubpp50710644editdlrm
Edit: /usr/share/perl/5.34.0/ExtUtils/MM.pm (2184B)
package ExtUtils::MM; use strict; use warnings; use ExtUtils::MakeMaker::Config; our $VERSION = '7.62'; $VERSION =~ tr/_//d; require ExtUtils::Liblist; require ExtUtils::MakeMaker; our @ISA = qw(ExtUtils::Liblist ExtUtils::MakeMaker); =head1 NAME ExtUtils::MM - OS adjusted ExtUtils::MakeMaker subclass =head1 SYNOPSIS require ExtUtils::MM; my $mm = MM->new(...); =head1 DESCRIPTION B ExtUtils::MM is a subclass of L which automatically chooses the appropriate OS specific subclass for you (ie. L, etc...). It also provides a convenient alias via the MM class (I didn't want MakeMaker modules outside of ExtUtils/). This class might turn out to be a temporary solution, but MM won't go away. =cut { # Convenient alias. package MM; our @ISA = qw(ExtUtils::MM); sub DESTROY {} } sub _is_win95 { # miniperl might not have the Win32 functions available and we need # to run in miniperl. my $have_win32 = eval { require Win32 }; return $have_win32 && defined &Win32::IsWin95 ? Win32::IsWin95() : ! defined $ENV{SYSTEMROOT}; } my %Is = (); $Is{VMS} = $^O eq 'VMS'; $Is{OS2} = $^O eq 'os2'; $Is{MacOS} = $^O eq 'MacOS'; if( $^O eq 'MSWin32' ) { _is_win95() ? $Is{Win95} = 1 : $Is{Win32} = 1; } $Is{UWIN} = $^O =~ /^uwin(-nt)?$/; $Is{Cygwin} = $^O eq 'cygwin'; $Is{NW5} = $Config{osname} eq 'NetWare'; # intentional $Is{BeOS} = ($^O =~ /beos/i or $^O eq 'haiku'); $Is{DOS} = $^O eq 'dos'; if( $Is{NW5} ) { $^O = 'NetWare'; delete $Is{Win32}; } $Is{VOS} = $^O eq 'vos'; $Is{QNX} = $^O eq 'qnx'; $Is{AIX} = $^O eq 'aix'; $Is{Darwin} = $^O eq 'darwin'; $Is{OS390} = $^O eq 'os390'; $Is{Unix} = !grep { $_ } values %Is; map { delete $Is{$_} unless $Is{$_} } keys %Is; _assert( keys %Is == 1 ); my($OS) = keys %Is; my $class = "ExtUtils::MM_$OS"; eval "require $class" unless $INC{"ExtUtils/MM_$OS.pm"}; ## no critic die $@ if $@; unshift @ISA, $class; sub _assert { my $sanity = shift; die sprintf "Assert failed at %s line %d\n", (caller)[1,2] unless $sanity; return; }