OSDN Git Service

This commit was manufactured by cvs2svn to create tag 'release_2_0'.
[keitairc/keitairc.git] / Makefile.PL
1 # -*-perl-*-
2 # $Id: Makefile.PL,v 1.8 2009-11-06 20:34:44 ishikawa Exp $
3 # $Source: /home/ishikawa/work/keitairc/tmp/keitairc/Makefile.PL,v $
4
5 use 5.8.0;
6 use ExtUtils::MakeMaker;
7
8 my %pms;
9 map {$d = $_; $d =~ s@lib/Keitairc/@\$(INST_LIBDIR)/Keitairc/@; $pms{$_} = $d} glob('lib/Keitairc/*.pm');
10
11 my $data = join(' ', map ({s!^lib/!!g ; $_} glob('lib/templates/*/*.html lib/plugins/[0-9]* lib/public/*.{ico,js,css,txt} lib/public/iui/*.{css,js,png,gif}')));
12
13 my $docs = join(' ', map ({s!^doc/!!g ; $_} glob('doc/*.{gif,psd,png,html,css,jpg} doc/iui/*.txt')));
14
15 WriteMakefile(
16         NAME => 'keitairc',
17         AUTHOR => 'Jun Morimoto <morimoto@mrmt.net>',
18         LICENSE => 'GPL2',
19         PREREQ_PM => {
20                 'POE' => 0,
21                 'POE::Component::Server::TCP' => 0,
22                 'POE::Filter::HTTPD' => 0,
23                 'POE::Component::IRC' => 0,
24                 'URI::Escape' => 0,
25                 'HTTP::Response' => 0,
26                 'HTML::Template' => 0,
27                 'Net::HTTP' => 0,
28                 'Net::SMTP' => 0,
29                 'XML::Simple' => 0,
30                 'Proc::Daemon' => 0,
31                 'AppConfig' => 0,
32                 'Encode' => 0,
33         },
34         EXE_FILES => ['keitairc'],
35         PM => \%pms,
36         PM_FILTER => "sed -e 's!__KEITAIRC_DATA_DIR__!\$(KEITAIRC_DATADIR)!g'",
37         'macro' => {
38                 KEITAIRC_DATADIR => '$(PREFIX)/share/keitairc',
39                 KEITAIRC_DATA => $data,
40                 KEITAIRC_DOCSDIR => '$(PREFIX)/share/doc/keitairc',
41                 KEITAIRC_DOCS => $docs,
42         }
43 );
44
45 sub MY::postamble {
46         my $self = shift;
47         return <<MAKE_FRAG
48 install ::
49         for i in \$(KEITAIRC_DATA) ; do [ -d \$(DESTDIR)/\$(KEITAIRC_DATADIR)/\$\$(dirname \$\$i) ] || mkdir -p \$(DESTDIR)/\$(KEITAIRC_DATADIR)/\$\$(dirname \$\$i) ; install -m 644 lib/\$\$i \$(DESTDIR)/\$(KEITAIRC_DATADIR)/\$\$i ; done
50
51 install_doc ::
52         for i in \$(KEITAIRC_DOCS) ; do [ -d \$(DESTDIR)/\$(KEITAIRC_DOCSDIR)/\$\$(dirname \$\$i) ] || mkdir -p \$(DESTDIR)/\$(KEITAIRC_DOCSDIR)/\$\$(dirname \$\$i) ; install -m 644 doc/\$\$i \$(DESTDIR)/\$(KEITAIRC_DOCSDIR)/\$\$i ; done
53         install -m 644 etc/dot.keitairc \$(DESTDIR)/\$(KEITAIRC_DOCSDIR)/
54 MAKE_FRAG
55 }