Plack-Middleware-DBIC-QueryLog
view release on metacpan or search on metacpan
maint/Maker.pm view on Meta::CPAN
package # Hide from PAUSE
Maker;
use strict;
use warnings;
our $_caller = scalar(caller(1));
sub is_script { !$_caller }
our $_has_errors = 0;
sub has_errors { $_has_errors }
our $has_been_imported = 0;
sub import {
if($has_been_imported) {
return 1;
} else {
strict->import;
warnings->import;
&use_module_install;
$has_been_imported = 1;
}
}
sub installer_mode { -e 'META.yml' }
sub _use_module_install {
package main;
require inc::Module::Install;
inc::Module::Install->import;
}
sub _try_use_module_install {
eval {
_use_module_install;
1;
}
}
sub use_module_install {
if( &installer_mode ) {
_use_module_install;
} else {
_try_use_module_install
|| log_missing_author_dependencies('Module::Install');
}
}
sub module_install_author_plugins {
'Module::Install::ReadmeMarkdownFromPod' => 'readme_markdown_from_pod',
'Module::Install::Repository' => 'auto_set_repository',
'Module::Install::Homepage' => 'auto_set_homepage',
'Module::Install::ManifestSkip' => [manifest_skip => qw(clean) ],
'Module::Install::AutoManifest' => 'auto_manifest';
}
sub extra_author_dependencies {
'App::cpanminus',
'local::lib',
'App::local::lib::helper',
'Module::Install',
'App::cpanoutdated',
'CPAN::Uploader'
}
sub list_author_dependencies {
my %module_install_author_plugins = module_install_author_plugins;
my @deps = (&extra_author_dependencies, keys %module_install_author_plugins);
print join "\n", @deps;
print "\n";
}
sub finalize_makefile {
unless( &installer_mode ) {
my %module_install_author_plugins = module_install_author_plugins;
my @missing = grep { !eval "package main; use $_; 1" } keys %module_install_author_plugins;
log_missing_author_dependencies(@missing)
if @missing;
( run in 0.562 second using v1.01-cache-2.11-cpan-39bf76dae61 )