line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
package inc::Module::Build::Functions::DSL;
|
2
|
|
|
|
|
|
|
|
3
|
|
|
|
|
|
|
#
|
4
|
|
|
|
|
|
|
|
5
|
|
|
|
|
|
|
# This module ONLY loads if the user has manually installed their own
|
6
|
|
|
|
|
|
|
# installation of Module::Install, and are some form of MI author.
|
7
|
|
|
|
|
|
|
#
|
8
|
|
|
|
|
|
|
# It runs from the installed location, and is never bundled
|
9
|
|
|
|
|
|
|
# along with the other bundled modules.
|
10
|
|
|
|
|
|
|
#
|
11
|
|
|
|
|
|
|
# So because the version of this differs from the version that will
|
12
|
|
|
|
|
|
|
# be bundled almost every time, it doesn't have it's own version and
|
13
|
|
|
|
|
|
|
# isn't part of the synchronisation-checking.
|
14
|
|
|
|
|
|
|
#
|
15
|
|
|
|
|
|
|
# The load order for Module::Build::Functions is a bit magic.
|
16
|
|
|
|
|
|
|
# It goes something like this...
|
17
|
|
|
|
|
|
|
#
|
18
|
|
|
|
|
|
|
# IF ( host has Module::Build::Functions installed, creating author mode ) {
|
19
|
|
|
|
|
|
|
# 1. Build.PL calls "use inc::Module::Build::Functions"
|
20
|
|
|
|
|
|
|
# 2. $INC{inc/Module/Install.pm} set to installed version of inc::Module::Build::Functions
|
21
|
|
|
|
|
|
|
# 3. The installed version of inc::Module::Build::Functions loads
|
22
|
|
|
|
|
|
|
# 4. inc::Module::Build::Functions calls "require Module::Build::Functions"
|
23
|
|
|
|
|
|
|
# 5. The ./inc/ version of Module::Build::Functions loads
|
24
|
|
|
|
|
|
|
# } ELSE {
|
25
|
|
|
|
|
|
|
# 1. Build.PL calls "use inc::Module::Build::Functions"
|
26
|
|
|
|
|
|
|
# 2. $INC{inc/Module/Install.pm} set to ./inc/ version of Module::Build::Functions
|
27
|
|
|
|
|
|
|
# 3. The ./inc/ version of Module::Build::Functions loads
|
28
|
|
|
|
|
|
|
# }
|
29
|
|
|
|
|
|
|
|
30
|
|
|
|
|
|
|
|
31
|
|
|
|
|
|
|
require inc::Module::Build::Functions;
|
32
|
|
|
|
|
|
|
require Module::Build::Functions::DSL;
|
33
|
|
|
|
|
|
|
|
34
|
|
|
|
|
|
|
BEGIN {
|
35
|
1
|
|
|
1
|
|
814
|
$VERSION = '0.04';
|
36
|
|
|
|
|
|
|
}
|
37
|
|
|
|
|
|
|
|
38
|
|
|
|
|
|
|
1;
|
39
|
|
|
|
|
|
|
|
40
|
|
|
|
|
|
|
#
|
41
|
|
|
|
|
|
|
|
42
|
|
|
|
|
|
|
=pod
|
43
|
|
|
|
|
|
|
|
44
|
|
|
|
|
|
|
=head1 NAME
|
45
|
|
|
|
|
|
|
|
46
|
|
|
|
|
|
|
inc::Module::Build::Functions::DSL - Domain Specific Language for Module::Install
|
47
|
|
|
|
|
|
|
|
48
|
|
|
|
|
|
|
=head1 SYNOPSIS
|
49
|
|
|
|
|
|
|
|
50
|
|
|
|
|
|
|
use inc::Module::Build::Functions::DSL 0.80;
|
51
|
|
|
|
|
|
|
|
52
|
|
|
|
|
|
|
all_from lib/ADAMK/Repository.pm
|
53
|
|
|
|
|
|
|
requires File::Spec 3.29
|
54
|
|
|
|
|
|
|
requires File::pushd 1.00
|
55
|
|
|
|
|
|
|
requires File::Find::Rule 0.30
|
56
|
|
|
|
|
|
|
requires File::Find::Rule::VCS 1.05
|
57
|
|
|
|
|
|
|
requires File::Flat 0
|
58
|
|
|
|
|
|
|
requires File::Remove 1.42
|
59
|
|
|
|
|
|
|
requires IPC::Run3 0.034
|
60
|
|
|
|
|
|
|
requires Object::Tiny 1.06
|
61
|
|
|
|
|
|
|
requires Params::Util 0.35
|
62
|
|
|
|
|
|
|
requires CPAN::Version 5.5
|
63
|
|
|
|
|
|
|
test_requires Test::More 0.86
|
64
|
|
|
|
|
|
|
test_requires Test::Script 1.03
|
65
|
|
|
|
|
|
|
install_script adamk
|
66
|
|
|
|
|
|
|
|
67
|
|
|
|
|
|
|
requires_external_bin svn
|
68
|
|
|
|
|
|
|
|
69
|
|
|
|
|
|
|
=head1 DESCRIPTION
|
70
|
|
|
|
|
|
|
|
71
|
|
|
|
|
|
|
One of the primary design goals of L is to simplify
|
72
|
|
|
|
|
|
|
the creation of F scripts.
|
73
|
|
|
|
|
|
|
|
74
|
|
|
|
|
|
|
Part of this involves the gradual reduction of any and all superflous
|
75
|
|
|
|
|
|
|
characters, with the ultimate goal of requiring no non-critical
|
76
|
|
|
|
|
|
|
information in the file.
|
77
|
|
|
|
|
|
|
|
78
|
|
|
|
|
|
|
L is a simple B based
|
79
|
|
|
|
|
|
|
on the already-lightweight L command syntax.
|
80
|
|
|
|
|
|
|
|
81
|
|
|
|
|
|
|
The DSL takes one command on each line, and then wraps the command
|
82
|
|
|
|
|
|
|
(and its parameters) with the normal quotes and semi-colons etc to
|
83
|
|
|
|
|
|
|
turn it into Perl code.
|
84
|
|
|
|
|
|
|
|
85
|
|
|
|
|
|
|
=head1 SUPPORT
|
86
|
|
|
|
|
|
|
|
87
|
|
|
|
|
|
|
Bugs should be reported via the CPAN bug tracker at
|
88
|
|
|
|
|
|
|
|
89
|
|
|
|
|
|
|
L
|
90
|
|
|
|
|
|
|
|
91
|
|
|
|
|
|
|
For other issues contact the author.
|
92
|
|
|
|
|
|
|
|
93
|
|
|
|
|
|
|
=head1 AUTHORS
|
94
|
|
|
|
|
|
|
|
95
|
|
|
|
|
|
|
Adam Kennedy Eadamk@cpan.orgE
|
96
|
|
|
|
|
|
|
|
97
|
|
|
|
|
|
|
=head1 COPYRIGHT
|
98
|
|
|
|
|
|
|
|
99
|
|
|
|
|
|
|
Copyright 2008 - 2009 Adam Kennedy.
|
100
|
|
|
|
|
|
|
|
101
|
|
|
|
|
|
|
This program is free software; you can redistribute it and/or
|
102
|
|
|
|
|
|
|
modify it under the same terms as Perl itself.
|
103
|
|
|
|
|
|
|
|
104
|
|
|
|
|
|
|
=cut
|