App-Tel
view release on metacpan or search on metacpan
local/lib/perl5/Module/Build/API.pod view on Meta::CPAN
instance, for a module that could optionally use either MySQL or
PostgreSQL databases, you might use C<auto_features> like this:
my $build = Module::Build->new
(
...other stuff here...
auto_features => {
pg_support => {
description => "Interface with Postgres databases",
requires => { 'DBD::Pg' => 23.3,
'DateTime::Format::Pg' => 0 },
},
mysql_support => {
description => "Interface with MySQL databases",
requires => { 'DBD::mysql' => 17.9,
'DateTime::Format::MySQL' => 0 },
},
}
);
For each feature named, the required prerequisites will be checked, and
if there are no failures, the feature will be enabled (set to C<1>).
Otherwise the failures will be displayed to the user and the feature
will be disabled (set to C<0>).
See the documentation for L</requires> for the details of how
local/lib/perl5/Module/ScanDeps.pm view on Meta::CPAN
_glob_in_inc('Crypt/Random/Provider', 1);
},
'Date/Manip.pm' => [qw( Date/Manip/DM5.pm Date/Manip/DM6.pm )],
'Date/Manip/Base.pm' => sub {
_glob_in_inc('Date/Manip/Lang', 1);
},
'Date/Manip/TZ.pm' => sub {
return (_glob_in_inc('Date/Manip/TZ', 1),
_glob_in_inc('Date/Manip/Offset', 1));
},
'DateTime/Format/Builder/Parser.pm' => 'sub',
'DateTime/Locale.pm' => 'sub',
'DateTime/TimeZone.pm' => 'sub',
'DBI.pm' => sub {
grep !/\bProxy\b/, _glob_in_inc('DBD', 1);
},
'DBIx/Class.pm' => 'sub',
'DBIx/SearchBuilder.pm' => 'sub',
'DBIx/Perlish.pm' => [qw( attributes.pm )],
'DBIx/ReportBuilder.pm' => 'sub',
'Device/ParallelPort.pm' => 'sub',
'Device/SerialPort.pm' => [ qw(
termios.ph asm/termios.ph sys/termiox.ph sys/termios.ph sys/ttycom.ph
( run in 0.406 second using v1.01-cache-2.11-cpan-05444aca049 )