use ExtUtils::MakeMaker;
WriteMakefile(
'NAME' => 'Net::OAI::Harvester',
'DISTNAME' => 'OAI-Harvester',
'ABSTRACT' => 'A package for harvesting metadata using OAI-PMH',
'LICENSE' => 'perl',
'VERSION_FROM' => 'lib/Net/OAI/Harvester.pm',
'PMLIBDIRS' => [ qw( lib/ ) ],
'AUTHOR' => 'Ed Summers <ehs@pobox.com>',
'MIN_PERL_VERSION' => '5.8.0',
'PERL_MALLOC_OK' => 1,
'PREREQ_PM' => {
'LWP::UserAgent' => '2.0',
'Storable' => '2.0',
'URI' => '1.3',
'XML::SAX' => '0.12',
'XML::SAX::Base' => '1.04',
'Carp' => 0,
'File::Temp' => 0,
'IO::File' => 0,
},
'CONFIGURE_REQUIRES' => {
'XML::SAX' => 0,
},
EXE_FILES => [
'bin/oai-listsets',
'bin/oai-listrecords',
'bin/oai-dump'
],
PL_FILES => {},
SIGN => 0,
);
## if they either don't have XML::SAX::ExpatXS or XML::SAX cannot locate it
## (there are notorious problems with respect to parserdetails.ini)
## tell them they might want to get it
eval( 'use XML::SAX' ); # existence was not enforced by the constructor above...
unless ( $@ ) {
my $found = 0;
my $any = 0;
foreach my $parser ( @{ XML::SAX->parsers() } ) {
$any ++;
$found = 1 if $parser->{ Name } eq 'XML::SAX::ExpatXS';
};
if ( $any ) {
unless ( $found ) {
print <<MESSAGE;
Note: It looks like you don't have XML::SAX::ExpatXS installed.
This is ok since we have XML::SAX::PurePerl to fall back to.
You might want to consider installing XML::SAX::ExpatXS if you
want to boost Net::OAI::Harvester's performance and reliability.
MESSAGE
}
}
else {
print <<MESSAGE;
WARNING: It looks like you don't have any XML::SAX parsers installed.
Please check ParserDetails.ini if appropriate for your version
of XML::SAX::ParserFactory.
OAI-Harvester will resort to XML::SAX::PurePerl which has the
appropriate properties and comes with the XML::SAX distribution.
For the Build test you may force a specific parser as follows:
NOH_ParserPackage=XML::SAX::PurePerl make test
MESSAGE
}
}
## a general message about needing to be connected to the net for tests
print
<<MESSAGE;
Note: for 'make test' to work you must be connected to the Internet. The
tests use the OAI-PMH repositories at the Library of Congress and OCLC.
MESSAGE