require 5.008002; use strict; use warnings; use ExtUtils::MakeMaker; # Automated tools don't handle this dependency automatically, because # it's part of perl-core--yet some broken systems are actually missing # them! for my $module (qw/ Carp Fcntl FileHandle AnyDBM_File /) { eval "use $module"; gripe($module) if $@; } # Make sure there's at least ONE backend for AnyDBM_File to invoke. This # is a little paranoid, but distributions are ripping core modules out of # Perl. We might as well make sure they didn't butcher it into uselessness. my $found = 0; for my $module (qw/ NDBM_File DB_File GDBM_File SDBM_File ODBM_File / ) { eval "use $module"; $found++ unless $@; } gripe("SDBM_File") unless $found; # This is the likeliest not to be missing. WriteMakefile( NAME => 'Email::Fingerprint', AUTHOR => 'Len Budney ', VERSION_FROM => 'lib/Email/Fingerprint.pm', ABSTRACT_FROM => 'lib/Email/Fingerprint.pm', LICENSE => 'perl', INST_SCRIPT => 'blib/bin', EXE_FILES => [ 'bin/eliminate-dups' ], NO_META => 1, PREREQ_PM => { 'Carp' => 0, 'Class::Std' => 0, 'Fcntl' => 0, 'File::Path' => 2.08, 'File::Slurp' => 0.01, 'File::Spec' => 0.82, 'FileHandle' => 0, 'FindBin' => 0, 'List::MoreUtils' => 0.04, # i.e., any version 'LockFile::Simple' => 0.2, # 0.1@0 works but has bad version 'Mail::Header' => 1.40, 'AnyDBM_File' => 1.00, # i.e., any version 'Scalar::Util' => 0, 'Test::Exception' => 0.07, 'Test::More' => 0, 'Test::Warn' => 0.09, 'overload' => 0, }, dist => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', }, clean => { FILES => 'Email-Fingerprint-*' }, ); { package MY; sub postamble { return <<"EOF"; authortest: test \t\$(MAKE) -e \$(TEST_TYPE) TEST_FILES="xt/*.t" EOF } sub dist_test { my $self = shift; my $inherited = $self->SUPER::dist_test(@_); $inherited =~ s/ test / authortest /; return $inherited; } } sub gripe { my $module = shift; die <<"EOF"; **************************************************************** I am unable to load the core module "$module". You must install $module and then try installing Email::Fingerprint again. Your Perl installation should have included these modules, so if they're missing it suggests: 1) Something might be very wrong, or 2) You might be using too old a Perl version, or 3) Your Perl package was intentionally crippled[*] [*] RedHat and derivatives, I'm talking about YOU. Sorry for any inconvenience! **************************************************************** EOF } 1;