Merge pull request #23 from dsteinbrunner/patch-2
[perlbal.git] / Makefile.PL
blobd7bafb3a44b82fa3d07a22a00e36a6b0e9c7f0be
1 #!/usr/bin/perl
3 # Perl Makefile for Perlbal
4 # $Id$
6 # Invoke with 'perl Makefile.PL'
8 # See ExtUtils::MakeMaker (3) for more information on how to influence
9 # the contents of the Makefile that is written
12 use ExtUtils::MakeMaker;
14 WriteMakefile(
15 NAME => 'Perlbal',
16 VERSION_FROM => 'lib/Perlbal.pm',
17 AUTHOR => 'Brad Fitzpatrick <brad@danga.com>',
18 ABSTRACT_FROM => 'perlbal',
21 exists($ENV{DANGABUILD_MODULESONLY}) ?
22 () :
23 (EXE_FILES => [ 'perlbal' ]),
26 PREREQ_PM => {
27 # Required modules for base perlbal to operate
28 'base' => 0,
29 'fields' => 0,
30 'lib' => 0,
31 'strict' => 0,
32 'vars' => 0,
33 'warnings' => 0,
34 'Carp' => 0,
35 'constant' => 0,
36 'Danga::Socket' => '1.44',
37 'Errno' => 0,
38 'Fcntl' => 0,
39 'File::Path' => 0,
40 'Getopt::Long' => 0,
41 'Hash::Util' => 0,
42 'HTTP::Date' => 0,
43 'IO::File' => 0,
44 'IO::Handle' => 0,
45 'Scalar::Util' => 0,
46 'Socket' => 0,
47 'Sys::Syscall' => 0,
48 'Time::HiRes' => 0,
50 # Recommended modules
51 'BSD::Resource' => 0,
52 #'IO::AIO' => 1.6,
53 #'Perlbal::XS::HTTPHeaders' => '0.20',
55 # Optional modules
56 #'Devel::Cycle' => 0, # Debugging
57 #'Devel::Gladiator' => 0, # Debugging
58 #'Devel::Peek' => 0, # Debugging
59 #'Danga::Socket' => '1.61', # IPv6
60 #'IO::Socket::INET6' => 0, # IPv6
61 #'IO::Socket::SSL' => '0.98', # SSL
62 #'Sys::Syslog' => 0, # Syslogging
63 #'Net::Netmask' => 0, # trusted_upstream_proxies
65 # Required for testing (building)
66 'Exporter' => 0,
67 'File::Temp' => 0,
68 'FindBin' => 0,
69 'HTTP::Request' => 0,
70 'HTTP::Response' => 0,
71 'IO::Select' => 0,
72 'IO::Socket::INET' => 0,
73 'LWP::UserAgent' => 0,
74 'Test::More' => 0.94, # 0.94 adds support for subtests
76 # Optional for testing (building)
77 #'Benchmark' => 0, # Benchmarking optimizations
79 # Required for perlbal-check (contrib)
80 #'Data::Dumper' => 0,
82 # Plugin deps
83 # (AccessControl) optional: Net::Netmask
84 # (AtomStream) required: URI
85 # (Cgilike) required: Symbol
86 # (Cgilike) required: URI
87 # (Eval) required: Data::Dumper
88 # (LazyCDN) required: IO::Socket::INET
89 # (Palimg) optional (PNG alterations): String::CRC32
90 # (Throttle) required: Danga::Socket 1.59
91 # (Throttle) required: List::Util
92 # (Throttle) required: Net::CIDR::Lite
93 # (Throttle) optional: Cache::Memcached::Async
94 # (Throttle) optional: Perlbal::Plugin::Syslogger
98 exists($ENV{DANGABUILD_DAEMONONLY}) ?
99 (PM => {}, PMLIBDIRS => []):
103 META_MERGE => {
104 resources => {
105 repository => 'https://github.com/perlbal/Perlbal',
111 sub MY::postamble {
112 my $tab = chr(9);
113 return <<MAKE_FRAG;
114 docs :: docs/service-parameters.txt
116 docs/service-parameters.txt: lib/Perlbal/Service.pm
117 ${tab}devtools/gendocs.pl service-parameters
119 MAKE_FRAG