-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathBuild.PL.config
86 lines (62 loc) · 7.44 KB
/
Build.PL.config
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
## no critic ( RequireEndWithOne RequireExplicitPackage RequireTidyCode RequireUseStrict RequireUseWarnings RequireVersionVar )
dist_name => 'Win32-CommandLine'
dist_abstract => 'Retrieve and reparse the Win32 command line'
dist_author => 'Roy Ivy III <rivy@cpan.org>'
exports_aref => [ qw/ command_line parse argv / ]
license => 'artistic_2' # NOTE: VALID licenses: perl => 'http://dev.perl.org/licenses', apache => 'http://apache.org/licenses/LICENSE-2.0', artistic => 'http://opensource.org/licenses/artistic-license.php', artistic_2 => 'http://opensource.org/licenses/artistic-license-2.0.php', lgpl => 'http://opensource.org/licenses/lgpl-license.php', bsd => 'http://opensource.org/licenses/bsd-license.php', gpl => 'http://opensource.org/licenses/gpl-license.php', mit => 'http://opensource.org/licenses/mit-license.php', mozilla => 'http://opensource.org/licenses/mozilla1.1.php', open_source => undef, unrestricted => undef, restrictive => undef, unknown => undef
#
user_ci_appveyor_key => 'iw1gvhwo95rbfd4t' # per-project value
#
dist_cpan_id => 'rivy'
dist_metacpan_id => (uc 'rivy')
dist_signature_id => $config{'dist_author'}
dist_repo_id => 'rivy'
dist_repo_web_path => q{/} . $config{'dist_repo_id'} . '/perl.' . $config{'dist_name'}
dist_repo_web => 'https://github.com' . $config{'dist_repo_web_path'}
dist_repo => $config{'dist_repo_web'} . '.git'
# * per-project/user calculated values (generally static)
dist_cpan => 'https://http://search.cpan.org/~' . $config{'dist_cpan_id'} . $config{'module_name'}
dist_issues => $config{'dist_repo_web'} . '/issues'
dist_metacpan => 'https://metacpan.org/pod/' . $config{'module_name'}
meta_add_href => { %{$config{meta_add_href}}, x_authority => 'cpan:'.(uc $config{'dist_cpan_id'}) }
meta_merge_href => { %{$config{meta_merge_href}}, resources => { bugtracker => { web => $config{'dist_issues'} }, homepage => $config{'dist_repo_web'}, repository => { type => 'git', url => $config{'dist_repo'}, web => $config{'dist_repo_web'} } } }
user_ci_appveyor_path => '/project' . ( do { my $s = $config{'dist_repo_web_path'}; $s =~ s/[.]/-/gmsx; $s; } )
#
#lib_path => 'lib//' . join( q{/}, split( /::/xms, ( $config{'module_name'} =~ m/(.*)::.*?$/xms ? $1 : q{} ) ) ) ## relative path to the modules lib location (using standard Module::Builder rules) ## already set during the parsing of 'module_name' above
# Pod::Usage v1.30 for "pod2usage({-verbose => 99, ...})"
#requires_href => { perl => '5.6.0', 'version' => 0, 'Pod::Usage' => 0, 'Carp::Assert' => 0, 'File::Which' => 0, 'File::Spec' => 0, %{$config{'requires_href'}}, } ## see Module::CoreList->first_release('<MODULE>') for CORE module release information
requires_href => { %{$config{'requires_href'}}, perl => '5.8.8', 'version' => 0.74, 'Pod::Usage' => '1.30', 'Carp::Assert' => 0, 'File::Globstar' => 0, 'File::Which' => 0, } ## see Module::CoreList->first_release('<MODULE>') for CORE module release information
#recommends_href => { %{$config{'recommends_href'}}, 'Win32' => 0, 'Win32::API' => 0, 'Win32::Security::SID' => 0, 'Win32::TieRegistry' => 0, }
recommends_href => { %{$config{'recommends_href'}}, 'Win32' => 0, 'Win32::Security::SID' => 0, 'Win32::TieRegistry' => 0, } ## recommended modules to expand home path expansion coverage (above just current user and public)
#
test_recommends_href => { %{$config{'test_recommends_href'}}, 'Test::MinimumVersion' => '0.008', 'Test::Perl::Critic' => 0, 'Test::Pod' => 0, 'Test::Pod::Coverage' => 0 } ## for minimal AUTOMATED/CI testing
test_requires_href => { %{$config{'test_requires_href'}}, 'IPC::Run3' => 0, 'Probe::Perl' => 0, } ## for xx.bat testing (t\13.xx.t)
# TODO: think about changing this... need Module::Signature and 'gpg' or Crypt::OpenPGP; and...
# ...do I want default to be signing for people who build this...; probably so besides they will just build/install not 'build dist'
#sign => 0
#sign => 'true'
#recursive_test_files = 'true'
no_index_href => { %{$config{'no_index_href'}}, directory => [ 'eg', 'extras', 'notes', @{$config{'no_index_href'}{directory}} ], }
no_index_href => { %{$config{'no_index_href'}}, file => [ 'README.mkd', $config{'no_index_href'}{file} ? @{$config{'no_index_href'}{file}} : () ], }
#create_readme => 'true' # create README from module pod
#create_makefile_pl => 'passthrough', # passthrough Makefile.PL (download/install Module::Build from CPAN if missing, deprecated [use 'small' and 'configure_requires']) [see PerlDOC: module::build::compat]
#create_makefile_pl => 'small', # pass all Makefile.PL functionality to Build.PL, but requires Module::Build (ERROR if Module::Build is missing; so, use 'configure_requires=>Module::Build') [see PerlDOC: module::build::compat]
#PL_files_href => { %{$config{'PL_files_href'}}, } # Perl scripts to run in the preprocessing phase (usually generate other files from templates [see Module::Build::API docmentation under "PL_files"])
#add_to_cleanup_aref => [ 'vc[1-9][0-9]*.pdb', @{$config{'add_to_cleanup_aref'}} ]
#add_to_realcleanup_aref => [ 'MANIFEST', 'Makefile.PL', 'META.yml', 'SIGNATURE', '.*.pyc', @{$config{'add_to_realcleanup_aref'}} ]
#add_to_ultracleanup_aref => [ ... , @{$config{'add_to_ultracleanup_aref'}} ]
assert_os_aref => [ 'MSWin32' ]
#c_source => 'c'
#:some examples
#script_files_aref => [ map { glob } qw{ scripts/* } ] # specify all files in the ./scripts directory as executable Perl scripts, installed when the module is installed
#:transition help for old-style MakeMaker distributions
#pm_files_href => { map { $_ => $config{lib_path} . q{/} . $_ } ( map { glob } qw{ *.pm } ) } # copy .pm file(s) from the main directory into their logical package location (for an old-style MakeMaker distribution with PM file location in main directory)
#pod_files_href => { map { $_ => $config{lib_path} . q{/} . $_ } ( map { glob } qw{ *.pod } ) } # copy POD file(s) from the main directory into their logical package location (for an old-style MakeMaker distribution with PM file location in main directory)
#xs_files_href => { map { $_ => $config{lib_path} . q{/} . $_ } ( map { glob } qw{ *.xs } ) } # copy .xs file(s) from the main directory into their logical package location (for an old-style MakeMaker distribution with XS file location in main directory)
# Rebuild distmeta for tests with care: avoid rebuilding distmeta on installation tests (rebuilds on other platforms can change minor things such as quote characters or links which invalidates the SIGNATURE)
## do case insensitive file checks
#custom_code_href => { 'ACTION_test' => q[sub ACTION_test{ use File::Glob qw(:glob); my ($self) = @_; $self->depends_on('build'); if ($ENV{TEST_AUTHOR} or $ENV{TEST_ALL}) { if (!bsd_glob('Makefile.PL',GLOB_NOCASE) or !bsd_glob('README',GLOB_NOCASE) or !bsd_glob('META.yml',GLOB_NOCASE)) {$self->depends_on('distmeta')}; if (!bsd_glob('SIGNATURE',GLOB_NOCASE)) {$self->depends_on('sign')};}; return $self->SUPER::ACTION_test;}] }
#custom_ENV_href => { '_BUILD_versioned_file_globs' => join(q{;}, ( $config{module_path}, qw( bin/* ), qw( eg/* ) )), '_TEST_lib_path' => $config{lib_path}, '_BUILD_gpg_conf_path' => '.gpg' }
# CHANGE: '_BUILD_versioned_file_globs' => [ map {recursive_glob} qw{lib/*.pm bin/*.bat bin/*.pl} ]
#:if set within .config, needs to be done *after* module_name (which triggers $config{module_path} setup)
#versioned_file_aref => [ $config{module_path}, qw( bin/* ) ]