package Apache::VMonitor;
use ExtUtils::MakeMaker;
BEGIN { require 5.002 }
use strict;
# prerequisites
my %require =
(
"GTop" => "0.09",
"mod_perl" => "1.15",
"Apache::Scoreboard" => "0.08",
"Time::HiRes" => "01.19",
);
#--- Installation check
#--- Check for mod_perl, Apache::ScoreBoard, GTop
for (keys %require) {
chk_version($_ => $require{$_}) or
warn "\n"
. "*** For ".__PACKAGE__." to work you require version $require{$_}, or later, of\n"
. "$_.pm from CPAN\n\n";
}
sub chk_version{
my ($pkg,$wanted) = @_;
no strict 'refs';
local $| = 1;
print "Checking for $pkg...";
eval { (my $p = $pkg . ".pm") =~ s#::#/#g; require $p;};
print("not ok\n$@"),return if $@;
my $vstr = ${"${pkg}::VERSION"} ? "found v" . ${"${pkg}::VERSION"}
: "not found";
my $vnum = ${"${pkg}::VERSION"} || 0;
print $vnum >= $wanted ? "ok\n" : " " . $vstr . "\n";
$vnum >= $wanted;
}
WriteMakefile
(
NAME => __PACKAGE__,
VERSION_FROM => 'VMonitor.pm',
dist => {
PREOP => 'pod2text VMonitor.pm > $(DISTVNAME)/README',
COMPRESS => 'gzip -9f',
SUFFIX => '.gz',
ZIP => 'zip',
ZIPFLAGS => '-r',
DIST_DEFAULT => 'tardist',
},
PREREQ_PM => \%require,
);