package ExtUtils::MM::Utils; require 5.006; use strict; use vars qw($VERSION); $VERSION = '7.11_06'; $VERSION = eval $VERSION; ## no critic [BuiltinFunctions::ProhibitStringyEval] =head1 NAME ExtUtils::MM::Utils - ExtUtils::MM methods without dependency on ExtUtils::MakeMaker =head1 SYNOPSIS require ExtUtils::MM::Utils; MM->maybe_command($file); =head1 DESCRIPTION This is a collection of L subroutines that are used by many other modules but that do not need full-featured L. The issue with L is it pulls in Perl header files and that is an overkill for small subroutines. An example is the L that caused installing GCC just because of three-line I from L. The intentions is to use L instead of L for these trivial methods. You can still call them via L class name. =head1 METHODS =over 4 =item maybe_command Returns true, if the argument is likely to be a command. =cut if (!exists $INC{'ExtUtils/MM.pm'}) { *MM::maybe_command = *ExtUtils::MM::maybe_command = \&maybe_command; } sub maybe_command { my($self,$file) = @_; return $file if -x $file && ! -d $file; return; } 1; =back =head1 BUGS These methods are copied from L. Other operating systems are not supported yet. The reason is this L. =head1 SEE ALSO L, L =cut