r1459@llin: dpavlin | 2007-11-02 11:56:39 +0100
[webpac2] / Makefile.PL
1 use strict;
2 use warnings;
3 #use ExtUtils::MakeMaker;
4 use inc::Module::Install;
5
6 WriteMakefile(
7     NAME                => 'WebPAC',
8     AUTHOR              => 'Dobrica Pavlinusic <dpavlin@rot13.org>',
9     VERSION_FROM        => 'lib/WebPAC.pm',
10     ABSTRACT_FROM       => 'lib/WebPAC.pm',
11     PL_FILES            => {},
12     PREREQ_PM => {
13         'Test::More' => 0,
14         'YAML' => 0,
15         'File::Slurp' => 0,
16         'Log::Log4perl' => '1.02',
17         'Cwd' => 0,
18         'Storable' => 0,
19         'DBM::Deep' => 0,
20 #       'Template' => 0,
21         'Time::HiRes' => 0,
22         'File::Temp' => 0,
23         'List::Util' => 0,
24         'Encode' => 0,
25         'LWP' => 0,
26         'File::Path' => 0,
27         'Biblio::Isis' => '0.24',
28         'MARC::Fast' => '0.08',
29 #       'Search::Estraier' => 0.06,
30         'List::Util' => 0,
31         'Spreadsheet::ParseExcel', => 0,
32         'MARC::Record' => '2.0',
33         'Data::Dump' => 0,
34         'MARC::Lint' => '1.43',
35         # we need as_isbn13
36         'Business::ISBN' => '2.02',
37         'Proc::Queue' => 0,
38         'PPI' => 0,
39         'XML::LibXML' => 0,
40         'Pod::Usage' => 0,
41         'Class::Accessor' => 0,
42         'JSON' => 0,
43         'File::Spec' => 0,
44         'Sort::External' => 0,
45     },
46     dist                => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', },
47     clean               => { FILES => 'WebPAC-* pod2html Makefile tags' },
48 );
49
50 auto_install;
51
52 sub MY::postamble {
53         return <<'MAKE_MORE';
54
55 HTML_DIR=pod2html
56 # no need to include --limit here!
57 #profile_perl=./run.pl --only ffps --stats
58 #profile_perl=./run.pl --only ffps/libri --validate conf/validate/ffps-libri
59 #profile_perl=./run.pl --only ffps --validate-delimiters conf/validate/delimiters/ffps
60 profile_perl=./run.pl --only ffps --validate conf/validate/ffps-libri --validate-delimiters conf/validate/delimiters/ffps
61
62
63 html: $(TO_INST_PM)
64         test -e $(HTML_DIR) && rm -Rf "$(HTML_DIR)" || true
65         mkdir "$(HTML_DIR)"
66
67         # add additional html documents
68         test ! -z "`which svn2html.pl`" && svk update && svn2html.pl > $(HTML_DIR)/Changes.html || true
69
70         test -e $(HTML_DIR)/pod.css || ln -s ../pod.css $(HTML_DIR)/
71
72         test ! -z "`which allpod2xhtml.pl`" && allpod2xhtml.pl --frames="WebPAC documentation" --existing --css=pod.css ./lib $(HTML_DIR)
73
74 changelog:
75         svn update && svn -v log > Changes
76
77 tags:
78         ctags *.p[ml] */*.p[ml] */*/*.p[ml]
79
80 sf:
81         svn2cvs.pl file:///home/dpavlin/private/svn/webpac2/trunk/ :ext:dpavlin@webpac.cvs.sourceforge.net:/cvsroot/webpac webpac2
82
83 config_yml:
84         test ! -e conf/config.yml && ln -s /data/Webpacus/config.yml conf/ || true
85         #perl -c conf/normalize/*.pl
86         perl -c conf/normalize/*.pl 2>&1 | grep 'conf/normalize' | grep -v 'OK' | sed -e 's#^.*conf/normalize#conf/normalize#' -e 's#,##' | awk '{ print "+" $3 " " $1 }' | xargs -i echo vi {}
87
88 run: config_yml
89         rm -f log
90         ./run.pl --clean --limit 100
91
92 full: config_yml
93         rm -f log
94         ./run.pl
95
96 profile: all
97         perl -d:DProf $(profile_perl) --limit 250 && dprofpp -O 50 > profile.`perl -e 'my @p = glob("profile.[0-9]*"); print scalar @p + 1'`
98
99 profile2:
100         perl -d:SmallProf $(profile_perl) --limit 100 && sort -k 2nr,2 smallprof.out | vi -R -
101
102 MAKE_MORE
103 }