1 | require 5.008; |
1 | require 5.008; |
2 | |
2 | |
3 | use Config; |
3 | use Config; |
4 | |
4 | |
5 | require ExtUtils::MakeMaker; |
5 | use ExtUtils::MakeMaker; |
6 | import ExtUtils::MakeMaker; |
6 | |
|
|
7 | if (eval { require Gtk2 }) { |
|
|
8 | Gtk2->CHECK_VERSION (2, 4, 0) |
|
|
9 | or die "gtk+ version 2.4.0 or higher is required to run this program\n"; |
|
|
10 | } |
7 | |
11 | |
8 | sub MY::postamble { |
12 | sub MY::postamble { |
9 | my $self=shift; |
13 | my $self=shift; |
10 | <<EOF |
14 | <<EOF |
11 | |
15 | |
12 | .PHONY: doc |
16 | .PHONY: doc |
13 | |
17 | |
14 | all :: doc |
|
|
15 | |
|
|
16 | rundemo: all |
|
|
17 | perl rundemo |
|
|
18 | |
|
|
19 | doc: |
18 | doc: |
20 | cd doc && make |
19 | cd doc && make |
21 | |
20 | |
|
|
21 | run: all doc |
|
|
22 | \$(PERL) -Mblib -MCarp=verbose bin/kgsueme |
|
|
23 | |
22 | trace: doc |
24 | trace: all doc |
23 | perl -Mlib=lib bin/tracer |
25 | \$(PERL) -Mblib -MCarp=verbose bin/kgstrace |
24 | |
26 | |
25 | EOF |
27 | EOF |
26 | } |
28 | } |
27 | |
29 | |
28 | WriteMakefile( |
30 | WriteMakefile( |
29 | dist => { |
31 | dist => { |
30 | PREOP => 'make setver && chmod -R u=rwX,go=rX . ;', |
32 | PREOP => 'chmod -R u=rwX,go=rX . ;', |
31 | COMPRESS => 'gzip -9v', |
33 | COMPRESS => 'gzip -9v', |
32 | SUFFIX => '.gz', |
34 | SUFFIX => '.gz', |
33 | }, |
35 | }, |
34 | PREREQ_PM => { |
36 | PREREQ_PM => { |
|
|
37 | Convert::Scalar => 0, |
35 | Gtk2 => 0.90, |
38 | Gtk2 => 1.043, |
36 | Audio::Data => 0, |
39 | Audio::Data => 0, |
37 | Audio::Play => 0, |
40 | Audio::Play => 0, |
|
|
41 | Time::HiRes => 0, |
|
|
42 | Compress::Zlib => 0, |
38 | }, |
43 | }, |
39 | DIR => [], |
44 | DIR => [], |
40 | NAME => 'KGS', |
45 | NAME => 'KGS', |
41 | linkext => { LINKTYPE => '' }, |
46 | linkext => { LINKTYPE => '' }, |
42 | VERSION_FROM => 'lib/KGS/Protocol.pm', |
47 | VERSION_FROM => 'lib/KGS/Protocol.pm', |
43 | EXE_FILES => [qw(bin/kgsueme bin/kgstrace)], |
48 | EXE_FILES => [qw(bin/kgsueme bin/kgstrace bin/gtp-controller bin/igsueme)], # not ready: kgs-igs |
44 | PM => { |
49 | PM => { |
45 | 'lib/Gtk2/GoBoard.pm' => '$(INST_LIBDIR)/Gtk2/GoBoard.pm', |
50 | 'lib/Gtk2/GoBoard.pm' => '$(INST_LIBDIR)/Gtk2/GoBoard.pm', |
|
|
51 | 'lib/Games/Go/SimpleBoard.pm' => '$(INST_LIBDIR)/Games/Go/SimpleBoard.pm', |
|
|
52 | |
|
|
53 | 'lib/Net/IGS.pm' => '$(INST_LIBDIR)/Net/IGS.pm', |
46 | |
54 | |
47 | 'images/woodgrain-01.jpg' => '$(INST_LIBDIR)/Gtk2/GoBoard/images/woodgrain-01.jpg', |
55 | 'images/woodgrain-01.jpg' => '$(INST_LIBDIR)/Gtk2/GoBoard/images/woodgrain-01.jpg', |
48 | 'images/b-01.png' => '$(INST_LIBDIR)/Gtk2/GoBoard/images/b-01.png', |
56 | 'images/b-01.png' => '$(INST_LIBDIR)/Gtk2/GoBoard/images/b-01.png', |
49 | 'images/circle-b.png' => '$(INST_LIBDIR)/Gtk2/GoBoard/images/circle-b.png', |
57 | 'images/circle-b.png' => '$(INST_LIBDIR)/Gtk2/GoBoard/images/circle-b.png', |
50 | 'images/circle-w.png' => '$(INST_LIBDIR)/Gtk2/GoBoard/images/circle-w.png', |
58 | 'images/circle-w.png' => '$(INST_LIBDIR)/Gtk2/GoBoard/images/circle-w.png', |
… | |
… | |
81 | 'sounds/connect' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/connect', |
89 | 'sounds/connect' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/connect', |
82 | 'sounds/gamestart' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/gamestart', |
90 | 'sounds/gamestart' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/gamestart', |
83 | 'sounds/move' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/move', |
91 | 'sounds/move' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/move', |
84 | 'sounds/pass' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/pass', |
92 | 'sounds/pass' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/pass', |
85 | 'sounds/resign' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/resign', |
93 | 'sounds/resign' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/resign', |
|
|
94 | 'sounds/outoftime' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/outoftime', |
86 | 'sounds/ring' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/ring', |
95 | 'sounds/ring' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/ring', |
87 | 'sounds/user_unknown' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/user_unknown', |
96 | 'sounds/user_unknown' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/user_unknown', |
88 | 'sounds/warning' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/warning', |
97 | 'sounds/warning' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/warning', |
|
|
98 | 'sounds/info' => '$(INST_LIBDIR)/KGS/kgsueme/sounds/info', |
89 | |
99 | |
90 | 'kgsueme/app.pl' => '$(INST_LIBDIR)/KGS/kgsueme/app.pl', |
100 | 'kgsueme/app.pl' => '$(INST_LIBDIR)/KGS/kgsueme/app.pl', |
91 | 'kgsueme/challenge.pl' => '$(INST_LIBDIR)/KGS/kgsueme/challenge.pl', |
|
|
92 | 'kgsueme/chat.pl' => '$(INST_LIBDIR)/KGS/kgsueme/chat.pl', |
101 | 'kgsueme/chat.pl' => '$(INST_LIBDIR)/KGS/kgsueme/chat.pl', |
93 | 'kgsueme/game.pl' => '$(INST_LIBDIR)/KGS/kgsueme/game.pl', |
102 | 'kgsueme/game.pl' => '$(INST_LIBDIR)/KGS/kgsueme/game.pl', |
94 | 'kgsueme/gamelist.pl' => '$(INST_LIBDIR)/KGS/kgsueme/gamelist.pl', |
103 | 'kgsueme/gamelist.pl' => '$(INST_LIBDIR)/KGS/kgsueme/gamelist.pl', |
95 | 'kgsueme/gtk.pl' => '$(INST_LIBDIR)/KGS/kgsueme/gtk.pl', |
104 | 'kgsueme/gtk.pl' => '$(INST_LIBDIR)/KGS/kgsueme/gtk.pl', |
96 | 'kgsueme/image.pl' => '$(INST_LIBDIR)/KGS/kgsueme/image.pl', |
|
|
97 | 'kgsueme/room.pl' => '$(INST_LIBDIR)/KGS/kgsueme/room.pl', |
105 | 'kgsueme/room.pl' => '$(INST_LIBDIR)/KGS/kgsueme/room.pl', |
98 | 'kgsueme/roomlist.pl' => '$(INST_LIBDIR)/KGS/kgsueme/roomlist.pl', |
106 | 'kgsueme/roomlist.pl' => '$(INST_LIBDIR)/KGS/kgsueme/roomlist.pl', |
99 | 'kgsueme/sound.pl' => '$(INST_LIBDIR)/KGS/kgsueme/sound.pl', |
107 | 'kgsueme/sound.pl' => '$(INST_LIBDIR)/KGS/kgsueme/sound.pl', |
100 | 'kgsueme/user.pl' => '$(INST_LIBDIR)/KGS/kgsueme/user.pl', |
108 | 'kgsueme/user.pl' => '$(INST_LIBDIR)/KGS/kgsueme/user.pl', |
101 | 'kgsueme/userlist.pl' => '$(INST_LIBDIR)/KGS/kgsueme/userlist.pl', |
109 | 'kgsueme/userlist.pl' => '$(INST_LIBDIR)/KGS/kgsueme/userlist.pl', |