1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
-
+
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
-
-
+
-
-
-
+
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
+
+
-
-
-
-
-
-
+
-
-
-
+
+
+
-
-
-
-
-
-
-
-
-
-
-
|
project('Cube', ['c', 'objcpp'],
meson_version: '1.5.0')
meson_version: '>=1.5.0')
add_global_arguments(
[
'-fobjc-arc',
'-fobjc-arc-exceptions'
],
language: 'objcpp')
objfw_dep = dependency('objfw')
sdl12_dep = dependency('sdl12_compat')
sdlimage_dep = dependency('SDL_image')
sdlmixer_dep = dependency('SDL_mixer')
gl_dep = dependency('gl')
glu_dep = dependency('glu')
zlib_dep = dependency('zlib')
x11_dep = dependency('x11', required: false)
enet_includes = include_directories('enet/include')
enet = static_library('enet',
client_link_args = []
[
'enet/callbacks.c',
'enet/host.c',
'enet/list.c',
'enet/memory.c',
'enet/packet.c',
'enet/peer.c',
'enet/protocol.c',
'enet/unix.c',
'enet/win32.c',
],
include_directories: [enet_includes])
server_link_args = []
executable('client',
[
'src/client.mm',
'src/clientextras.mm',
extra_deps = []
'src/clientgame.mm',
'src/clients2c.mm',
'src/command.mm',
'src/console.mm',
'src/editing.mm',
'src/entities.mm',
'src/init.mm',
'src/main.mm',
'src/menus.mm',
'src/monster.mm',
'src/physics.mm',
'src/rendercubes.mm',
'src/renderextras.mm',
'src/rendergl.mm',
'src/rendermd2.mm',
'src/renderparticles.mm',
'src/rendertext.mm',
'src/rndmap.mm',
'src/savegamedemo.mm',
'src/server.mm',
if host_machine.system() == 'windows'
client_link_args += ['-lopengl32', '-lglu32', '-lwinmm']
'src/serverbrowser.mm',
'src/serverms.mm',
server_link_args += ['-lwinmm']
'src/serverutil.mm',
'src/sound.mm',
'src/tools.mm',
else
'src/weapon.mm',
'src/world.mm',
'src/worldio.mm',
'src/worldlight.mm',
'src/worldocull.mm',
'src/worldrender.mm',
],
dependencies: [
extra_deps += dependency('gl')
objfw_dep,
sdl12_dep,
sdlimage_dep,
sdlmixer_dep,
gl_dep,
glu_dep,
extra_deps += dependency('glu')
extra_deps += dependency('x11')
zlib_dep,
x11_dep,
],
include_directories: [enet_includes],
link_with: [enet])
endif
executable('server',
[
'src/server.mm',
subdir('enet')
subdir('src')
'src/serverms.mm',
'src/serverutil.mm',
'src/tools.mm',
],
objcpp_args: ['-DSTANDALONE'],
dependencies: [
objfw_dep,
sdl12_dep
],
include_directories: [enet_includes],
link_with: [enet])
|