Commit | Line | Data |
e1eaa4ae |
1 | use strict; |
2 | use warnings; |
755dd065 |
3 | use inc::Module::Install 1.06; |
e1eaa4ae |
4 | |
5 | name 'Class-Accessor-Grouped'; |
6 | license 'perl'; |
1ffccc5e |
7 | perl_version '5.006'; |
e1eaa4ae |
8 | all_from 'lib/Class/Accessor/Grouped.pm'; |
9 | |
10 | requires 'Carp'; |
6d0e8ff2 |
11 | requires 'Module::Runtime' => '0.012'; |
e1eaa4ae |
12 | requires 'Scalar::Util'; |
df845078 |
13 | requires 'MRO::Compat' if $] < 5.009_005; |
85ccab9a |
14 | |
8e292826 |
15 | my $recommends = { |
16 | 'Sub::Name' => '0.05', |
17 | # when changing CXSA version don't forget to adjust lib/Class/Accessor/Grouped.pm as well |
18 | 'Class::XSAccessor' => '1.15', |
19 | }; |
20 | |
21 | recommends( $_ => $recommends->{$_} ) |
22 | for keys %$recommends; |
23 | |
755dd065 |
24 | if (can_xs or $Module::Install::AUTHOR) { |
8e292826 |
25 | requires 'Sub::Name' => $recommends->{'Sub::Name'}; |
85ccab9a |
26 | |
8e292826 |
27 | requires 'Class::XSAccessor' => $recommends->{'Class::XSAccessor'} |
6d0e8ff2 |
28 | if $] > '5.008'; # CXSA does not work on 5.6 |
85ccab9a |
29 | } |
b9a69571 |
30 | |
8019c4d8 |
31 | test_requires 'Test::More' => '0.94'; |
85ccab9a |
32 | test_requires 'Test::Exception' => '0.31'; |
e1eaa4ae |
33 | |
e1eaa4ae |
34 | clean_files "Class-Accessor-Grouped-* t/var"; |
35 | |
81feed1e |
36 | if (-e 'MANIFEST.SKIP') { |
ba8c183b |
37 | system('pod2text lib/Class/Accessor/Grouped.pm > README'); |
38 | realclean_files 'README'; |
81feed1e |
39 | } |
40 | |
e1eaa4ae |
41 | auto_install; |
d8b59db3 |
42 | |
640fe59a |
43 | resources repository => 'git://git.shadowcat.co.uk/p5sagit/Class-Accessor-Grouped.git'; |
81feed1e |
44 | |
45 | WriteAll; |
85ccab9a |
46 | if ($Module::Install::AUTHOR) { |
47 | @{Meta->{values}{requires}} = grep |
df845078 |
48 | { $_->[0] !~ /^ (?: Class\:\:XSAccessor | Sub\:\:Name | MRO\:\:Compat ) $/x } |
85ccab9a |
49 | @{Meta->{values}{requires}} |
50 | ; |
51 | print "Regenerating META with XS requires excluded\n"; |
52 | Meta->write; |
53 | } |