1package main;
2
3use 5.006001;
4
5use strict;
6use warnings;
7use ExtUtils::MakeMaker;
8
9my %parms = (
10    NAME                => 'File::Next',
11    AUTHOR              => 'Andy Lester <andy@petdance.com>', ## no critic (RequireInterpolationOfMetachars)
12    VERSION_FROM        => 'Next.pm',
13    ABSTRACT_FROM       => 'Next.pm',
14    PL_FILES            => {},
15    LICENSE             => 'artistic_2',
16    PREREQ_PM => {
17        'Test::More' => 0.88,
18        'File::Copy' => 0,
19        'File::Spec' => 0,
20        'File::Temp' => 0.22,
21    },
22    dist                => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', },
23    clean               => { FILES => 'File-Next-*' },
24);
25
26if ( $ExtUtils::MakeMaker::VERSION =~ /^\d\.\d\d$/ and $ExtUtils::MakeMaker::VERSION > 6.30 ) {
27    $parms{LICENSE} = 'artistic_2';
28}
29
30if ( $ExtUtils::MakeMaker::VERSION ge '6.46' ) {
31    $parms{META_MERGE} = {
32        resources => {
33            bugtracker  => 'http://github.com/petdance/file-next/issues',
34            repository  => 'http://github.com/petdance/file-next/tree/master',
35            license     => 'http://dev.perl.org/licenses/',
36        }
37    };
38}
39
40WriteMakefile( %parms );
41
42sub MY::postamble {
43return <<'MAKE_FRAG';
44.PHONY: tags critic
45
46tags:
47	ctags -f tags --recurse --totals \
48		--exclude=blib \
49		--exclude=.git \
50		--exclude=.svn \
51		--exclude='*~' \
52		--languages=Perl --langmap=Perl:+.t \
53
54critic:
55	perlcritic -profile perlcriticrc -1 -quiet *.pm t/*.t
56
57TARGET_DIRS=~/parrot ~/perl-critic ~/bin
58
59prof: all
60	perl -d:DProf -Mblib ./stress $(TARGET_DIRS) > /dev/null
61	dprofpp -R
62
63nytprof: all
64	perl -d:NYTProf -Mblib ./stress $(TARGET_DIRS) > /dev/null
65	nytprofhtml
66
67MAKE_FRAG
68}
69
701;
71