root/trunk/plagger/Makefile.PL

Revision 504 (checked in by miyagawa, 15 years ago)

use Encode::Detect if it's there. Falls back to Guess

Line 
1 use inc::Module::Install;
2
3 name('Plagger');
4 all_from('lib/Plagger.pm');
5
6 requires('Class::Accessor::Fast');
7 requires('File::Find::Rule');
8 requires('UNIVERSAL::require');
9 requires('Template');
10 requires('Template::Provider::Encoding' => 0.04);
11 requires('YAML' => 0.39);
12 requires('Text::Tags');
13 requires('DateTime' => 0.29);
14 requires('DateTime::Format::Mail');
15 requires('DateTime::Format::W3CDTF');
16 requires('DateTime::Format::Strptime');
17 requires('Digest::MD5');
18 requires('LWP');
19 requires('HTML::Parser' => 3.40);
20 requires('URI::Fetch' => 0.05);
21 requires('Cache::Cache' => 1.04);
22 requires('Module::Pluggable::Fast');
23
24 build_requires(Test::More => 0.42);
25
26 features(
27     'Better Encoding detection' => [
28         -default => 1,
29         recommends('Encode::Detect'),
30     ],
31     'POD Testing' => [
32         -default => 0,
33         recommends('Test::Pod'),
34         recommends('Test::Pod::Coverage'),
35     ],
36     'Subscription::Bloglines' => [
37         -default => 1,
38         recommends('WebService::Bloglines', 0.11),
39         recommends('XML::Liberal', 0.06),
40     ],
41     'Subscription::OPML' => [
42         -default => 1,
43         recommends('XML::OPML'),
44     ],
45     'Aggregator::Simple' => [
46         -default => 1,
47         recommends('XML::Feed', 0.08),
48         recommends('XML::Atom'),
49         recommends('XML::RSS::LibXML', 0.18),
50         recommends('XML::RSS::Liberal'),
51     ],
52     'Publish::Gmail' => [
53         -default => 1,
54         recommends('MIME::Lite'),
55     ],
56     'Aggregator::Xango' => [
57         -default => 0,
58         recommends('POE'),
59         recommends('Xango', 1.04), # protect ourselves from my stupidity
60         recommends('XML::Feed', 0.08),
61         recommends('Cache::FastMmap'),
62         recommends('POE::Component::Client::DNS'),
63         recommends('POE::Component::Client::HTTP'),
64     ],
65     'CustomFeed::Mixi' => [
66         -default => 0,
67         recommends('WWW::Mixi'),
68     ],
69     'Publish::PDF' => [
70         -default => 0,
71         recommends('PDF::FromHTML'),
72     ],
73     'Publish::Delicious' => [
74         -default => 0,
75         recommends('Net::Delicious'),
76     ],
77     'Notify::IRC' => [
78         -default => 0,
79         recommends('POE::Component::IRC'),
80         recommends('POE::Component::IKC::Client'),
81     ],
82     'Filter::URLBL' => [
83         -default => 0,
84         recommends('Net::DNS'),
85     ],
86     'Publish::JavaScript' => [
87         -default => 0,
88         recommends('Template::Plugin::JavaScript'),
89     ],
90     'Subscription::HatenaRSS' => [
91         -default => 0,
92         recommends('WWW::Mechanize'),
93     ],
94     'Filter::HatenaBookmarkUsersCount' => [
95         -default => 0,
96         recommends('XMLRPC::Lite'),
97     ],
98     'Filter::HatenaDiaryKeywordLink' => [
99         -default => 0,
100         recommends('XMLRPC::Lite'),
101     ],
102     'Publish::Feed' => [
103         -default => 1,
104         recommends('XML::Feed', 0.08),
105         recommends('XML::RSS::LibXML', 0.18),
106     ],
107     'Filter::ResolveRelativeLink' => [
108         -default => 0,
109         recommends('HTML::ResolveLink', 0.02),
110     ],
111     'Filter::BulkfeedsTerms' => [
112         -default => 0,
113         recommends('XML::LibXML'),
114     ],
115     'Publish::HatenaBookmark' => [
116         -default => 0,
117         recommends('XML::Atom'),
118     ],
119     'Publish::Playlog' => [
120         -default => 0,
121         recommends('XML::Atom', 0.13),
122     ],
123     'Publish::Planet' => [
124         -default => 0,
125         recommends('HTML::Tidy'),
126         recommends('HTML::Scrubber'),
127     ],
128     'Publish::CSV' => [
129         -default => 0,
130         recommends('Text::CSV_PP'),
131     ],
132     'Filter::HatenaFormat' => [
133         -default => 0,
134         recommends('Text::Hatena'),
135     ],
136     'Publish::MT' => [
137         -default => 0,
138         recommends('Net::MovableType'),
139     ],
140     'CustomFeed::FlickrSearch' => [
141         -default => 0,
142         recommends('XML::LibXML'),
143         recommends('Flickr::API'),
144         recommends('DateTime::Format::Epoch'),
145     ],
146     'Filter::ImageInfo' => [
147         -default => 0,
148         recommends('Image::Info'),
149     ],
150     'Filter::Pipe' => [
151         -default => 0,
152         recommends('IPC::Run'),
153     ],
154     'Filter::RSSLiberalDateTime' => [
155         -default => 0,
156         recommends('Date::Parse'),
157     ],
158     'Filter::Emoticon' => [
159         -default => 0,
160         recommends('Text::Emoticon'),
161     ],
162     'Publish::Maildir' => [
163         -default => 0,
164         recommends('MIME::Lite'),
165     ],
166     'Publish::IMAP' => [
167         -default => 0,
168         recommends('Mail::IMAPClient'),
169     ],
170     'Filter::Profanity' => [
171         -default => 0,
172         recommends('Regexp::Common::profanity_us'),
173     ],
174     'Subscription::DBI' => [
175         -default => 0,
176         recommends('DBIx::Class::Schema'),
177     ],
178     'CustomFeed::SVNLog' => [
179         -default => 0,
180         recommends('SVN::Core'),
181         recommends('SVN::Client'),
182     ],
183     'Filter::TTP' => [
184         -default => 0,
185         recommends('URI::Find'),
186     ],
187     'Filter::Romanize' => [
188         -default => 0,
189         recommends('Text::Kakasi'),
190     ],
191     'Rule::URLBL' => [
192         -default => 0,
193         recommends('Net::DNS'),
194     ],
195 );
196
197 if ($^O eq 'darwin') {
198     features(
199         'Publish::Spotlight' => [
200             -default => 1,
201             recommends('Mac::Glue'),
202         ],
203     );
204     features(
205         'Publish::Speech' => [
206             -default => 0,
207             recommends('Mac::Speech'),
208         ],
209     );
210
211     install_script('bin/spotlight_comment.scpt');
212
213 } elsif ($^O eq 'MSWin32') {
214     features(
215         'Publish::Speech' => [
216             -default => 0,
217             recommends('Win32::OLE'),
218             recommends('Win32::SAPI4'),
219             recommends('Locale::Country'),
220             recommends('Locale::Language'),
221         ],
222         'Notify::Eject' => [
223             -default => 0,
224             recommends('Win32::MCI::Basic'),
225         ],
226     );
227 }
228
229 auto_include;
230 auto_install;
231 install_script('plagger');
232 install_script('bin/plagger-ircbot');
233 WriteAll;
Note: See TracBrowser for help on using the browser.