use strict; use ExtUtils::MakeMaker; use FileHandle; check_version(); my %prereq = read_prereq(); WriteMakefile( 'NAME' => 'Sledge', 'VERSION_FROM' => 'lib/Sledge.pm', # finds $VERSION 'EXE_FILES' => [ 'bin/sledge-setup' ], 'PREREQ_PM' => \%prereq, ); sub read_prereq { my $handle = FileHandle->new("eg/prereq-modules"); my %modules = map { chomp; my($mod, $ver) = split / /; ($mod, $ver || 0) } $handle->getlines; return %modules; } sub check_version { my $current_version; eval { require Sledge; $current_version = Sledge->VERSION; }; require "lib/Sledge.pm"; if ($current_version && $current_version < $Sledge::VERSION) { warn <