1 |
use ExtUtils::MakeMaker; |
2 |
|
3 |
print <<EOF; |
4 |
|
5 |
*** microsoft compatibility forced us to only support manual configuration |
6 |
*** by editing Makefile.PL. complain to microsoft. |
7 |
|
8 |
*** opengl 1.2 is required to run this client |
9 |
|
10 |
*** HINT: BerkeleyDB must be linked against version 4.3 or higher of libdb |
11 |
|
12 |
EOF |
13 |
|
14 |
if ($^O =~ /win32/i or $^O =~ /mswin/) { |
15 |
warn "do manual configuration, please\n"; |
16 |
$INC = "-I/gtk/include -I/gtk/include/pango-1.0 -I/gtk/include/glib-2.0 -I/gtk/lib/glib-2.0/include/ -I/gtk/include/freetype2"; |
17 |
$LIBS = "-L/gtk/lib -lSDL -lSDL_image -lSDL_mixer -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -lfreetype -lfontconfig -lz -lopengl32", |
18 |
} else { |
19 |
$INC = join " ", qx<sdl-config --cflags>, qx<pkg-config pangoft2 --cflags>; |
20 |
$LIBS = join " ", qx<sdl-config --libs>, "-lSDL_image -lSDL_mixer", qx<pkg-config pangoft2 --libs>; |
21 |
|
22 |
$INC =~ s/\n/ /g for $INC, $LIBS; |
23 |
} |
24 |
|
25 |
WriteMakefile( |
26 |
dist => { |
27 |
PREOP => 'pod2text CFClient.pm | tee README >$(DISTVNAME)/README; chmod -R u=rwX,go=rX . ;', |
28 |
COMPRESS => 'gzip -9v', |
29 |
SUFFIX => '.gz', |
30 |
}, |
31 |
NAME => "CFClient", |
32 |
INC => $INC, |
33 |
LIBS => [$LIBS], |
34 |
EXE_FILES => [qw(bin/pclient)], |
35 |
VERSION_FROM => "CFClient.pm", |
36 |
PREREQ_PM => { |
37 |
BerkeleyDB => 0.27, |
38 |
SDL => 2.1, |
39 |
Crossfire => 0.1, |
40 |
Time::HiRes => 0, |
41 |
Event => 1.01, |
42 |
AnyEvent => 0, |
43 |
Compress::LZF => 1.6, |
44 |
}, |
45 |
PM => { |
46 |
'CFClient.pm' => '$(INST_LIBDIR)/CFClient.pm', |
47 |
'CFClient/UI.pm' => '$(INST_LIBDIR)/CFClient/UI.pm', |
48 |
(map +($_ => "\$(INST_LIBDIR)/CFClient/$_"), |
49 |
<resources/*.ttf>, |
50 |
<resources/*.png>, |
51 |
<resources/sounds/*.wav>, |
52 |
<resources/sounds/config>, |
53 |
<resources/music/*.ogg>, |
54 |
), |
55 |
} |
56 |
); |