Commit | Line | Data |
e861fe16 |
1 | use warnings; |
2 | use strict; |
56215427 |
3 | |
e861fe16 |
4 | use 5.006002; |
5 | use inc::Module::Install 1.06; |
6 | |
7 | perl_version '5.006002'; |
56215427 |
8 | name 'Class-C3'; |
9 | all_from 'lib/Class/C3.pm'; |
10 | |
e861fe16 |
11 | test_requires 'Test::More' => '0.47'; |
56215427 |
12 | |
e861fe16 |
13 | # needed by the PP version only, have them installed |
14 | # regardless of XS availability or perl version |
15 | # (for fatpacking and whatnot) |
16 | requires 'Algorithm::C3' => '0.07'; |
17 | requires 'Scalar::Util' => '0'; |
56215427 |
18 | |
e861fe16 |
19 | # XS not interesting after mro is cored |
20 | requires 'Class::C3::XS' => '0.13' |
21 | if $] < 5.009_005 and can_xs(); |
22 | |
23 | test_requires 'Devel::Hide' => 0 |
24 | if is_smoker(); |
25 | |
26 | if($Module::Install::AUTHOR) { |
27 | # compiler detection, goes into META |
28 | configure_requires 'ExtUtils::MakeMaker' => '6.52'; |
29 | configure_requires 'ExtUtils::CBuilder' => '0.27'; |
56215427 |
30 | |
e861fe16 |
31 | # Rebuild README for maintainers |
32 | system("pod2text lib/Class/C3.pm >README"); |
26626902 |
33 | } |
34 | |
56215427 |
35 | WriteAll; |
e861fe16 |
36 | |
37 | if ($Module::Install::AUTHOR) { |
38 | @{Meta->{values}{requires}} = grep |
39 | { $_->[0] !~ /^ (?: Class::C3::XS | Devel::Hide ) $/x } |
40 | @{Meta->{values}{requires}} |
41 | ; |
42 | print "Regenerating META with XS/test requires excluded\n"; |
43 | Meta->write; |
44 | } |
45 | |
46 | sub is_smoker { |
47 | return ( $ENV{AUTOMATED_TESTING} && ! $ENV{PERL5_CPANM_IS_RUNNING} && ! $ENV{RELEASE_TESTING} ) |
48 | } |