1#--------------------------------------------------------------------------# 2# This is a modified copy of version.pm 0.9909, bundled exclusively for 3# use by ExtUtils::Makemaker and its dependencies to bootstrap when 4# version.pm is not available. It should not be used by ordinary modules. 5# 6# When loaded, it will try to load version.pm. If that fails, it will load 7# ExtUtils::MakeMaker::version::vpp and alias various *version functions 8# to functions in that module. It will also override UNIVERSAL::VERSION. 9#--------------------------------------------------------------------------# 10 11package ExtUtils::MakeMaker::version; 12 13use 5.006001; 14use strict; 15 16use vars qw(@ISA $VERSION $CLASS $STRICT $LAX *declare *qv); 17 18$VERSION = '7.44'; 19$VERSION =~ tr/_//d; 20$CLASS = 'version'; 21 22{ 23 local $SIG{'__DIE__'}; 24 eval "use version"; 25 if ( $@ ) { # don't have any version.pm installed 26 eval "use ExtUtils::MakeMaker::version::vpp"; 27 die "$@" if ( $@ ); 28 local $^W; 29 delete $INC{'version.pm'}; 30 $INC{'version.pm'} = $INC{'ExtUtils/MakeMaker/version.pm'}; 31 push @version::ISA, "ExtUtils::MakeMaker::version::vpp"; 32 $version::VERSION = $VERSION; 33 *version::qv = \&ExtUtils::MakeMaker::version::vpp::qv; 34 *version::declare = \&ExtUtils::MakeMaker::version::vpp::declare; 35 *version::_VERSION = \&ExtUtils::MakeMaker::version::vpp::_VERSION; 36 *version::vcmp = \&ExtUtils::MakeMaker::version::vpp::vcmp; 37 *version::new = \&ExtUtils::MakeMaker::version::vpp::new; 38 if ("$]" >= 5.009000) { 39 no strict 'refs'; 40 *version::stringify = \&ExtUtils::MakeMaker::version::vpp::stringify; 41 *{'version::(""'} = \&ExtUtils::MakeMaker::version::vpp::stringify; 42 *{'version::(<=>'} = \&ExtUtils::MakeMaker::version::vpp::vcmp; 43 *version::parse = \&ExtUtils::MakeMaker::version::vpp::parse; 44 } 45 require ExtUtils::MakeMaker::version::regex; 46 *version::is_lax = \&ExtUtils::MakeMaker::version::regex::is_lax; 47 *version::is_strict = \&ExtUtils::MakeMaker::version::regex::is_strict; 48 *LAX = \$ExtUtils::MakeMaker::version::regex::LAX; 49 *STRICT = \$ExtUtils::MakeMaker::version::regex::STRICT; 50 } 51 elsif ( ! version->can('is_qv') ) { 52 *version::is_qv = sub { exists $_[0]->{qv} }; 53 } 54} 55 561; 57