From ec04dbde55da4ac92e357bde00917d13c78c6368 Mon Sep 17 00:00:00 2001 From: Spoike Date: Tue, 7 Sep 2004 12:10:00 +0000 Subject: [PATCH] Makefile for Linux git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@147 fc73d0e0-1445-4013-8a0c-d673dee63da5 --- engine/Makefile.Linux | 978 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 978 insertions(+) create mode 100644 engine/Makefile.Linux diff --git a/engine/Makefile.Linux b/engine/Makefile.Linux new file mode 100644 index 000000000..696be162c --- /dev/null +++ b/engine/Makefile.Linux @@ -0,0 +1,978 @@ +CC=gcc +CPUOPTIMIZATIONS= + +BASE_DIR=. +CLIENT_DIR=$(BASE_DIR)/client +GL_DIR=$(BASE_DIR)/gl +SW_DIR=$(BASE_DIR)/sw +SERVER_DIR=$(BASE_DIR)/server +COMMON_DIR=$(BASE_DIR)/common +NQPROT_DIR=$(BASE_DIR)/nqnet +HTTP_DIR=$(BASE_DIR)/http +LIBS_DIR=$(BASE_DIR)/libs +PROGS_DIR=$(BASE_DIR)/qclib +SNDCODEC_DIR=$(BASE_DIR)/sndcodec +DEBUG_DIR=$(BASE_DIR)/debug +MP3_DIR=$(BASE_DIR)/../mp3/libmad +RELEASE_DIR=$(BASE_DIR)/release + +DO_CC=$(CC) $(CFLAGS) -o $@ -c $< +DO_AS=$(CC) $(CFLAGS) -x assembler-with-cpp -DELF -o $@ -c $< +BASELDFLAGS=-lm -lz +GLXLDFLAGS=-L/usr/X11R6/lib -lX11 -lXext -lpng -ljpeg -lXxf86vm +GLSLDFLAGS=-L/usr/X11R6/lib -lMesaGL -lglide -lvga +XLDFLAGS=-L/usr/X11R6/lib -lX11 -lXext -lpng -ljpeg +SLDFLAGS=-lvga + + +BASE_CFLAGS=-Wall -Dstrnicmp=strncasecmp -Dstricmp=strcasecmp -I$(CLIENT_DIR) -I$(SERVER_DIR) -I$(COMMON_DIR) -I$(GL_DIR) -I$(PROGS_DIR) -I$(LIBS_DIR) -I/usr/X11R6/include -D_vsnprintf=vsnprintf -D_snprintf=snprintf +CLIENT_ONLY_CFLAGS=$(BASE_CFLAGS) -DCLIENTONLY +SERVER_ONLY_CFLAGS=$(BASE_CFLAGS) -DSERVERONLY +JOINT_CFLAGS=$(BASE_CFLAGS) +DEBUG_CFLAGS=-ggdb -g +RELEASE_CFLAGS=-O6 -s -fno-strict-aliasing -ffast-math -funroll-loops -fexpensive-optimizations $(CPUOPTIMIZATIONS) +GLCFLAGS=-DGLQUAKE +SWCFLAGS=-DSWQUAKE + +NQPROT_OBJS = \ + $(OUT_DIR)/net_main.o \ + $(OUT_DIR)/net_loop.o \ + $(OUT_DIR)/net_dgrm.o \ + $(OUT_DIR)/net_nqudp.o \ + $(OUT_DIR)/net_vcr.o +CLIENT_OBJS = \ + $(OUT_DIR)/textedit.o \ + $(OUT_DIR)/fragstats.o \ + $(OUT_DIR)/teamplay.o \ + $(OUT_DIR)/cl_demo.o \ + $(OUT_DIR)/cl_ents.o \ + $(OUT_DIR)/clq2_ents.o \ + $(OUT_DIR)/cl_input.o \ + $(OUT_DIR)/cl_main.o \ + $(OUT_DIR)/cl_parse.o \ + $(OUT_DIR)/cl_pred.o \ + $(OUT_DIR)/cl_tent.o \ + $(OUT_DIR)/cl_cam.o \ + $(OUT_DIR)/cl_screen.o \ + $(OUT_DIR)/cl_ui.o \ + $(OUT_DIR)/qvm.o \ + $(OUT_DIR)/irc_cl.o \ + $(OUT_DIR)/console.o \ + $(OUT_DIR)/image.o \ + $(OUT_DIR)/keys.o \ + $(OUT_DIR)/menu.o \ + $(OUT_DIR)/m_master.o \ + $(OUT_DIR)/m_multi.o \ + $(OUT_DIR)/m_items.o \ + $(OUT_DIR)/m_options.o \ + $(OUT_DIR)/m_single.o \ + $(OUT_DIR)/m_script.o \ + $(OUT_DIR)/m_mp3.o \ + $(OUT_DIR)/roq_read.o \ + $(OUT_DIR)/clq2_cin.o \ + $(OUT_DIR)/net_master.o \ + $(OUT_DIR)/r_bulleten.o \ + $(OUT_DIR)/r_part.o \ + $(OUT_DIR)/r_partset.o \ + $(OUT_DIR)/r_efrag.o \ + $(OUT_DIR)/renderer.o \ + $(OUT_DIR)/renderque.o \ + $(OUT_DIR)/sbar.o \ + $(OUT_DIR)/skin.o \ + $(OUT_DIR)/snd_dma.o \ + $(OUT_DIR)/snd_mem.o \ + $(OUT_DIR)/snd_mix.o \ + $(OUT_DIR)/snd_mp3.o \ + $(OUT_DIR)/snd_ov.o \ + $(OUT_DIR)/valid.o \ + $(OUT_DIR)/view.o \ + $(OUT_DIR)/wad.o \ + $(OUT_DIR)/cd_linux.o \ + $(OUT_DIR)/sys_linux.o \ + $(OUT_DIR)/sys_dosa.o \ + $(OUT_DIR)/snd_linux.o \ + \ + $(OUT_DIR)/pop3noti.o \ + $(OUT_DIR)/imapnoti.o \ + \ + $(OUT_DIR)/ftpclient.o \ + $(OUT_DIR)/httpclient.o \ + \ + \ + $(OUT_DIR)/snd_mixa.o \ + \ + $(OUT_DIR)/m_x.o \ + $(OUT_DIR)/x_reqs.o \ + $(OUT_DIR)/x_res.o \ +#\ +# $(OUT_DIR)/sys_dosa.o +SOFTWARE_OBJS = \ + $(OUT_DIR)/screen.o \ + $(OUT_DIR)/draw.o \ + $(OUT_DIR)/model.o \ + $(OUT_DIR)/r_aclip.o \ + $(OUT_DIR)/r_aclipa.o \ + $(OUT_DIR)/r_alias.o \ + $(OUT_DIR)/r_aliasa.o \ + $(OUT_DIR)/r_bsp.o \ + $(OUT_DIR)/r_draw.o \ + $(OUT_DIR)/r_drawa.o \ + $(OUT_DIR)/r_edge.o \ + $(OUT_DIR)/r_edgea.o \ + $(OUT_DIR)/r_light.o \ + $(OUT_DIR)/r_main.o \ + $(OUT_DIR)/r_misc.o \ + $(OUT_DIR)/r_sky.o \ + $(OUT_DIR)/r_sprite.o \ + $(OUT_DIR)/r_surf.o \ + $(OUT_DIR)/r_vars.o \ + $(OUT_DIR)/r_varsa.o \ + \ + $(OUT_DIR)/d_draw.o \ + $(OUT_DIR)/d_draw16.o \ + $(OUT_DIR)/d_edge.o \ + $(OUT_DIR)/d_fill.o \ + $(OUT_DIR)/d_init.o \ + $(OUT_DIR)/d_modech.o \ + $(OUT_DIR)/d_part.o \ + $(OUT_DIR)/d_parta.o \ + $(OUT_DIR)/d_polyse.o \ + $(OUT_DIR)/d_polysa.o \ + $(OUT_DIR)/d_scan.o \ + $(OUT_DIR)/d_scana.o \ + $(OUT_DIR)/d_sky.o \ + $(OUT_DIR)/d_spr8.o \ + $(OUT_DIR)/d_sprite.o \ + $(OUT_DIR)/d_surf.o \ + $(OUT_DIR)/d_trans.o \ + $(OUT_DIR)/d_vars.o \ + $(OUT_DIR)/d_varsa.o \ + $(OUT_DIR)/d_zpoint.o \ + \ + $(OUT_DIR)/nonintel.o \ + $(OUT_DIR)/surf16.o \ + $(OUT_DIR)/surf8.o + + +X11_OBJS = $(OUT_DIR)/vid_x.o + +GLQUAKE_OBJS = \ + $(OUT_DIR)/gl_alias.o \ + $(OUT_DIR)/gl_draw.o \ + $(OUT_DIR)/gl_model.o \ + $(OUT_DIR)/gl_ngraph.o \ + $(OUT_DIR)/gl_rlight.o \ + $(OUT_DIR)/gl_rmain.o \ + $(OUT_DIR)/gl_rmisc.o \ + $(OUT_DIR)/gl_rsurf.o \ + $(OUT_DIR)/ltface.o \ + $(OUT_DIR)/gl_screen.o \ + $(OUT_DIR)/gl_backend.o \ + $(OUT_DIR)/gl_warp.o \ + $(OUT_DIR)/gl_ppl.o \ + $(OUT_DIR)/gl_vidcommon.o \ + $(OUT_DIR)/gl_hlmdl.o + +# $(OUT_DIR)/gl_refrag.o \ + +GLX_OBJS = $(OUT_DIR)/gl_vidlinuxglx.o +GLS_OBJS = $(OUT_DIR)/gl_vidlinux.o +MP3_OBJS = \ + $(OUT_DIR)/fixed.o \ + $(OUT_DIR)/bit.o \ + $(OUT_DIR)/timer.o \ + $(OUT_DIR)/stream.o \ + $(OUT_DIR)/frame.o \ + $(OUT_DIR)/synth.o \ + $(OUT_DIR)/decoder.o \ + $(OUT_DIR)/layer12.o \ + $(OUT_DIR)/layer3.o \ + $(OUT_DIR)/huffman.o \ + $(OUT_DIR)/mymad.o + +PROGS_OBJS = \ + $(OUT_DIR)/comprout.o \ + $(OUT_DIR)/hash.o \ + $(OUT_DIR)/initlib.o \ + $(OUT_DIR)/pr_edict.o \ + $(OUT_DIR)/pr_exec.o \ + $(OUT_DIR)/pr_multi.o \ + $(OUT_DIR)/qcc_cmdlib.o \ + $(OUT_DIR)/QccMain.o \ + $(OUT_DIR)/qcc_pr_comp.o \ + $(OUT_DIR)/qcc_pr_lex.o \ + $(OUT_DIR)/qcdecomp.o \ + $(OUT_DIR)/qcd_main.o + +SERVER_OBJS = \ + $(OUT_DIR)/pr_cmds.o \ + $(OUT_DIR)/sv_master.o \ + $(OUT_DIR)/sv_init.o \ + $(OUT_DIR)/sv_main.o \ + $(OUT_DIR)/sv_nchan.o \ + $(OUT_DIR)/sv_ents.o \ + $(OUT_DIR)/sv_send.o \ + $(OUT_DIR)/sv_move.o \ + $(OUT_DIR)/sv_phys.o \ + $(OUT_DIR)/sv_user.o \ + $(OUT_DIR)/sv_mvd.o \ + $(OUT_DIR)/sv_ccmds.o \ + $(OUT_DIR)/sv_rankin.o \ + $(OUT_DIR)/sv_chat.o \ + $(OUT_DIR)/sv_demo.o \ + $(OUT_DIR)/world.o \ + $(OUT_DIR)/worlda.o \ + $(OUT_DIR)/net_preparse.o \ + $(OUT_DIR)/savegame.o \ + $(OUT_DIR)/svq2_ents.o \ + $(OUT_DIR)/svq2_game.o \ + $(OUT_DIR)/snd_vc.o \ + $(OUT_DIR)/snd_voicecodecs.o \ + $(OUT_DIR)/g711.o \ + $(OUT_DIR)/g721.o \ + $(OUT_DIR)/g723_24.o \ + $(OUT_DIR)/g723_40.o \ + $(OUT_DIR)/g72x.o \ + $(OUT_DIR)/webgen.o \ + $(OUT_DIR)/ftpserver.o \ + $(OUT_DIR)/httpserver.o \ + $(OUT_DIR)/sv_pop3.o \ + $(OUT_DIR)/sv_smtp.o + +SERVERONLY_OBJS = \ + $(OUT_DIR)/svmodel.o \ + $(OUT_DIR)/sys_unix.o + +COMMON_OBJS = \ + $(OUT_DIR)/common.o \ + $(OUT_DIR)/cvar.o \ + $(OUT_DIR)/cmd.o \ + $(OUT_DIR)/crc.o \ + $(OUT_DIR)/mathlib.o \ + $(OUT_DIR)/math.o \ + $(OUT_DIR)/huff.o \ + $(OUT_DIR)/md4.o \ + $(OUT_DIR)/md5.o \ + $(OUT_DIR)/net_chan.o \ + $(OUT_DIR)/net_udp.o \ + $(OUT_DIR)/zone.o \ + $(OUT_DIR)/gl_q2bsp.o \ + $(OUT_DIR)/glmod_doom.o \ + $(OUT_DIR)/pmove.o \ + $(OUT_DIR)/pmovetst.o \ + $(OUT_DIR)/iwebiface.o \ + $(OUT_DIR)/translate.o \ + $(OUT_DIR)/q1bsp.o \ + $(OUT_DIR)/q2pmove.o + +all: all-rel all-dbg + +$(OUT_DIR)/q2pmove.o : $(COMMON_DIR)/q2pmove.c + $(DO_CC) + +$(OUT_DIR)/glmod_doom.o : $(GL_DIR)/glmod_doom.c + $(DO_CC) + +$(OUT_DIR)/q1bsp.o : $(COMMON_DIR)/q1bsp.c + $(DO_CC) +$(OUT_DIR)/m_x.o : $(CLIENT_DIR)/../qux/m_x.c + $(DO_CC) +$(OUT_DIR)/x_reqs.o : $(CLIENT_DIR)/../qux/x_reqs.c + $(DO_CC) +$(OUT_DIR)/x_res.o : $(CLIENT_DIR)/../qux/x_res.c + $(DO_CC) + +$(OUT_DIR)/image.o : $(CLIENT_DIR)/image.c + $(DO_CC) + +$(OUT_DIR)/screen.o : $(CLIENT_DIR)/screen.c + $(DO_CC) +$(OUT_DIR)/draw.o : $(CLIENT_DIR)/draw.c + $(DO_CC) +$(OUT_DIR)/model.o : $(CLIENT_DIR)/model.c + $(DO_CC) + +$(OUT_DIR)/r_main.o : $(CLIENT_DIR)/r_main.c + $(DO_CC) +$(OUT_DIR)/r_misc.o : $(CLIENT_DIR)/r_misc.c + $(DO_CC) +$(OUT_DIR)/r_draw.o : $(CLIENT_DIR)/r_draw.c + $(DO_CC) +$(OUT_DIR)/r_surf.o : $(CLIENT_DIR)/r_surf.c + $(DO_CC) +$(OUT_DIR)/r_bsp.o : $(CLIENT_DIR)/r_bsp.c + $(DO_CC) +$(OUT_DIR)/r_edge.o : $(CLIENT_DIR)/r_edge.c + $(DO_CC) +$(OUT_DIR)/r_drawa.o : $(CLIENT_DIR)/r_drawa.s + $(DO_AS) +$(OUT_DIR)/r_edgea.o : $(CLIENT_DIR)/r_edgea.s + $(DO_AS) +$(OUT_DIR)/r_efrag.o : $(CLIENT_DIR)/r_efrag.c + $(DO_CC) +$(OUT_DIR)/r_vars.o : $(CLIENT_DIR)/r_vars.c + $(DO_CC) +$(OUT_DIR)/r_varsa.o : $(CLIENT_DIR)/r_varsa.s + $(DO_AS) +$(OUT_DIR)/r_light.o : $(CLIENT_DIR)/r_light.c + $(DO_CC) +$(OUT_DIR)/r_sky.o : $(CLIENT_DIR)/r_sky.c + $(DO_CC) +$(OUT_DIR)/r_sprite.o : $(CLIENT_DIR)/r_sprite.c + $(DO_CC) +$(OUT_DIR)/r_aclip.o : $(CLIENT_DIR)/r_aclip.c + $(DO_CC) +$(OUT_DIR)/r_aclipa.o : $(CLIENT_DIR)/r_aclipa.s + $(DO_AS) +$(OUT_DIR)/r_alias.o : $(CLIENT_DIR)/r_alias.c + $(DO_CC) +$(OUT_DIR)/r_aliasa.o : $(CLIENT_DIR)/r_aliasa.s + $(DO_AS) + + +$(OUT_DIR)/d_polyse.o : $(CLIENT_DIR)/d_polyse.c + $(DO_CC) +$(OUT_DIR)/d_polysa.o : $(CLIENT_DIR)/d_polysa.s + $(DO_AS) +$(OUT_DIR)/d_scan.o : $(CLIENT_DIR)/d_scan.c + $(DO_CC) +$(OUT_DIR)/d_scana.o : $(CLIENT_DIR)/d_scana.s + $(DO_AS) +$(OUT_DIR)/d_init.o : $(CLIENT_DIR)/d_init.c + $(DO_CC) +$(OUT_DIR)/d_modech.o : $(CLIENT_DIR)/d_modech.c + $(DO_CC) +$(OUT_DIR)/d_sky.o : $(CLIENT_DIR)/d_sky.c + $(DO_CC) +$(OUT_DIR)/d_spr8.o : $(CLIENT_DIR)/d_spr8.s + $(DO_AS) +$(OUT_DIR)/d_sprite.o : $(CLIENT_DIR)/d_sprite.c + $(DO_CC) +$(OUT_DIR)/d_fill.o : $(CLIENT_DIR)/d_fill.c + $(DO_CC) +$(OUT_DIR)/d_edge.o : $(CLIENT_DIR)/d_edge.c + $(DO_CC) +$(OUT_DIR)/d_surf.o : $(CLIENT_DIR)/d_surf.c + $(DO_CC) +$(OUT_DIR)/d_part.o : $(CLIENT_DIR)/d_part.c + $(DO_CC) +$(OUT_DIR)/d_parta.o : $(CLIENT_DIR)/d_parta.s + $(DO_AS) +$(OUT_DIR)/d_trans.o : $(CLIENT_DIR)/d_trans.c + $(DO_CC) +$(OUT_DIR)/d_vars.o : $(CLIENT_DIR)/d_vars.c + $(DO_CC) +$(OUT_DIR)/d_varsa.o : $(CLIENT_DIR)/d_varsa.s + $(DO_AS) +$(OUT_DIR)/d_copy.o : $(CLIENT_DIR)/d_copy.s + $(DO_AS) +$(OUT_DIR)/d_draw.o : $(CLIENT_DIR)/d_draw.s + $(DO_AS) +$(OUT_DIR)/d_draw16.o : $(CLIENT_DIR)/d_draw16.s + $(DO_AS) +$(OUT_DIR)/d_zpoint.o : $(CLIENT_DIR)/d_zpoint.c + $(DO_CC) + +$(OUT_DIR)/surf16.o : $(CLIENT_DIR)/surf16.s + $(DO_AS) +$(OUT_DIR)/surf8.o : $(CLIENT_DIR)/surf8.s + $(DO_AS) + +$(OUT_DIR)/vid_x.o : $(CLIENT_DIR)/vid_x.c + $(DO_CC) + +$(OUT_DIR)/qvm.o : $(COMMON_DIR)/qvm.c + $(DO_CC) + + +$(OUT_DIR)/comprout.o : $(PROGS_DIR)/comprout.c + $(DO_CC) + +$(OUT_DIR)/hash.o : $(PROGS_DIR)/hash.c + $(DO_CC) + +$(OUT_DIR)/initlib.o : $(PROGS_DIR)/initlib.c + $(DO_CC) + +$(OUT_DIR)/pr_edict.o : $(PROGS_DIR)/pr_edict.c + $(DO_CC) + +$(OUT_DIR)/pr_exec.o : $(PROGS_DIR)/pr_exec.c + $(DO_CC) + +$(OUT_DIR)/pr_multi.o : $(PROGS_DIR)/pr_multi.c + $(DO_CC) + +$(OUT_DIR)/qcc_cmdlib.o : $(PROGS_DIR)/qcc_cmdlib.c + $(DO_CC) + +$(OUT_DIR)/QccMain.o : $(PROGS_DIR)/QccMain.c + $(DO_CC) + +$(OUT_DIR)/qcc_pr_comp.o : $(PROGS_DIR)/qcc_pr_comp.c + $(DO_CC) + +$(OUT_DIR)/qcc_pr_lex.o : $(PROGS_DIR)/qcc_pr_lex.c + $(DO_CC) + +$(OUT_DIR)/qcdecomp.o : $(PROGS_DIR)/qcdecomp.c + $(DO_CC) + +$(OUT_DIR)/qcd_main.o : $(PROGS_DIR)/qcd_main.c + $(DO_CC) + +$(OUT_DIR)/q2bsp.o : $(CLIENT_DIR)/gl_q2bsp.c + $(DO_CC) + +$(OUT_DIR)/common.o : $(COMMON_DIR)/common.c + $(DO_CC) + +$(OUT_DIR)/fragstats.o : $(CLIENT_DIR)/fragstats.c + $(DO_CC) + +$(OUT_DIR)/cvar.o : $(COMMON_DIR)/cvar.c + $(DO_CC) + +$(OUT_DIR)/cmd.o : $(COMMON_DIR)/cmd.c + $(DO_CC) + +$(OUT_DIR)/crc.o : $(COMMON_DIR)/crc.c + $(DO_CC) + +$(OUT_DIR)/mathlib.o : $(COMMON_DIR)/mathlib.c + $(DO_CC) + +$(OUT_DIR)/net_chan.o : $(COMMON_DIR)/net_chan.c + $(DO_CC) + +$(OUT_DIR)/net_udp.o : $(COMMON_DIR)/net_wins.c + $(DO_CC) + +$(OUT_DIR)/zone.o : $(COMMON_DIR)/zone.c + $(DO_CC) + +$(OUT_DIR)/pmove.o : $(COMMON_DIR)/pmove.c + $(DO_CC) + +$(OUT_DIR)/pmovetst.o : $(COMMON_DIR)/pmovetst.c + $(DO_CC) + +$(OUT_DIR)/net_main.o : $(NQPROT_DIR)/net_main.c + $(DO_CC) + +$(OUT_DIR)/net_bsd.o : $(NQPROT_DIR)/net_bsd.c + $(DO_CC) + +$(OUT_DIR)/net_loop.o : $(NQPROT_DIR)/net_loop.c + $(DO_CC) + +$(OUT_DIR)/net_dgrm.o : $(NQPROT_DIR)/net_dgrm.c + $(DO_CC) + +$(OUT_DIR)/net_nqudp.o : $(NQPROT_DIR)/net_udp.c + $(DO_CC) + +$(OUT_DIR)/net_vcr.o : $(NQPROT_DIR)/net_vcr.c + $(DO_CC) + +$(OUT_DIR)/pr_cmds.o : $(SERVER_DIR)/pr_cmds.c + $(DO_CC) + +$(OUT_DIR)/textedit.o : $(CLIENT_DIR)/textedit.c + $(DO_CC) + +$(OUT_DIR)/iwebiface.o : $(HTTP_DIR)/iwebiface.c + $(DO_CC) +$(OUT_DIR)/webgen.o : $(HTTP_DIR)/webgen.c + $(DO_CC) + +$(OUT_DIR)/irc_cl.o : $(HTTP_DIR)/../irc/ircclient.c + $(DO_CC) +$(OUT_DIR)/ftpserver.o : $(HTTP_DIR)/ftpserver.c + $(DO_CC) +$(OUT_DIR)/httpserver.o : $(HTTP_DIR)/httpserver.c + $(DO_CC) +$(OUT_DIR)/ftpclient.o : $(HTTP_DIR)/ftpclient.c + $(DO_CC) +$(OUT_DIR)/httpclient.o : $(HTTP_DIR)/httpclient.c + $(DO_CC) + +$(OUT_DIR)/sv_pop3.o : $(HTTP_DIR)/../email/sv_pop3.c + $(DO_CC) +$(OUT_DIR)/sv_smtp.o : $(HTTP_DIR)/../email/sv_smtp.c + $(DO_CC) + +$(OUT_DIR)/pop3noti.o : $(HTTP_DIR)/../email/pop3noti.c + $(DO_CC) +$(OUT_DIR)/imapnoti.o : $(HTTP_DIR)/../email/imapnoti.c + $(DO_CC) + + +$(OUT_DIR)/sv_master.o : $(SERVER_DIR)/sv_master.c + $(DO_CC) + +$(OUT_DIR)/sv_init.o : $(SERVER_DIR)/sv_init.c + $(DO_CC) + +$(OUT_DIR)/sv_main.o : $(SERVER_DIR)/sv_main.c + $(DO_CC) + +$(OUT_DIR)/sv_nchan.o : $(SERVER_DIR)/sv_nchan.c + $(DO_CC) + +$(OUT_DIR)/sv_ents.o : $(SERVER_DIR)/sv_ents.c + $(DO_CC) + +$(OUT_DIR)/sv_mvd.o : $(SERVER_DIR)/sv_mvd.c + $(DO_CC) + +$(OUT_DIR)/sv_send.o : $(SERVER_DIR)/sv_send.c + $(DO_CC) + +$(OUT_DIR)/sv_move.o : $(SERVER_DIR)/sv_move.c + $(DO_CC) +$(OUT_DIR)/sv_phys.o : $(SERVER_DIR)/sv_phys.c + $(DO_CC) + +$(OUT_DIR)/sv_user.o : $(SERVER_DIR)/sv_user.c + $(DO_CC) + +$(OUT_DIR)/sv_ccmds.o : $(SERVER_DIR)/sv_ccmds.c + $(DO_CC) + +$(OUT_DIR)/huff.o : $(COMMON_DIR)/huff.c + $(DO_CC) + +$(OUT_DIR)/sv_rankin.o : $(SERVER_DIR)/sv_rankin.c + $(DO_CC) + +$(OUT_DIR)/sv_chat.o : $(SERVER_DIR)/sv_chat.c + $(DO_CC) + +$(OUT_DIR)/svq2_game.o : $(SERVER_DIR)/svq2_game.c + $(DO_CC) + +$(OUT_DIR)/svq2_ents.o : $(SERVER_DIR)/svq2_ents.c + $(DO_CC) + +$(OUT_DIR)/world.o : $(SERVER_DIR)/world.c + $(DO_CC) + +$(OUT_DIR)/worlda.o : $(SERVER_DIR)/worlda.s + $(DO_AS) + +$(OUT_DIR)/md4.o : $(COMMON_DIR)/md4.c + $(DO_CC) + +$(OUT_DIR)/md5.o : $(COMMON_DIR)/md5.c + $(DO_CC) + +$(OUT_DIR)/net_preparse.o : $(SERVER_DIR)/net_preparse.c + $(DO_CC) + +$(OUT_DIR)/savegame.o : $(SERVER_DIR)/savegame.c + $(DO_CC) + +$(OUT_DIR)/sv_demo.o : $(SERVER_DIR)/sv_demo.c + $(DO_CC) + +$(OUT_DIR)/svmodel.o : $(SERVER_DIR)/model.c + $(DO_CC) + +$(OUT_DIR)/sys_unix.o : $(SERVER_DIR)/sys_unix.c + $(DO_CC) + +$(OUT_DIR)/translate.o : $(COMMON_DIR)/translate.c + $(DO_CC) + +$(OUT_DIR)/teamplay.o : $(CLIENT_DIR)/teamplay.c + $(DO_CC) + +$(OUT_DIR)/cl_main.o : $(CLIENT_DIR)/cl_main.c + $(DO_CC) + +$(OUT_DIR)/cl_cam.o : $(CLIENT_DIR)/cl_cam.c + $(DO_CC) + +$(OUT_DIR)/cl_demo.o : $(CLIENT_DIR)/cl_demo.c + $(DO_CC) + +$(OUT_DIR)/cl_ents.o : $(CLIENT_DIR)/cl_ents.c + $(DO_CC) + +$(OUT_DIR)/clq2_ents.o : $(CLIENT_DIR)/clq2_ents.c + $(DO_CC) + +$(OUT_DIR)/cl_input.o : $(CLIENT_DIR)/cl_input.c + $(DO_CC) + +$(OUT_DIR)/cl_parse.o : $(CLIENT_DIR)/cl_parse.c + $(DO_CC) + +$(OUT_DIR)/cl_pred.o : $(CLIENT_DIR)/cl_pred.c + $(DO_CC) + +$(OUT_DIR)/cl_ui.o : $(CLIENT_DIR)/cl_ui.c + $(DO_CC) + +$(OUT_DIR)/cl_screen.o : $(CLIENT_DIR)/cl_screen.c + $(DO_CC) + + + +$(OUT_DIR)/cl_tent.o : $(CLIENT_DIR)/cl_tent.c + $(DO_CC) + +$(OUT_DIR)/console.o : $(CLIENT_DIR)/console.c + $(DO_CC) + +$(OUT_DIR)/keys.o : $(CLIENT_DIR)/keys.c + $(DO_CC) + +$(OUT_DIR)/menu.o : $(CLIENT_DIR)/menu.c + $(DO_CC) + +$(OUT_DIR)/m_multi.o : $(CLIENT_DIR)/m_multi.c + $(DO_CC) + +$(OUT_DIR)/m_items.o : $(CLIENT_DIR)/m_items.c + $(DO_CC) + +$(OUT_DIR)/m_script.o : $(CLIENT_DIR)/m_script.c + $(DO_CC) + +$(OUT_DIR)/m_mp3.o : $(CLIENT_DIR)/m_mp3.c + $(DO_CC) + +$(OUT_DIR)/roq_read.o : $(CLIENT_DIR)/roq_read.c + $(DO_CC) + +$(OUT_DIR)/clq2_cin.o : $(CLIENT_DIR)/clq2_cin.c + $(DO_CC) + +$(OUT_DIR)/m_options.o : $(CLIENT_DIR)/m_options.c + $(DO_CC) + +$(OUT_DIR)/m_single.o : $(CLIENT_DIR)/m_single.c + $(DO_CC) + +$(OUT_DIR)/net_master.o : $(CLIENT_DIR)/net_master.c + $(DO_CC) + +$(OUT_DIR)/m_master.o : $(CLIENT_DIR)/m_master.c + $(DO_CC) + +$(OUT_DIR)/nonintel.o : $(SW_DIR)/nonintel.c + $(DO_CC) + +$(OUT_DIR)/r_bulleten.o : $(CLIENT_DIR)/r_bulleten.c + $(DO_CC) + +$(OUT_DIR)/r_part.o : $(CLIENT_DIR)/r_part.c + $(DO_CC) +$(OUT_DIR)/r_partset.o : $(CLIENT_DIR)/r_partset.c + $(DO_CC) + +$(OUT_DIR)/renderer.o : $(CLIENT_DIR)/renderer.c + $(DO_CC) + +$(OUT_DIR)/renderque.o : $(CLIENT_DIR)/renderque.c + $(DO_CC) + +$(OUT_DIR)/sbar.o : $(CLIENT_DIR)/sbar.c + $(DO_CC) + +$(OUT_DIR)/skin.o : $(CLIENT_DIR)/skin.c + $(DO_CC) + +$(OUT_DIR)/snd_dma.o : $(CLIENT_DIR)/snd_dma.c + $(DO_CC) + +$(OUT_DIR)/snd_mem.o : $(CLIENT_DIR)/snd_mem.c + $(DO_CC) + +$(OUT_DIR)/snd_mix.o : $(CLIENT_DIR)/snd_mix.c + $(DO_CC) + +$(OUT_DIR)/snd_mp3.o : $(CLIENT_DIR)/snd_mp3.c + $(DO_CC) + +$(OUT_DIR)/snd_ov.o : $(CLIENT_DIR)/snd_ov.c + $(DO_CC) + +$(OUT_DIR)/view.o : $(CLIENT_DIR)/view.c + $(DO_CC) + +$(OUT_DIR)/valid.o : $(CLIENT_DIR)/valid.c + $(DO_CC) + +$(OUT_DIR)/wad.o : $(CLIENT_DIR)/wad.c + $(DO_CC) + +$(OUT_DIR)/cd_linux.o : $(CLIENT_DIR)/cd_linux.c + $(DO_CC) + +$(OUT_DIR)/sys_linux.o : $(CLIENT_DIR)/sys_linux.c + $(DO_CC) + +$(OUT_DIR)/snd_linux.o : $(CLIENT_DIR)/snd_linux.c + $(DO_CC) + +$(OUT_DIR)/math.o : $(COMMON_DIR)/math.s + $(DO_AS) + +$(OUT_DIR)/snd_mixa.o : $(CLIENT_DIR)/snd_mixa.s + $(DO_AS) + +$(OUT_DIR)/sys_dosa.o : $(CLIENT_DIR)/sys_dosa.s + $(DO_AS) + +$(OUT_DIR)/gl_alias.o : $(GL_DIR)/gl_alias.c + $(DO_CC) + +$(OUT_DIR)/gl_draw.o : $(GL_DIR)/gl_draw.c + $(DO_CC) + +$(OUT_DIR)/gl_model.o : $(GL_DIR)/gl_model.c + $(DO_CC) + +$(OUT_DIR)/gl_ngraph.o : $(GL_DIR)/gl_ngraph.c + $(DO_CC) + +$(OUT_DIR)/gl_refrag.o : $(GL_DIR)/gl_refrag.c + $(DO_CC) + +$(OUT_DIR)/gl_rlight.o : $(GL_DIR)/gl_rlight.c + $(DO_CC) + +$(OUT_DIR)/gl_rmain.o : $(GL_DIR)/gl_rmain.c + $(DO_CC) + +$(OUT_DIR)/gl_rmisc.o : $(GL_DIR)/gl_rmisc.c + $(DO_CC) + +$(OUT_DIR)/gl_rsurf.o : $(GL_DIR)/gl_rsurf.c + $(DO_CC) + +$(OUT_DIR)/gl_vidcommon.o : $(GL_DIR)/gl_vidcommon.c + $(DO_CC) + +$(OUT_DIR)/gl_backend.o : $(GL_DIR)/gl_backend.c + $(DO_CC) + +$(OUT_DIR)/gl_screen.o : $(GL_DIR)/gl_screen.c + $(DO_CC) + +$(OUT_DIR)/gl_warp.o : $(GL_DIR)/gl_warp.c + $(DO_CC) + +$(OUT_DIR)/gl_q2bsp.o : $(COMMON_DIR)/gl_q2bsp.c + $(DO_CC) + +$(OUT_DIR)/gl_hlmdl.o : $(GL_DIR)/gl_hlmdl.c + $(DO_CC) + +$(OUT_DIR)/gl_ppl.o : $(GL_DIR)/gl_ppl.c + $(DO_CC) + +$(OUT_DIR)/gl_backend.o : $(GL_DIR)/gl_backend.c + $(DO_CC) + + +$(OUT_DIR)/gl_vidlinuxglx.o : $(GL_DIR)/gl_vidlinuxglx.c + $(DO_CC) + +$(OUT_DIR)/gl_vidlinux.o : $(GL_DIR)/gl_vidlinux.c + $(DO_CC) + +$(OUT_DIR)/ltface.o : $(GL_DIR)/ltface.c + $(DO_CC) +$(OUT_DIR)/snd_vc.o : $(SNDCODEC_DIR)/snd_vc.c + $(DO_CC) + +$(OUT_DIR)/snd_voicecodecs.o : $(SNDCODEC_DIR)/snd_voicecodecs.c + $(DO_CC) +$(OUT_DIR)/g711.o : $(SNDCODEC_DIR)/g711.c + $(DO_CC) +$(OUT_DIR)/g721.o : $(SNDCODEC_DIR)/g721.c + $(DO_CC) +$(OUT_DIR)/g723_24.o : $(SNDCODEC_DIR)/g723_24.c + $(DO_CC) +$(OUT_DIR)/g723_40.o : $(SNDCODEC_DIR)/g723_40.c + $(DO_CC) +$(OUT_DIR)/g72x.o : $(SNDCODEC_DIR)/g72x.c + $(DO_CC) + +$(OUT_DIR)/mymad.o : $(CLIENT_DIR)/mymad.c + $(DO_CC) +$(OUT_DIR)/fixed.o : $(MP3_DIR)/fixed.c + $(DO_CC) +$(OUT_DIR)/bit.o : $(MP3_DIR)/bit.c + $(DO_CC) +$(OUT_DIR)/timer.o : $(MP3_DIR)/timer.c + $(DO_CC) +$(OUT_DIR)/stream.o : $(MP3_DIR)/stream.c + $(DO_CC) +$(OUT_DIR)/frame.o : $(MP3_DIR)/frame.c + $(DO_CC) +$(OUT_DIR)/synth.o : $(MP3_DIR)/synth.c + $(DO_CC) +$(OUT_DIR)/decoder.o : $(MP3_DIR)/decoder.c + $(DO_CC) +$(OUT_DIR)/layer12.o : $(MP3_DIR)/layer12.c + $(DO_CC) +$(OUT_DIR)/layer3.o : $(MP3_DIR)/layer3.c + $(DO_CC) +$(OUT_DIR)/huffman.o : $(MP3_DIR)/huffman.c3 + $(DO_CC) + + +$(OUT_DIR)/$(EXE_NAME): $(OBJS) + $(CC) $(CFLAGS) -o $@ $(OBJS) $(LDFLAGS) + +_out-rel: + @-echo $(OUT_DIR) + $(MAKE) -f Makefile.Linux $(OUT_DIR)/$(EXE_NAME) EXE_NAME="$(EXE_NAME)" OUT_DIR="$(OUT_DIR)" CFLAGS="$(CFLAGS) $(RELEASE_CFLAGS)" LDFLAGS="$(BASELDFLAGS) $(LDFLAGS)" OBJS="$(OBJS)" + +_out-dbg: + $(MAKE) -f Makefile.Linux $(OUT_DIR)/$(EXE_NAME) EXE_NAME="$(EXE_NAME)" OUT_DIR="$(OUT_DIR)" CFLAGS="$(CFLAGS) $(DEBUG_CFLAGS)" LDFLAGS="$(BASELDFLAGS) $(LDFLAGS)" OBJS="$(OBJS)" + + +_cl-rel: + $(MAKE) -f Makefile.Linux _out-rel EXE_NAME="$(EXE_NAME)" OUT_DIR="$(OUT_DIR)" CFLAGS="$(CLIENT_ONLY_CFLAGS) $(CFLAGS)" LDFLAGS="$(LDFLAGS)" OBJS="$(OBJS) $(COMMON_OBJS) $(NQPROT_OBJS) $(CLIENT_OBJS) $(PROGS_OBJS)" + +_cl-dbg: + $(MAKE) -f Makefile.Linux _out-dbg EXE_NAME="$(EXE_NAME)" OUT_DIR="$(OUT_DIR)" CFLAGS="$(CLIENT_ONLY_CFLAGS) $(CFLAGS)" LDFLAGS="$(LDFLAGS)" OBJS="$(OBJS) $(COMMON_OBJS) $(NQPROT_OBJS) $(CLIENT_OBJS) $(PROGS_OBJS)" + +_clsv-rel: + $(MAKE) -f Makefile.Linux _out-rel EXE_NAME="$(EXE_NAME)" OUT_DIR="$(OUT_DIR)" CFLAGS="$(JOINT_CFLAGS) $(CFLAGS)" LDFLAGS="$(LDFLAGS)" OBJS="$(OBJS) $(COMMON_OBJS) $(NQPROT_OBJS) $(CLIENT_OBJS) $(PROGS_OBJS) $(SERVER_OBJS)" + +_clsv-dbg: + $(MAKE) -f Makefile.Linux _out-dbg EXE_NAME="$(EXE_NAME)" OUT_DIR="$(OUT_DIR)" CFLAGS="$(JOINT_CFLAGS) $(CFLAGS)" LDFLAGS="$(LDFLAGS)" OBJS="$(OBJS) $(COMMON_OBJS) $(NQPROT_OBJS) $(CLIENT_OBJS) $(PROGS_OBJS) $(SERVER_OBJS)" + + + +SV_OBJS=$(COMMON_OBJS) $(NQPROT_OBJS) $(SERVER_OBJS) $(PROGS_OBJS) $(SERVERONLY_OBJS) +SV_EXE_NAME=../fteqwsv +SV_LDFLAGS= +SV_CFLAGS=$(SERVER_ONLY_CFLAGS) +SV_DIR=server +sv-tmp: + $(MAKE) -f Makefile.Linux dirs + $(MAKE) -f Makefile.Linux $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(SV_EXE_NAME)" CFLAGS="$(SV_CFLAGS)" LDFLAGS="$(SV_LDFLAGS)" OBJS="$(SV_OBJS)" +sv-rel: + $(MAKE) -f Makefile.Linux sv-tmp TYPE=_out-rel OUT_DIR="$(RELEASE_DIR)/$(SV_DIR)" +sv-dbg: + $(MAKE) -f Makefile.Linux sv-tmp TYPE=_out-dbg OUT_DIR="$(DEBUG_DIR)/$(SV_DIR)" + + +GLXCL_OBJS=$(GLX_OBJS) $(GLQUAKE_OBJS) +GLX_EXE_NAME=../fteqw.glx +GLXCL_EXE_NAME=../fteqwcl.glx +GLX_LDFLAGS=$(GLXLDFLAGS) +GLX_CFLAGS=$(GLCFLAGS) +GLX_DIR=glx +GLXCL_DIR=glxcl + +glxcl-tmp: + $(MAKE) -f Makefile.Linux dirs + $(MAKE) -f Makefile.Linux $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(GLXCL_EXE_NAME)" CFLAGS="$(GLX_CFLAGS)" LDFLAGS="$(GLX_LDFLAGS)" OBJS="$(GLXCL_OBJS)" +glx-tmp: + $(MAKE) -f Makefile.Linux dirs + $(MAKE) -f Makefile.Linux $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(GLX_EXE_NAME)" CFLAGS="$(GLX_CFLAGS)" LDFLAGS="$(GLX_LDFLAGS)" OBJS="$(GLXCL_OBJS)" + +glxcl-rel: + $(MAKE) -f Makefile.Linux glxcl-tmp TYPE=_cl-rel OUT_DIR="$(RELEASE_DIR)/$(GLXCL_DIR)" +glxcl-dbg: + $(MAKE) -f Makefile.Linux glxcl-tmp TYPE=_cl-dbg OUT_DIR="$(DEBUG_DIR)/$(GLXCL_DIR)" +glx-rel: + $(MAKE) -f Makefile.Linux glx-tmp TYPE=_clsv-rel OUT_DIR="$(RELEASE_DIR)/$(GLX_DIR)" +glx-dbg: + $(MAKE) -f Makefile.Linux glx-tmp TYPE=_clsv-dbg OUT_DIR="$(DEBUG_DIR)/$(GLX_DIR)" + +X11CL_OBJS=$(X11_OBJS) $(SOFTWARE_OBJS) +X11_EXE_NAME=../fteqw.x11 +X11CL_EXE_NAME=../fteqwcl.x11 +X11_LDFLAGS=$(XLDFLAGS) +X11_CFLAGS=$(SWCFLAGS) +X11_DIR=x11 +X11CL_DIR=x11cl + +x11cl-tmp: + $(MAKE) -f Makefile.Linux dirs + $(MAKE) -f Makefile.Linux $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(X11CL_EXE_NAME)" CFLAGS="$(X11_CFLAGS)" LDFLAGS="$(X11_LDFLAGS)" OBJS="$(X11CL_OBJS)" +x11-tmp: + $(MAKE) -f Makefile.Linux dirs + $(MAKE) -f Makefile.Linux $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(X11_EXE_NAME)" CFLAGS="$(X11_CFLAGS)" LDFLAGS="$(X11_LDFLAGS)" OBJS="$(X11CL_OBJS)" + +x11cl-rel: + $(MAKE) -f Makefile.Linux x11cl-tmp TYPE=_cl-rel OUT_DIR="$(RELEASE_DIR)/$(X11CL_DIR)" +x11cl-dbg: + $(MAKE) -f Makefile.Linux x11cl-tmp TYPE=_cl-dbg OUT_DIR="$(DEBUG_DIR)/$(X11CL_DIR)" +x11-rel: + $(MAKE) -f Makefile.Linux x11-tmp TYPE=_clsv-rel OUT_DIR="$(RELEASE_DIR)/$(X11_DIR)" +x11-dbg: + $(MAKE) -f Makefile.Linux x11-tmp TYPE=_clsv-dbg OUT_DIR="$(DEBUG_DIR)/$(X11_DIR)" + +XMCL_OBJS=$(SOFTWARE_OBJS) $(X11_OBJS) $(GLX_OBJS) $(GLQUAKE_OBJS) /usr/X11R6/lib/libXxf86vm.a +XM_EXE_NAME=../fteqw.x +XMCL_EXE_NAME=../fteqwcl.x +XM_LDFLAGS=$(XLDFLAGS) $(GLXLDFLAGS) +XM_CFLAGS=$(SWCFLAGS) $(GLCFLAGS) +XM_DIR=xm +XMCL_DIR=xmcl + +xmcl-tmp: + $(MAKE) -f Makefile.Linux dirs + $(MAKE) -f Makefile.Linux $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(XMCL_EXE_NAME)" CFLAGS="$(XM_CFLAGS)" LDFLAGS="$(XM_LDFLAGS)" OBJS="$(XMCL_OBJS)" +xm-tmp: + $(MAKE) -f Makefile.Linux dirs + $(MAKE) -f Makefile.Linux $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(XM_EXE_NAME)" CFLAGS="$(XM_CFLAGS)" LDFLAGS="$(XM_LDFLAGS)" OBJS="$(XMCL_OBJS)" + +xmcl-rel: + $(MAKE) -f Makefile.Linux xmcl-tmp TYPE=_cl-rel OUT_DIR="$(RELEASE_DIR)/$(XMCL_DIR)" +xmcl-dbg: + $(MAKE) -f Makefile.Linux xmcl-tmp TYPE=_cl-dbg OUT_DIR="$(DEBUG_DIR)/$(XMCL_DIR)" +xm-rel: + $(MAKE) -f Makefile.Linux xm-tmp TYPE=_clsv-rel OUT_DIR="$(RELEASE_DIR)/$(XM_DIR)" +xm-dbg: + $(MAKE) -f Makefile.Linux xm-tmp TYPE=_clsv-dbg OUT_DIR="$(DEBUG_DIR)/$(XM_DIR)" + + +all-rel: sv-rel xm-rel glx-rel x11-rel +all-dbg: sv-dbg xm-dbg glx-dbg x11-dbg + +dirs2: + @-mkdir $(OUT_DIR) + @-mkdir $(OUT_DIR)/server + @-mkdir $(OUT_DIR)/glx + @-mkdir $(OUT_DIR)/glxcl + @-mkdir $(OUT_DIR)/x11 + @-mkdir $(OUT_DIR)/x11cl + @-mkdir $(OUT_DIR)/xm + @-mkdir $(OUT_DIR)/xmcl + +dirs: + $(MAKE) -f Makefile.Linux dirs2 OUT_DIR="$(RELEASE_DIR)" + $(MAKE) -f Makefile.Linux dirs2 OUT_DIR="$(DEBUG_DIR)" + +help: + @-echo "Specfic targets:" + @-echo "dirs - use before anything else)" + @-echo "clean - removes all output (use make dirs afterwards)" + @-echo "all - make all the targets possible" + @-echo "" + @-echo "Normal targets:" + @-echo "(each of these targets must have the postfix -rel or -dbg)" + @-echo "sv" + @-echo "xm" + @-echo "x11" + @-echo "x11cl" + @-echo "glx" + @-echo "glxcl" + @-echo "all" + +clean: + -rm -f -r $(RELEASE_DIR) + -rm -f -r $(DEBUG_DIR) +