We don't always need Devel::Hide (RT#81106)
[gitmo/Class-C3.git] / Makefile.PL
CommitLineData
e861fe16 1use warnings;
2use strict;
56215427 3
e861fe16 4use 5.006002;
5use inc::Module::Install 1.06;
6
7perl_version '5.006002';
56215427 8name 'Class-C3';
9all_from 'lib/Class/C3.pm';
10
e861fe16 11test_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)
16requires 'Algorithm::C3' => '0.07';
17requires 'Scalar::Util' => '0';
56215427 18
38a897e9 19if ($] < 5.009_005) {
20 # XS not interesting after mro is cored
21 requires 'Class::C3::XS' => '0.13' if can_xs();
22 test_requires 'Devel::Hide' => 0 if is_smoker();
23}
e861fe16 24
25if($Module::Install::AUTHOR) {
26 # compiler detection, goes into META
27 configure_requires 'ExtUtils::MakeMaker' => '6.52';
28 configure_requires 'ExtUtils::CBuilder' => '0.27';
56215427 29
e861fe16 30 # Rebuild README for maintainers
31 system("pod2text lib/Class/C3.pm >README");
26626902 32}
33
56215427 34WriteAll;
e861fe16 35
36if ($Module::Install::AUTHOR) {
37 @{Meta->{values}{requires}} = grep
38 { $_->[0] !~ /^ (?: Class::C3::XS | Devel::Hide ) $/x }
39 @{Meta->{values}{requires}}
40 ;
41 print "Regenerating META with XS/test requires excluded\n";
42 Meta->write;
43}
44
45sub is_smoker {
46 return ( $ENV{AUTOMATED_TESTING} && ! $ENV{PERL5_CPANM_IS_RUNNING} && ! $ENV{RELEASE_TESTING} )
47}