Attempting to build Quake and Doom for ARM. Let's see what happens.
[AROS-Contrib.git] / Games / Quake / mmakefile.src
blobd1e8a6698baae9b5bbe19b37ec694d6d9cc98768
1 # $Id$
2 include $(TOP)/config/make.cfg
4 INSTDIR  := $(CONTRIBDIR)/Games/Quake
5 BUILDDIR := $(GENDIR)/$(CURDIR)
6 STARTUP := $(LIBDIR)/startup.o
7 LIBS    := -L$(LIBDIR) -lamiga -larossupport -lautoinit
8 DEPLIBS := $(STARTUP) $(LIBDIR)/libstdc.a \
9                 $(LIBDIR)/libamiga.a $(LIBDIR)/libarossupport.a
11 EXE := $(INSTDIR)/quake
13 #MM- contrib-games : Quake-$(AROS_TARGET_CPU)
14 #MM- Quake-i386 : Quake
15 #MM- Quake-arm  : Quake
17 #MM Quake : linklibs includes
19 Quake : make-dirs $(EXE)
21 make-dirs :
22         %mkdirs_q $(INSTDIR) $(BUILDDIR)
24 BASEVERSION=1.09
25 VERSION=$(BASEVERSION)$(GLIBC)
27 ifneq (,$(findstring libc6,$(shell if [ -e /lib/libc.so.6 ];then echo libc6;fi)))
28 GLIBC=-glibc
29 else
30 GLIBC=
31 endif
33 #FIXME: what about ARM?
34 ifneq (,$(findstring alpha,$(shell uname -m)))
35 ARCH=axp
36 else
37 ARCH=i386
38 endif
39 NOARCH=noarch
41 MOUNT_DIR=.
42 MASTER_DIR=/grog/Projects/QuakeMaster
43 MESA_DIR=/usr/local/src/Mesa-2.6
44 TDFXGL_DIR = /home/zoid/3dfxgl
46 BUILD_DEBUG_DIR=debug$(ARCH)$(GLIBC)
47 BUILD_RELEASE_DIR=release$(ARCH)$(GLIBC)
49 CC=$(AROS_CC)
51 CFLAGS += $(FORMAT_SECURITY_CFLAGS) -nix
52 BASE_CFLAGS=-Dstricmp=strcasecmp
54 DEBUG_CFLAGS=$(CFLAGS) $(BASE_CFLAGS) -g
56 AROSCFLAGS=-DAROS $(RELEASE_CFLAGS)
57 AROSLDFLAGS=-L$(LIBDIR) -lamiga -lautoinit -nix
59 DO_CC=$(CC) $(CFLAGS) -o $@ -c $<
60 DO_DEBUG_CC=$(CC) $(DEBUG_CFLAGS) -o $@ -c $<
61 DO_GL_CC=$(CC) $(CFLAGS) $(GLCFLAGS) -o $@ -c $<
62 DO_GL_DEBUG_CC=$(CC) $(DEBUG_CFLAGS) $(GLCFLAGS) -o $@ -c $<
64 DO_AROS_CC=$(CC) $(CFLAGS) $(AROSCFLAGS) -o $@ -c $<
65 DO_AROS_DEBUG_CC=$(CC) $(DEBUG_CFLAGS) $(AROSCFLAGS) -o $@ -c $<
67 DO_O_CC=$(CC) -O $(CFLAGS) -o $@ -c $<
68 DO_AS=$(CC) $(CFLAGS) -DELF -x assembler-with-cpp -o $@ -c $<
69 DO_GL_AS=$(CC) $(CFLAGS) $(GLCFLAGS) -DELF -x assembler-with-cpp -o $@ -c $<
71 #############################################################################
72 # SETUP AND BUILD
73 #############################################################################
79 #############################################################################
80 # AROS Quake
81 #############################################################################
83 AROS_OBJS = \
84         $(BUILDDIR)/cl_demo.o \
85         $(BUILDDIR)/cl_input.o \
86         $(BUILDDIR)/cl_main.o \
87         $(BUILDDIR)/cl_parse.o \
88         $(BUILDDIR)/cl_tent.o \
89         $(BUILDDIR)/chase.o \
90         $(BUILDDIR)/cmd.o \
91         $(BUILDDIR)/common.o \
92         $(BUILDDIR)/console.o \
93         $(BUILDDIR)/crc.o \
94         $(BUILDDIR)/cvar.o \
95         $(BUILDDIR)/draw.o \
96         $(BUILDDIR)/d_edge.o \
97         $(BUILDDIR)/d_fill.o \
98         $(BUILDDIR)/d_init.o \
99         $(BUILDDIR)/d_modech.o \
100         $(BUILDDIR)/d_part.o \
101         $(BUILDDIR)/d_polyse.o \
102         $(BUILDDIR)/d_scan.o \
103         $(BUILDDIR)/d_sky.o \
104         $(BUILDDIR)/d_sprite.o \
105         $(BUILDDIR)/d_surf.o \
106         $(BUILDDIR)/d_vars.o \
107         $(BUILDDIR)/d_zpoint.o \
108         $(BUILDDIR)/host.o \
109         $(BUILDDIR)/host_cmd.o \
110         $(BUILDDIR)/keys.o \
111         $(BUILDDIR)/menu.o \
112         $(BUILDDIR)/mathlib.o \
113         $(BUILDDIR)/model.o \
114         $(BUILDDIR)/net_loop.o \
115         $(BUILDDIR)/net_main.o \
116         $(BUILDDIR)/net_vcr.o \
117         $(BUILDDIR)/nonintel.o \
118         $(BUILDDIR)/pr_cmds.o \
119         $(BUILDDIR)/pr_edict.o \
120         $(BUILDDIR)/pr_exec.o \
121         $(BUILDDIR)/r_aclip.o \
122         $(BUILDDIR)/r_alias.o \
123         $(BUILDDIR)/r_bsp.o \
124         $(BUILDDIR)/r_light.o \
125         $(BUILDDIR)/r_draw.o \
126         $(BUILDDIR)/r_efrag.o \
127         $(BUILDDIR)/r_edge.o \
128         $(BUILDDIR)/r_misc.o \
129         $(BUILDDIR)/r_main.o \
130         $(BUILDDIR)/r_sky.o \
131         $(BUILDDIR)/r_sprite.o \
132         $(BUILDDIR)/r_surf.o \
133         $(BUILDDIR)/r_part.o \
134         $(BUILDDIR)/r_vars.o \
135         $(BUILDDIR)/screen.o \
136         $(BUILDDIR)/sbar.o \
137         $(BUILDDIR)/sv_main.o \
138         $(BUILDDIR)/sv_phys.o \
139         $(BUILDDIR)/sv_move.o \
140         $(BUILDDIR)/sv_user.o \
141         $(BUILDDIR)/zone.o      \
142         $(BUILDDIR)/view.o      \
143         $(BUILDDIR)/wad.o \
144         $(BUILDDIR)/world.o \
145         \
146         $(BUILDDIR)/d_draw.o \
147         $(BUILDDIR)/d_draw16.o \
148         $(BUILDDIR)/d_parta.o \
149         $(BUILDDIR)/d_polysa.o \
150         $(BUILDDIR)/d_scana.o \
151         $(BUILDDIR)/d_spr8.o \
152         $(BUILDDIR)/d_varsa.o \
153         $(BUILDDIR)/math.o \
154         $(BUILDDIR)/r_aliasa.o \
155         $(BUILDDIR)/r_drawa.o \
156         $(BUILDDIR)/r_edgea.o \
157         $(BUILDDIR)/r_varsa.o \
158         $(BUILDDIR)/surf16.o \
159         $(BUILDDIR)/surf8.o \
160         $(BUILDDIR)/worlda.o \
161         $(BUILDDIR)/r_aclipa.o \
162         $(BUILDDIR)/sys_dosa.o \
163         $(BUILDDIR)/sys_aros.o \
164         $(BUILDDIR)/cd_null.o \
165         $(BUILDDIR)/snd_null.o \
166         $(BUILDDIR)/net_none.o \
167         $(BUILDDIR)/vid_aros.o \
168         $(BUILDDIR)/in_null.o
171 # added objects below sys_aros.o
173 # Removed objects
175 #       $(BUILDDIR)/net_dgrm.o \
176 #       $(BUILDDIR)/net_udp.o \
177 #       $(BUILDDIR)/net_bsd.o \
179 #       $(BUILDDIR)/cd_linux.o \
180 #       $(BUILDDIR)/sys_linux.o \
181 #       $(BUILDDIR)/vid_x.o \
182 #       $(BUILDDIR)/snd_linux.o \
183 #       $(BUILDDIR)/snd_dma.o \
184 #       $(BUILDDIR)/snd_mem.o \
185 #       $(BUILDDIR)/snd_mix.o \
186 #       $(BUILDDIR)/snd_mixa.o \
188 # $(INSTDIR)/quake : $(AROS_OBJS)
189 #       $(CC) $(CFLAGS) -o $@ $(AROS_OBJS) $(AROSLDFLAGS) $(LDFLAGS)
191 $(EXE) : $(AROS_OBJS) $(DEPLIBS)
192         %link_q opt="$(LDFLAGS) $(AROSLDFLAGS)" from="$(AROS_OBJS)"
194 ####
196 $(BUILDDIR)/cl_demo.o :  $(MOUNT_DIR)/cl_demo.c
197         $(DO_AROS_CC)
199 $(BUILDDIR)/cl_input.o : $(MOUNT_DIR)/cl_input.c
200         $(DO_AROS_CC)
202 $(BUILDDIR)/cl_main.o :  $(MOUNT_DIR)/cl_main.c
203         $(DO_AROS_CC)
205 $(BUILDDIR)/cl_parse.o : $(MOUNT_DIR)/cl_parse.c
206         $(DO_AROS_CC)
208 $(BUILDDIR)/cl_tent.o :  $(MOUNT_DIR)/cl_tent.c
209         $(DO_AROS_CC)
211 $(BUILDDIR)/chase.o :    $(MOUNT_DIR)/chase.c
212         $(DO_AROS_CC)
214 $(BUILDDIR)/cmd.o :      $(MOUNT_DIR)/cmd.c
215         $(DO_AROS_CC)
217 $(BUILDDIR)/common.o :   $(MOUNT_DIR)/common.c
218         $(DO_AROS_DEBUG_CC)
220 $(BUILDDIR)/console.o :  $(MOUNT_DIR)/console.c
221         $(DO_AROS_CC)
223 $(BUILDDIR)/crc.o :      $(MOUNT_DIR)/crc.c
224         $(DO_AROS_CC)
226 $(BUILDDIR)/cvar.o :     $(MOUNT_DIR)/cvar.c
227         $(DO_AROS_CC)
229 $(BUILDDIR)/draw.o :     $(MOUNT_DIR)/draw.c
230         $(DO_AROS_CC)
232 $(BUILDDIR)/d_edge.o :   $(MOUNT_DIR)/d_edge.c
233         $(DO_AROS_CC)
235 $(BUILDDIR)/d_fill.o :   $(MOUNT_DIR)/d_fill.c
236         $(DO_AROS_CC)
238 $(BUILDDIR)/d_init.o :   $(MOUNT_DIR)/d_init.c
239         $(DO_AROS_CC)
241 $(BUILDDIR)/d_modech.o : $(MOUNT_DIR)/d_modech.c
242         $(DO_AROS_CC)
244 $(BUILDDIR)/d_part.o :   $(MOUNT_DIR)/d_part.c
245         $(DO_AROS_CC)
247 $(BUILDDIR)/d_polyse.o : $(MOUNT_DIR)/d_polyse.c
248         $(DO_AROS_CC)
250 $(BUILDDIR)/d_scan.o :   $(MOUNT_DIR)/d_scan.c
251         $(DO_AROS_CC)
253 $(BUILDDIR)/d_sky.o :    $(MOUNT_DIR)/d_sky.c
254         $(DO_AROS_CC)
256 $(BUILDDIR)/d_sprite.o : $(MOUNT_DIR)/d_sprite.c
257         $(DO_AROS_CC)
259 $(BUILDDIR)/d_surf.o :   $(MOUNT_DIR)/d_surf.c
260         $(DO_AROS_CC)
262 $(BUILDDIR)/d_vars.o :   $(MOUNT_DIR)/d_vars.c
263         $(DO_AROS_CC)
265 $(BUILDDIR)/d_zpoint.o : $(MOUNT_DIR)/d_zpoint.c
266         $(DO_AROS_CC)
268 $(BUILDDIR)/host.o :     $(MOUNT_DIR)/host.c
269         $(DO_AROS_CC)
271 $(BUILDDIR)/host_cmd.o : $(MOUNT_DIR)/host_cmd.c
272         $(DO_AROS_CC)
274 $(BUILDDIR)/keys.o :     $(MOUNT_DIR)/keys.c
275         $(DO_AROS_CC)
277 $(BUILDDIR)/menu.o :     $(MOUNT_DIR)/menu.c
278         $(DO_AROS_CC)
280 $(BUILDDIR)/mathlib.o :  $(MOUNT_DIR)/mathlib.c
281         $(DO_AROS_CC)
283 $(BUILDDIR)/model.o :    $(MOUNT_DIR)/model.c
284         $(DO_AROS_CC)
286 # $(BUILDDIR)/net_dgrm.o : $(MOUNT_DIR)/net_dgrm.c
287 #       $(DO_AROS_CC)
289 $(BUILDDIR)/net_loop.o : $(MOUNT_DIR)/net_loop.c
290         $(DO_AROS_CC)
292 $(BUILDDIR)/net_main.o : $(MOUNT_DIR)/net_main.c
293         $(DO_AROS_CC)
295 $(BUILDDIR)/net_vcr.o :  $(MOUNT_DIR)/net_vcr.c
296         $(DO_AROS_CC)
298 # $(BUILDDIR)/net_udp.o :  $(MOUNT_DIR)/net_udp.c
299 #       $(DO_AROS_CC)
301 # $(BUILDDIR)/net_bsd.o :  $(MOUNT_DIR)/net_bsd.c
302 #       $(DO_AROS_CC)
304 $(BUILDDIR)/nonintel.o : $(MOUNT_DIR)/nonintel.c
305         $(DO_AROS_CC)
307 $(BUILDDIR)/pr_cmds.o :  $(MOUNT_DIR)/pr_cmds.c
308         $(DO_AROS_CC)
310 $(BUILDDIR)/pr_edict.o : $(MOUNT_DIR)/pr_edict.c
311         $(DO_AROS_CC)
313 $(BUILDDIR)/pr_exec.o :  $(MOUNT_DIR)/pr_exec.c
314         $(DO_AROS_CC)
316 $(BUILDDIR)/r_aclip.o :  $(MOUNT_DIR)/r_aclip.c
317         $(DO_AROS_CC)
319 $(BUILDDIR)/r_alias.o :  $(MOUNT_DIR)/r_alias.c
320         $(DO_AROS_CC)
322 $(BUILDDIR)/r_bsp.o :    $(MOUNT_DIR)/r_bsp.c
323         $(DO_AROS_CC)
325 $(BUILDDIR)/r_light.o :  $(MOUNT_DIR)/r_light.c
326         $(DO_AROS_CC)
328 $(BUILDDIR)/r_draw.o :   $(MOUNT_DIR)/r_draw.c
329         $(DO_AROS_CC)
331 $(BUILDDIR)/r_efrag.o :  $(MOUNT_DIR)/r_efrag.c
332         $(DO_AROS_CC)
334 $(BUILDDIR)/r_edge.o :   $(MOUNT_DIR)/r_edge.c
335         $(DO_AROS_CC)
337 $(BUILDDIR)/r_misc.o :   $(MOUNT_DIR)/r_misc.c
338         $(DO_AROS_CC)
340 $(BUILDDIR)/r_main.o :   $(MOUNT_DIR)/r_main.c
341         $(DO_AROS_CC)
343 $(BUILDDIR)/r_sky.o :    $(MOUNT_DIR)/r_sky.c
344         $(DO_AROS_CC)
346 $(BUILDDIR)/r_sprite.o : $(MOUNT_DIR)/r_sprite.c
347         $(DO_AROS_CC)
349 $(BUILDDIR)/r_surf.o :   $(MOUNT_DIR)/r_surf.c
350         $(DO_AROS_CC)
352 $(BUILDDIR)/r_part.o :   $(MOUNT_DIR)/r_part.c
353         $(DO_AROS_CC)
355 $(BUILDDIR)/r_vars.o :   $(MOUNT_DIR)/r_vars.c
356         $(DO_AROS_CC)
358 $(BUILDDIR)/screen.o :   $(MOUNT_DIR)/screen.c
359         $(DO_AROS_CC)
361 $(BUILDDIR)/sbar.o :     $(MOUNT_DIR)/sbar.c
362         $(DO_AROS_CC)
364 $(BUILDDIR)/sv_main.o :  $(MOUNT_DIR)/sv_main.c
365         $(DO_AROS_CC)
367 $(BUILDDIR)/sv_phys.o :  $(MOUNT_DIR)/sv_phys.c
368         $(DO_AROS_CC)
370 $(BUILDDIR)/sv_move.o :  $(MOUNT_DIR)/sv_move.c
371         $(DO_AROS_CC)
373 $(BUILDDIR)/sv_user.o :  $(MOUNT_DIR)/sv_user.c
374         $(DO_AROS_CC)
376 $(BUILDDIR)/zone.o      :   $(MOUNT_DIR)/zone.c
377         $(DO_AROS_CC)
379 $(BUILDDIR)/view.o      :   $(MOUNT_DIR)/view.c
380         $(DO_AROS_CC)
382 $(BUILDDIR)/wad.o :      $(MOUNT_DIR)/wad.c
383         $(DO_AROS_CC)
385 $(BUILDDIR)/world.o :    $(MOUNT_DIR)/world.c
386         $(DO_AROS_CC)
388 # $(BUILDDIR)/cd_linux.o : $(MOUNT_DIR)/cd_linux.c
389 #       $(DO_AROS_CC)
391 # $(BUILDDIR)/sys_linux.o :$(MOUNT_DIR)/sys_linux.c
392 #       $(DO_AROS_CC)
394 # $(BUILDDIR)/vid_x.o: $(MOUNT_DIR)/vid_x.c
395 #       $(DO_O_CC)
397 # $(BUILDDIR)/snd_dma.o :  $(MOUNT_DIR)/snd_dma.c
398 #       $(DO_AROS_CC)
400 # $(BUILDDIR)/snd_mem.o :  $(MOUNT_DIR)/snd_mem.c
401 #       $(DO_AROS_CC)
403 # $(BUILDDIR)/snd_mix.o :  $(MOUNT_DIR)/snd_mix.c
404 #       $(DO_AROS_CC)
406 # $(BUILDDIR)/snd_linux.o :$(MOUNT_DIR)/snd_linux.c
407 #       $(DO_AROS_CC)
409 #####
411 $(BUILDDIR)/d_copy.o :   $(MOUNT_DIR)/d_copy.s
412         $(DO_AS)
414 $(BUILDDIR)/d_draw.o :   $(MOUNT_DIR)/d_draw.s
415         $(DO_AS)
417 $(BUILDDIR)/d_draw16.o : $(MOUNT_DIR)/d_draw16.s
418         $(DO_AS)
420 $(BUILDDIR)/d_parta.o :  $(MOUNT_DIR)/d_parta.s
421         $(DO_AS)
423 $(BUILDDIR)/d_polysa.o : $(MOUNT_DIR)/d_polysa.s
424         $(DO_AS)
426 $(BUILDDIR)/d_scana.o :  $(MOUNT_DIR)/d_scana.s
427         $(DO_AS)
429 $(BUILDDIR)/d_spr8.o :   $(MOUNT_DIR)/d_spr8.s
430         $(DO_AS)
432 $(BUILDDIR)/d_varsa.o :  $(MOUNT_DIR)/d_varsa.s
433         $(DO_AS)
435 $(BUILDDIR)/math.o :     $(MOUNT_DIR)/math.s
436         $(DO_AS)
438 $(BUILDDIR)/r_aliasa.o : $(MOUNT_DIR)/r_aliasa.s
439         $(DO_AS)
441 $(BUILDDIR)/r_drawa.o :  $(MOUNT_DIR)/r_drawa.s
442         $(DO_AS)
444 $(BUILDDIR)/r_edgea.o :  $(MOUNT_DIR)/r_edgea.s
445         $(DO_AS)
447 $(BUILDDIR)/r_varsa.o :  $(MOUNT_DIR)/r_varsa.s
448         $(DO_AS)
450 $(BUILDDIR)/surf16.o :   $(MOUNT_DIR)/surf16.s
451         $(DO_AS)
453 $(BUILDDIR)/surf8.o :    $(MOUNT_DIR)/surf8.s
454         $(DO_AS)
456 $(BUILDDIR)/worlda.o :   $(MOUNT_DIR)/worlda.s
457         $(DO_AS)
459 $(BUILDDIR)/r_aclipa.o : $(MOUNT_DIR)/r_aclipa.s
460         $(DO_AS)
462 # $(BUILDDIR)/snd_mixa.o : $(MOUNT_DIR)/snd_mixa.s
463 #       $(DO_AS)
465 $(BUILDDIR)/sys_dosa.o : $(MOUNT_DIR)/sys_dosa.s
466         $(DO_AS)
469 ###############
470 # AROS SPECIFIC FILE HERE
472 $(BUILDDIR)/sys_aros.o :$(MOUNT_DIR)/sys_aros.c
473         $(DO_AROS_CC) 2>sys_aros.err
475 $(BUILDDIR)/cd_null.o :$(MOUNT_DIR)/cd_null.c
476         $(DO_AROS_CC) 2>cd_null.err
478 $(BUILDDIR)/snd_null.o :$(MOUNT_DIR)/snd_null.c
479         $(DO_AROS_CC)
481 $(BUILDDIR)/net_none.o :$(MOUNT_DIR)/net_none.c
482         $(DO_AROS_CC) 2>net_none.err
484 $(BUILDDIR)/vid_aros.o :$(MOUNT_DIR)/vid_aros.c
485         $(DO_AROS_CC) 2>vid_aros.err
487 $(BUILDDIR)/in_null.o :$(MOUNT_DIR)/in_null.c
488         $(DO_AROS_CC) 2>in_null.err
491 #############################################################################
492 # MISC
493 #############################################################################
496 Quake-clean : 
497         rm -rf $(BUILDDIR)
498         rm -f $(EXE)
500 # clean: clean-debug clean-release
501 #       rm -f squake.spec glquake.spec quake.x11.spec
503 # clean-debug:
504 #       $(MAKE) clean2 BUILDDIR=$(BUILD_DEBUG_DIR) CFLAGS="$(DEBUG_CFLAGS)"
506 # clean-release:
507 #       $(MAKE) clean2 BUILDDIR=$(BUILD_RELEASE_DIR) CFLAGS="$(DEBUG_CFLAGS)"
509 # clean2:
510 #       -rm -f $(SQUAKE_OBJS) $(AROS_OBJS) $(GLQUAKE_OBJS) $(GLSVGA_OBJS) \
511 #               $(GLX_OBJS)