1 | # |
1 | # |
2 | # Makefile for crossfire 0.95.0 and beyond |
2 | # This file is part of Deliantra, the Roguelike Realtime MMORPG. |
|
|
3 | # |
|
|
4 | # Copyright (©) 2006,2007 Marc Alexander Lehmann / Robin Redeker / the Deliantra team |
|
|
5 | # Copyright (©) 1992,2007 Frank Tore Johansen |
|
|
6 | # Copyright (©) 2001,2007 Mark Wedel |
|
|
7 | # Copyright (©) 2007 Marc Alexander Lehmann |
|
|
8 | # |
|
|
9 | # Deliantra is free software: you can redistribute it and/or modify |
|
|
10 | # it under the terms of the GNU General Public License as published by |
|
|
11 | # the Free Software Foundation, either version 3 of the License, or |
|
|
12 | # (at your option) any later version. |
|
|
13 | # |
|
|
14 | # This program is distributed in the hope that it will be useful, |
|
|
15 | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
|
16 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
|
17 | # GNU General Public License for more details. |
|
|
18 | # |
|
|
19 | # You should have received a copy of the GNU General Public License |
|
|
20 | # along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
|
21 | # |
|
|
22 | # The authors can be reached via e-mail to <support@deliantra.net> |
3 | # |
23 | # |
4 | # This file will eventually be replaced by a configure script. But for |
|
|
5 | # now, this simple makefile should do the job. |
|
|
6 | # |
|
|
7 | # Copyright (C) 1992 Frank Tore Johansen |
|
|
8 | # Copyright (C) 2001 Mark Wedel |
|
|
9 | # |
|
|
10 | # This program is free software; you can redistribute it and/or modify |
|
|
11 | # it under the terms of the GNU General Public License as published by |
|
|
12 | # the Free Software Foundation; either version 2 of the License, or |
|
|
13 | # (at your option) any later version. |
|
|
14 | # |
|
|
15 | # This program is distributed in the hope that it will be useful, |
|
|
16 | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
|
17 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
|
18 | # GNU General Public License for more details. |
|
|
19 | # |
|
|
20 | # You should have received a copy of the GNU General Public License |
|
|
21 | # along with this program; if not, write to the Free Software |
|
|
22 | # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
|
|
23 | # |
|
|
24 | # The author can be reached via e-mail to mwedel@scruz.net |
|
|
25 | |
24 | |
|
|
25 | bin_PROGRAMS = deliantra-server |
26 | |
26 | |
27 | bin_PROGRAMS = crossfire |
27 | MAINTAINERCLEANFILES = Makefile.in |
28 | |
28 | |
29 | crossfire_SOURCES = \ |
29 | deliantra_server_SOURCES = \ |
30 | alchemy.c\ |
30 | alchemy.C\ |
31 | apply.c\ |
31 | apply.C\ |
32 | attack.c\ |
32 | attack.C\ |
33 | ban.c\ |
|
|
34 | build_map.c\ |
33 | build_map.C\ |
35 | c_chat.c\ |
|
|
36 | c_misc.c\ |
34 | c_misc.C\ |
37 | c_move.c\ |
35 | c_move.C\ |
38 | c_new.c\ |
36 | c_new.C\ |
39 | c_object.c\ |
37 | c_object.C\ |
40 | c_party.c\ |
38 | c_party.C\ |
41 | c_range.c\ |
39 | c_range.C\ |
42 | c_wiz.c\ |
40 | c_wiz.C\ |
43 | commands.c\ |
41 | commands.C\ |
44 | daemon.c\ |
|
|
45 | disease.c\ |
42 | disease.C\ |
46 | egoitem.c \ |
43 | egoitem.C \ |
47 | hiscore.c\ |
44 | hiscore.C\ |
48 | gods.c\ |
45 | gods.C\ |
49 | init.c\ |
46 | init.C\ |
50 | login.c\ |
|
|
51 | main.c\ |
47 | main.C\ |
52 | monster.c\ |
48 | monster.C\ |
53 | move.c\ |
49 | move.C\ |
54 | pets.c\ |
50 | pets.C\ |
55 | player.c\ |
51 | player.C\ |
56 | plugins.c\ |
|
|
57 | resurrection.c\ |
52 | resurrection.C\ |
58 | rune.c\ |
53 | rune.C\ |
59 | shop.c\ |
54 | shop.C\ |
60 | skills.c\ |
55 | skills.C\ |
61 | skill_util.c\ |
56 | skill_util.C\ |
62 | spell_attack.c\ |
57 | spell_attack.C\ |
63 | spell_effect.c\ |
58 | spell_effect.C\ |
64 | spell_util.c\ |
59 | spell_util.C\ |
65 | swamp.c\ |
60 | swamp.C\ |
66 | swap.c\ |
61 | swap.C\ |
67 | time.c\ |
62 | time.C\ |
68 | timers.c\ |
|
|
69 | weather.c |
63 | weather.C\ |
|
|
64 | dynbuf.C\ |
|
|
65 | freezethaw.C\ |
|
|
66 | cfperl.xs |
|
|
67 | |
|
|
68 | SUFFIXES = .xs |
|
|
69 | |
|
|
70 | EXTRA_DIST = typemap genacc |
|
|
71 | |
|
|
72 | cfperl.C: cfperl.xs genacc typemap |
|
|
73 | cfperl.C: ../include/object.h ../include/client.h ../include/player.h |
|
|
74 | cfperl.C: ../include/map.h ../include/living.h ../include/global.h |
|
|
75 | cfperl.C: ../include/region.h ../include/cfperl.h ../random_maps/random_map.h |
|
|
76 | |
|
|
77 | .xs.C: typemap |
|
|
78 | $(PERL) -MExtUtils::Embed -e xsinit -- -std cf |
|
|
79 | PERL="$(PERL)" srcdir="$(srcdir)" $(PERL) @PERLPRIVLIBEXP@/ExtUtils/xsubpp -C++ -csuffix .C -typemap @PERLPRIVLIBEXP@/ExtUtils/typemap -typemap $(srcdir)/typemap -prototypes $(srcdir)/cfperl.xs >$@ |
70 | |
80 | |
71 | AM_CPPFLAGS = -I$(top_srcdir)/include -DDATADIR=\"$(pkgdatadir)\" -DCONFDIR=\"$(pkgconfdir)\" \ |
81 | AM_CPPFLAGS = -I$(top_srcdir)/include -DDATADIR=\"$(pkgdatadir)\" -DCONFDIR=\"$(pkgconfdir)\" \ |
72 | -DLIBDIR=\"$(pkglibdir)\" -DLOCALDIR=\"$(pkgstatedir)\" \ |
82 | -DLIBDIR=\"$(pkglibdir)\" -DLOCALDIR=\"$(pkgstatedir)\" \ |
73 | -DPLUGIN_SUFFIX=\".so\" |
83 | -DPLUGIN_SUFFIX=\".so\" |
74 | |
84 | |
75 | if HAVE_LIBDL |
|
|
76 | LIBDL=-ldl |
|
|
77 | crossfire_LDFLAGS=-export-dynamic |
|
|
78 | else |
|
|
79 | LIBDL= |
85 | LIBDL= |
80 | crossfire_LDFLAGS= |
86 | deliantra_server_LDFLAGS= |
81 | endif |
|
|
82 | crossfire_LDADD = ../common/libcross.a ../random_maps/librandom_map.a \ |
87 | deliantra_server_LDADD = ../common/libcross.a ../random_maps/librandom_map.a \ |
83 | ../socket/libsocket.a $(LIBDL) |
88 | ../socket/libsocket.a $(LIBDL) $(PERLLIB) |
84 | |
89 | |
85 | ../common/libcross.a: |
90 | ../common/libcross.a: |
86 | ( cd ../common ; make libcross.a ) |
91 | ( cd ../common ; $(MAKE) libcross.a ) |
87 | |
92 | |
88 | ../random_maps/librandom_map.a: |
93 | ../random_maps/librandom_map.a: |
89 | ( cd ../random_maps ; make librandom_map.a ) |
94 | ( cd ../random_maps ; $(MAKE) librandom_map.a ) |
90 | |
95 | |
91 | ../socket/libsocket.a: |
96 | ../socket/libsocket.a: |
92 | ( cd ../socket ; make libsocket.a ) |
97 | ( cd ../socket ; $(MAKE) libsocket.a ) |
93 | |
98 | |
94 | # Check if everything is installed as it should |
|
|
95 | installcheck-local: |
|
|
96 | $(bindir)/crossfire -o |
|
|
97 | |
99 | |
98 | proto: |
|
|
99 | cproto -D__CEXTRACT__ -o ../include/sproto.h $(CPPFLAGS) $(AM_CPPFLAGS) \ |
|
|
100 | `echo $(SOURCES) " " | $(AWK) -v RS=" " '/.c$$/ { print }'` |
|
|
101 | chmod 644 ../include/sproto.h |
|
|