all: game.so CFLAGS=-fcommon -fPIC LDFLAGS=-ldl -lm SHLIBCFLAGS=-fPIC SHLIBLDFLAGS=-shared DO_CC=$(CC) $(CFLAGS) -o $@ -c $< DO_DEBUG_CC=$(CC) $(DEBUG_CFLAGS) -o $@ -c $< DO_DED_CC=$(CC) $(CFLAGS) -DDEDICATED_ONLY -o $@ -c $< DO_DED_DEBUG_CC=$(CC) $(DEBUG_CFLAGS) -DDEDICATED_ONLY -o $@ -c $< DO_O_CC=$(CC) $(CFLAGS) -O -o $@ -c $< DO_SHLIB_CC=$(CC) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $< DO_SHLIB_O_CC=$(CC) $(CFLAGS) -O $(SHLIBCFLAGS) -o $@ -c $< DO_SHLIB_DEBUG_CC=$(CC) $(DEBUG_CFLAGS) $(SHLIBCFLAGS) -o $@ -c $< DO_GL_SHLIB_CC=$(CC) $(CFLAGS) $(SHLIBCFLAGS) $(GLCFLAGS) -o $@ -c $< DO_GL_SHLIB_O_CC=$(CC) $(CFLAGS) -O $(SHLIBCFLAGS) $(GLCFLAGS) -o $@ -c $< DO_AS=$(CC) $(CFLAGS) -DELF -x assembler-with-cpp -o $@ -c $< DO_SHLIB_AS=$(CC) $(CFLAGS) $(SHLIBCFLAGS) -DELF -x assembler-with-cpp -o $@ -c $< BUILDDIR=. ############################################################################# # GAME ############################################################################# GAME_OBJS = \ $(BUILDDIR)/q_shared.o \ $(BUILDDIR)/g_ai.o \ $(BUILDDIR)/p_client.o \ $(BUILDDIR)/g_cmds.o \ $(BUILDDIR)/g_svcmds.o \ $(BUILDDIR)/g_chase.o \ $(BUILDDIR)/g_combat.o \ $(BUILDDIR)/g_func.o \ $(BUILDDIR)/g_items.o \ $(BUILDDIR)/g_main.o \ $(BUILDDIR)/g_misc.o \ $(BUILDDIR)/g_monster.o \ $(BUILDDIR)/g_phys.o \ $(BUILDDIR)/g_save.o \ $(BUILDDIR)/g_spawn.o \ $(BUILDDIR)/g_target.o \ $(BUILDDIR)/g_trigger.o \ $(BUILDDIR)/g_turret.o \ $(BUILDDIR)/g_utils.o \ $(BUILDDIR)/g_weapon.o \ $(BUILDDIR)/m_actor.o \ $(BUILDDIR)/m_berserk.o \ $(BUILDDIR)/m_boss2.o \ $(BUILDDIR)/m_boss3.o \ $(BUILDDIR)/m_boss31.o \ $(BUILDDIR)/m_boss32.o \ $(BUILDDIR)/m_brain.o \ $(BUILDDIR)/m_chick.o \ $(BUILDDIR)/m_flipper.o \ $(BUILDDIR)/m_float.o \ $(BUILDDIR)/m_flyer.o \ $(BUILDDIR)/m_gladiator.o \ $(BUILDDIR)/m_gunner.o \ $(BUILDDIR)/m_hover.o \ $(BUILDDIR)/m_infantry.o \ $(BUILDDIR)/m_insane.o \ $(BUILDDIR)/m_medic.o \ $(BUILDDIR)/m_move.o \ $(BUILDDIR)/m_mutant.o \ $(BUILDDIR)/m_parasite.o \ $(BUILDDIR)/m_soldier.o \ $(BUILDDIR)/m_supertank.o \ $(BUILDDIR)/m_tank.o \ $(BUILDDIR)/p_hud.o \ $(BUILDDIR)/p_trail.o \ $(BUILDDIR)/p_view.o \ $(BUILDDIR)/p_weapon.o \ $(BUILDDIR)/m_flash.o $(BUILDDIR)/game.so : $(GAME_OBJS) $(CC) $(CFLAGS) $(SHLIBLDFLAGS) -o $@ $(GAME_OBJS) $(BUILDDIR)/g_ai.o : $(BUILDDIR)/g_ai.c $(DO_SHLIB_CC) $(BUILDDIR)/p_client.o : $(BUILDDIR)/p_client.c $(DO_SHLIB_CC) $(BUILDDIR)/g_cmds.o : $(BUILDDIR)/g_cmds.c $(DO_SHLIB_CC) $(BUILDDIR)/g_svcmds.o : $(BUILDDIR)/g_svcmds.c $(DO_SHLIB_CC) $(BUILDDIR)/g_chase.o : $(BUILDDIR)/g_chase.c $(DO_SHLIB_CC) $(BUILDDIR)/g_combat.o : $(BUILDDIR)/g_combat.c $(DO_SHLIB_CC) $(BUILDDIR)/g_func.o : $(BUILDDIR)/g_func.c $(DO_SHLIB_CC) $(BUILDDIR)/g_items.o : $(BUILDDIR)/g_items.c $(DO_SHLIB_CC) $(BUILDDIR)/g_main.o : $(BUILDDIR)/g_main.c $(DO_SHLIB_CC) $(BUILDDIR)/g_misc.o : $(BUILDDIR)/g_misc.c $(DO_SHLIB_CC) $(BUILDDIR)/g_monster.o : $(BUILDDIR)/g_monster.c $(DO_SHLIB_CC) $(BUILDDIR)/g_phys.o : $(BUILDDIR)/g_phys.c $(DO_SHLIB_CC) $(BUILDDIR)/g_save.o : $(BUILDDIR)/g_save.c $(DO_SHLIB_CC) $(BUILDDIR)/g_spawn.o : $(BUILDDIR)/g_spawn.c $(DO_SHLIB_CC) $(BUILDDIR)/g_target.o : $(BUILDDIR)/g_target.c $(DO_SHLIB_CC) $(BUILDDIR)/g_trigger.o : $(BUILDDIR)/g_trigger.c $(DO_SHLIB_CC) $(BUILDDIR)/g_turret.o : $(BUILDDIR)/g_turret.c $(DO_SHLIB_CC) $(BUILDDIR)/g_utils.o : $(BUILDDIR)/g_utils.c $(DO_SHLIB_CC) $(BUILDDIR)/g_weapon.o : $(BUILDDIR)/g_weapon.c $(DO_SHLIB_CC) $(BUILDDIR)/m_actor.o : $(BUILDDIR)/m_actor.c $(DO_SHLIB_CC) $(BUILDDIR)/m_berserk.o : $(BUILDDIR)/m_berserk.c $(DO_SHLIB_CC) $(BUILDDIR)/m_boss2.o : $(BUILDDIR)/m_boss2.c $(DO_SHLIB_CC) $(BUILDDIR)/m_boss3.o : $(BUILDDIR)/m_boss3.c $(DO_SHLIB_CC) $(BUILDDIR)/m_boss31.o : $(BUILDDIR)/m_boss31.c $(DO_SHLIB_CC) $(BUILDDIR)/m_boss32.o : $(BUILDDIR)/m_boss32.c $(DO_SHLIB_CC) $(BUILDDIR)/m_brain.o : $(BUILDDIR)/m_brain.c $(DO_SHLIB_CC) $(BUILDDIR)/m_chick.o : $(BUILDDIR)/m_chick.c $(DO_SHLIB_CC) $(BUILDDIR)/m_flipper.o : $(BUILDDIR)/m_flipper.c $(DO_SHLIB_CC) $(BUILDDIR)/m_float.o : $(BUILDDIR)/m_float.c $(DO_SHLIB_CC) $(BUILDDIR)/m_flyer.o : $(BUILDDIR)/m_flyer.c $(DO_SHLIB_CC) $(BUILDDIR)/m_gladiator.o : $(BUILDDIR)/m_gladiator.c $(DO_SHLIB_CC) $(BUILDDIR)/m_gunner.o : $(BUILDDIR)/m_gunner.c $(DO_SHLIB_CC) $(BUILDDIR)/m_hover.o : $(BUILDDIR)/m_hover.c $(DO_SHLIB_CC) $(BUILDDIR)/m_infantry.o : $(BUILDDIR)/m_infantry.c $(DO_SHLIB_CC) $(BUILDDIR)/m_insane.o : $(BUILDDIR)/m_insane.c $(DO_SHLIB_CC) $(BUILDDIR)/m_medic.o : $(BUILDDIR)/m_medic.c $(DO_SHLIB_CC) $(BUILDDIR)/m_move.o : $(BUILDDIR)/m_move.c $(DO_SHLIB_CC) $(BUILDDIR)/m_mutant.o : $(BUILDDIR)/m_mutant.c $(DO_SHLIB_CC) $(BUILDDIR)/m_parasite.o : $(BUILDDIR)/m_parasite.c $(DO_SHLIB_CC) $(BUILDDIR)/m_soldier.o : $(BUILDDIR)/m_soldier.c $(DO_SHLIB_CC) $(BUILDDIR)/m_supertank.o : $(BUILDDIR)/m_supertank.c $(DO_SHLIB_CC) $(BUILDDIR)/m_tank.o : $(BUILDDIR)/m_tank.c $(DO_SHLIB_CC) $(BUILDDIR)/p_hud.o : $(BUILDDIR)/p_hud.c $(DO_SHLIB_CC) $(BUILDDIR)/p_trail.o : $(BUILDDIR)/p_trail.c $(DO_SHLIB_CC) $(BUILDDIR)/p_view.o : $(BUILDDIR)/p_view.c $(DO_SHLIB_CC) $(BUILDDIR)/p_weapon.o : $(BUILDDIR)/p_weapon.c $(DO_SHLIB_CC) $(BUILDDIR)/q_shared.o : $(BUILDDIR)/q_shared.c $(DO_SHLIB_DEBUG_CC) $(BUILDDIR)/m_flash.o : $(BUILDDIR)/m_flash.c $(DO_SHLIB_CC)