diff --git a/MakefileXMMS b/MakefileXMMS new file mode 100644 index 0000000..d27d63f --- /dev/null +++ b/MakefileXMMS @@ -0,0 +1,649 @@ +# +# Quake Makefile for Linux 2.0 +# +# Aug '98 by Zoid +# +# ELF only +# +# ============================ +# +# Quake X11 Makefile for Linux +# +# Jul 2015 by eukara +# + +BASEVERSION=1.09 +VERSION=$(BASEVERSION)$(GLIBC) + +ifneq (,$(findstring libc6,$(shell if [ -e /lib/libc.so.6 ];then echo libc6;fi))) +GLIBC=-glibc +else +GLIBC= +endif + +ifneq (,$(findstring alpha,$(shell uname -m))) +ARCH=axp +else +ARCH=i386 +endif +NOARCH=noarch + +MOUNT_DIR=./engine/ +MASTER_DIR=./ + +BUILD_DEBUG_DIR=.debug +BUILD_RELEASE_DIR=.release + +CC=gcc -m32 + +BASE_CFLAGS=-Dstricmp=strcasecmp -Wunused -I./include/ `pkg-config --cflags glib-2.0` +RELEASE_CFLAGS=$(BASE_CFLAGS) -O2 -funroll-loops -ffast-math -fomit-frame-pointer -funsigned-char -fno-strength-reduce +DEBUG_CFLAGS=$(BASE_CFLAGS) -g +LDFLAGS=-lm -ldl `pkg-config --libs glib-2.0` -lxmms +XLDFLAGS=-L/usr/X11R6/lib -lX11 -lXext -lXxf86dga +XCFLAGS=-DX11 + +DO_CC=$(CC) $(CFLAGS) -o $@ -c $< +DO_DEBUG_CC=$(CC) $(DEBUG_CFLAGS) -o $@ -c $< +DO_X11_CC=$(CC) $(CFLAGS) $(XCFLAGS) -o $@ -c $< +DO_X11_DEBUG_CC=$(CC) $(DEBUG_CFLAGS) $(XCFLAGS) -o $@ -c $< +DO_O_CC=$(CC) $(CFLAGS) -o $@ -c $< +DO_AS=$(CC) $(CFLAGS) -DELF -x assembler-with-cpp -o $@ -c $< +DO_DUMB=$(CC) $(CFLAGS) -o $@ -c $< + +############################################################################# +# SETUP AND BUILD +############################################################################# + +TARGETS=$(MASTER_DIR)/ngunix.x11 + +build_debug: + @-mkdir $(BUILD_DEBUG_DIR) \ + $(BUILD_DEBUG_DIR) + $(MAKE) targets BUILDDIR=$(BUILD_DEBUG_DIR) CFLAGS="$(DEBUG_CFLAGS)" + +build_release: + @-mkdir $(BUILD_RELEASE_DIR) \ + $(BUILD_RELEASE_DIR) + $(MAKE) targets BUILDDIR=$(BUILD_RELEASE_DIR) CFLAGS="$(RELEASE_CFLAGS)" + +all: build_debug build_release + +targets: $(TARGETS) + +############################################################################# +# X11 Quake +############################################################################# + +NGUNIX_OBJS = \ + $(BUILDDIR)/atexit.o \ + $(BUILDDIR)/duhlen.o \ + $(BUILDDIR)/duhtag.o \ + $(BUILDDIR)/dumbfile.o \ + $(BUILDDIR)/loadduh.o \ + $(BUILDDIR)/makeduh.o \ + $(BUILDDIR)/rawsig.o \ + $(BUILDDIR)/readduh.o \ + $(BUILDDIR)/register.o \ + $(BUILDDIR)/rendduh.o \ + $(BUILDDIR)/rendsig.o \ + $(BUILDDIR)/unload.o \ + $(BUILDDIR)/clickrem.o \ + $(BUILDDIR)/memfile.o \ + $(BUILDDIR)/resample.o \ + $(BUILDDIR)/sampbuf.o \ + $(BUILDDIR)/silence.o \ + $(BUILDDIR)/stdfile.o \ + $(BUILDDIR)/itload.o \ + $(BUILDDIR)/itread.o \ + $(BUILDDIR)/itload2.o \ + $(BUILDDIR)/itread2.o \ + $(BUILDDIR)/itrender.o \ + $(BUILDDIR)/itunload.o \ + $(BUILDDIR)/loads3m.o \ + $(BUILDDIR)/reads3m.o \ + $(BUILDDIR)/loadxm.o \ + $(BUILDDIR)/readxm.o \ + $(BUILDDIR)/loadmod.o \ + $(BUILDDIR)/readmod.o \ + $(BUILDDIR)/loads3m2.o \ + $(BUILDDIR)/reads3m2.o \ + $(BUILDDIR)/loadxm2.o \ + $(BUILDDIR)/readxm2.o \ + $(BUILDDIR)/loadmod2.o \ + $(BUILDDIR)/readmod2.o \ + $(BUILDDIR)/xmeffect.o \ + $(BUILDDIR)/itorder.o \ + $(BUILDDIR)/itmisc.o \ + $(BUILDDIR)/cl_demo.o \ + $(BUILDDIR)/cl_input.o \ + $(BUILDDIR)/cl_main.o \ + $(BUILDDIR)/cl_parse.o \ + $(BUILDDIR)/cl_tent.o \ + $(BUILDDIR)/chase.o \ + $(BUILDDIR)/cmd.o \ + $(BUILDDIR)/common.o \ + $(BUILDDIR)/console.o \ + $(BUILDDIR)/crc.o \ + $(BUILDDIR)/cvar.o \ + $(BUILDDIR)/draw.o \ + $(BUILDDIR)/d_edge.o \ + $(BUILDDIR)/d_fill.o \ + $(BUILDDIR)/d_init.o \ + $(BUILDDIR)/d_modech.o \ + $(BUILDDIR)/d_part.o \ + $(BUILDDIR)/d_polyse.o \ + $(BUILDDIR)/d_scan.o \ + $(BUILDDIR)/d_sky.o \ + $(BUILDDIR)/d_sprite.o \ + $(BUILDDIR)/d_surf.o \ + $(BUILDDIR)/d_vars.o \ + $(BUILDDIR)/d_zpoint.o \ + $(BUILDDIR)/host.o \ + $(BUILDDIR)/host_cmd.o \ + $(BUILDDIR)/keys.o \ + $(BUILDDIR)/menu.o \ + $(BUILDDIR)/mathlib.o \ + $(BUILDDIR)/model.o \ + $(BUILDDIR)/model_common.o \ + $(BUILDDIR)/net_dgrm.o \ + $(BUILDDIR)/net_loop.o \ + $(BUILDDIR)/net_main.o \ + $(BUILDDIR)/net_vcr.o \ + $(BUILDDIR)/net_udp.o \ + $(BUILDDIR)/net_bsd.o \ + $(BUILDDIR)/nonintel.o \ + $(BUILDDIR)/pr_cmds.o \ + $(BUILDDIR)/pr_edict.o \ + $(BUILDDIR)/pr_exec.o \ + $(BUILDDIR)/r_aclip.o \ + $(BUILDDIR)/r_alias.o \ + $(BUILDDIR)/r_bsp.o \ + $(BUILDDIR)/r_light.o \ + $(BUILDDIR)/r_draw.o \ + $(BUILDDIR)/r_efrag.o \ + $(BUILDDIR)/r_edge.o \ + $(BUILDDIR)/r_misc.o \ + $(BUILDDIR)/r_main.o \ + $(BUILDDIR)/r_sky.o \ + $(BUILDDIR)/r_sprite.o \ + $(BUILDDIR)/r_surf.o \ + $(BUILDDIR)/r_part.o \ + $(BUILDDIR)/r_vars.o \ + $(BUILDDIR)/screen.o \ + $(BUILDDIR)/sbar.o \ + $(BUILDDIR)/sv_main.o \ + $(BUILDDIR)/sv_phys.o \ + $(BUILDDIR)/sv_move.o \ + $(BUILDDIR)/sv_user.o \ + $(BUILDDIR)/zone.o \ + $(BUILDDIR)/view.o \ + $(BUILDDIR)/wad.o \ + $(BUILDDIR)/world.o \ + $(BUILDDIR)/tracker_xmms.o \ + $(BUILDDIR)/cd_null.o \ + $(BUILDDIR)/sys_linux.o \ + $(BUILDDIR)/vid_x.o \ + $(BUILDDIR)/snd_dma.o \ + $(BUILDDIR)/snd_mem.o \ + $(BUILDDIR)/snd_mix.o \ + $(BUILDDIR)/snd_linux.o \ + $(BUILDDIR)/bot.o \ + $(BUILDDIR)/nvs_client.o \ + $(BUILDDIR)/nvs_common.o \ + $(BUILDDIR)/nvs_server.o \ + $(BUILDDIR)/nvs_server_data.o \ + \ + $(BUILDDIR)/d_draw.o \ + $(BUILDDIR)/d_draw16.o \ + $(BUILDDIR)/d_parta.o \ + $(BUILDDIR)/d_polysa.o \ + $(BUILDDIR)/d_scana.o \ + $(BUILDDIR)/d_spr8.o \ + $(BUILDDIR)/d_varsa.o \ + $(BUILDDIR)/math.o \ + $(BUILDDIR)/r_aliasa.o \ + $(BUILDDIR)/r_drawa.o \ + $(BUILDDIR)/r_edgea.o \ + $(BUILDDIR)/r_varsa.o \ + $(BUILDDIR)/surf16.o \ + $(BUILDDIR)/surf8.o \ + $(BUILDDIR)/surf8fst.o \ + $(BUILDDIR)/worlda.o \ + $(BUILDDIR)/r_aclipa.o \ + $(BUILDDIR)/snd_mixa.o \ + $(BUILDDIR)/sys_dosa.o + +$(MASTER_DIR)/ngunix.x11 : $(NGUNIX_OBJS) + $(CC) $(CFLAGS) -o $@ $(NGUNIX_OBJS) $(XLDFLAGS) $(LDFLAGS) + +$(BUILDDIR)/atexit.o : $(MOUNT_DIR)/../tracker/core/atexit.c + $(DO_DUMB) + +$(BUILDDIR)/duhlen.o : $(MOUNT_DIR)/../tracker/core/duhlen.c + $(DO_DUMB) + +$(BUILDDIR)/duhtag.o : $(MOUNT_DIR)/../tracker/core/duhtag.c + $(DO_DUMB) + +$(BUILDDIR)/dumbfile.o : $(MOUNT_DIR)/../tracker/core/dumbfile.c + $(DO_DUMB) + +$(BUILDDIR)/loadduh.o : $(MOUNT_DIR)/../tracker/core/loadduh.c + $(DO_DUMB) + +$(BUILDDIR)/makeduh.o : $(MOUNT_DIR)/../tracker/core/makeduh.c + $(DO_DUMB) + +$(BUILDDIR)/rawsig.o : $(MOUNT_DIR)/../tracker/core/rawsig.c + $(DO_DUMB) + +$(BUILDDIR)/readduh.o : $(MOUNT_DIR)/../tracker/core/readduh.c + $(DO_DUMB) + +$(BUILDDIR)/register.o : $(MOUNT_DIR)/../tracker/core/register.c + $(DO_DUMB) + +$(BUILDDIR)/rendduh.o : $(MOUNT_DIR)/../tracker/core/rendduh.c + $(DO_DUMB) + +$(BUILDDIR)/rendsig.o : $(MOUNT_DIR)/../tracker/core/rendsig.c + $(DO_DUMB) + +$(BUILDDIR)/unload.o : $(MOUNT_DIR)/../tracker/core/unload.c + $(DO_DUMB) + +$(BUILDDIR)/clickrem.o : $(MOUNT_DIR)/../tracker/helpers/clickrem.c + $(DO_DUMB) + +$(BUILDDIR)/memfile.o : $(MOUNT_DIR)/../tracker/helpers/memfile.c + $(DO_DUMB) + +$(BUILDDIR)/resample.o : $(MOUNT_DIR)/../tracker/helpers/resample.c + $(DO_DUMB) + +$(BUILDDIR)/sampbuf.o : $(MOUNT_DIR)/../tracker/helpers/sampbuf.c + $(DO_DUMB) + +$(BUILDDIR)/silence.o : $(MOUNT_DIR)/../tracker/helpers/silence.c + $(DO_DUMB) + +$(BUILDDIR)/stdfile.o : $(MOUNT_DIR)/../tracker/helpers/stdfile.c + $(DO_DUMB) + +$(BUILDDIR)/itload.o : $(MOUNT_DIR)/../tracker/it/itload.c + $(DO_DUMB) + +$(BUILDDIR)/itread.o : $(MOUNT_DIR)/../tracker/it/itread.c + $(DO_DUMB) + +$(BUILDDIR)/itload2.o : $(MOUNT_DIR)/../tracker/it/itload2.c + $(DO_DUMB) + +$(BUILDDIR)/itread2.o : $(MOUNT_DIR)/../tracker/it/itread2.c + $(DO_DUMB) + +$(BUILDDIR)/itrender.o : $(MOUNT_DIR)/../tracker/it/itrender.c + $(DO_DUMB) + +$(BUILDDIR)/itunload.o : $(MOUNT_DIR)/../tracker/it/itunload.c + $(DO_DUMB) + +$(BUILDDIR)/loads3m.o : $(MOUNT_DIR)/../tracker/it/loads3m.c + $(DO_DUMB) + +$(BUILDDIR)/reads3m.o : $(MOUNT_DIR)/../tracker/it/reads3m.c + $(DO_DUMB) + +$(BUILDDIR)/loadxm.o : $(MOUNT_DIR)/../tracker/it/loadxm.c + $(DO_DUMB) + +$(BUILDDIR)/readxm.o : $(MOUNT_DIR)/../tracker/it/readxm.c + $(DO_DUMB) + +$(BUILDDIR)/loadmod.o : $(MOUNT_DIR)/../tracker/it/loadmod.c + $(DO_DUMB) + +$(BUILDDIR)/readmod.o : $(MOUNT_DIR)/../tracker/it/readmod.c + $(DO_DUMB) + +$(BUILDDIR)/loads3m2.o : $(MOUNT_DIR)/../tracker/it/loads3m2.c + $(DO_DUMB) + +$(BUILDDIR)/reads3m2.o : $(MOUNT_DIR)/../tracker/it/reads3m2.c + $(DO_DUMB) + +$(BUILDDIR)/loadxm2.o : $(MOUNT_DIR)/../tracker/it/loadxm2.c + $(DO_DUMB) + +$(BUILDDIR)/readxm2.o : $(MOUNT_DIR)/../tracker/it/readxm2.c + $(DO_DUMB) + +$(BUILDDIR)/loadmod2.o : $(MOUNT_DIR)/../tracker/it/loadmod2.c + $(DO_DUMB) + +$(BUILDDIR)/readmod2.o : $(MOUNT_DIR)/../tracker/it/readmod2.c + $(DO_DUMB) + +$(BUILDDIR)/xmeffect.o : $(MOUNT_DIR)/../tracker/it/xmeffect.c + $(DO_DUMB) + +$(BUILDDIR)/itorder.o : $(MOUNT_DIR)/../tracker/it/itorder.c + $(DO_DUMB) + +$(BUILDDIR)/itmisc.o : $(MOUNT_DIR)/../tracker/it/itmisc.c + $(DO_DUMB) + +#### + +$(BUILDDIR)/cl_demo.o : $(MOUNT_DIR)/cl_demo.c + $(DO_CC) + +$(BUILDDIR)/cl_input.o : $(MOUNT_DIR)/cl_input.c + $(DO_CC) + +$(BUILDDIR)/cl_main.o : $(MOUNT_DIR)/cl_main.c + $(DO_CC) + +$(BUILDDIR)/cl_parse.o : $(MOUNT_DIR)/cl_parse.c + $(DO_CC) + +$(BUILDDIR)/cl_tent.o : $(MOUNT_DIR)/cl_tent.c + $(DO_CC) + +$(BUILDDIR)/chase.o : $(MOUNT_DIR)/chase.c + $(DO_CC) + +$(BUILDDIR)/cmd.o : $(MOUNT_DIR)/cmd.c + $(DO_CC) + +$(BUILDDIR)/common.o : $(MOUNT_DIR)/common.c + $(DO_CC) + +$(BUILDDIR)/console.o : $(MOUNT_DIR)/console.c + $(DO_CC) + +$(BUILDDIR)/crc.o : $(MOUNT_DIR)/crc.c + $(DO_CC) + +$(BUILDDIR)/cvar.o : $(MOUNT_DIR)/cvar.c + $(DO_CC) + +$(BUILDDIR)/draw.o : $(MOUNT_DIR)/draw.c + $(DO_CC) + +$(BUILDDIR)/d_edge.o : $(MOUNT_DIR)/../renderer/d_edge.c + $(DO_CC) + +$(BUILDDIR)/d_fill.o : $(MOUNT_DIR)/../renderer/d_fill.c + $(DO_CC) + +$(BUILDDIR)/d_init.o : $(MOUNT_DIR)/../renderer/d_init.c + $(DO_CC) + +$(BUILDDIR)/d_modech.o : $(MOUNT_DIR)/../renderer/d_modech.c + $(DO_CC) + +$(BUILDDIR)/d_part.o : $(MOUNT_DIR)/../renderer/d_part.c + $(DO_CC) + +$(BUILDDIR)/d_polyse.o : $(MOUNT_DIR)/../renderer/d_polyse.c + $(DO_CC) + +$(BUILDDIR)/d_scan.o : $(MOUNT_DIR)/../renderer/d_scan.c + $(DO_CC) + +$(BUILDDIR)/d_sky.o : $(MOUNT_DIR)/../renderer/d_sky.c + $(DO_CC) + +$(BUILDDIR)/d_sprite.o : $(MOUNT_DIR)/../renderer/d_sprite.c + $(DO_CC) + +$(BUILDDIR)/d_surf.o : $(MOUNT_DIR)/../renderer/d_surf.c + $(DO_CC) + +$(BUILDDIR)/d_vars.o : $(MOUNT_DIR)/../renderer/d_vars.c + $(DO_CC) + +$(BUILDDIR)/d_zpoint.o : $(MOUNT_DIR)/../renderer/d_zpoint.c + $(DO_CC) + +$(BUILDDIR)/host.o : $(MOUNT_DIR)/host.c + $(DO_CC) + +$(BUILDDIR)/host_cmd.o : $(MOUNT_DIR)/host_cmd.c + $(DO_CC) + +$(BUILDDIR)/keys.o : $(MOUNT_DIR)/keys.c + $(DO_CC) + +$(BUILDDIR)/menu.o : $(MOUNT_DIR)/menu.c + $(DO_CC) + +$(BUILDDIR)/mathlib.o : $(MOUNT_DIR)/mathlib.c + $(DO_CC) + +$(BUILDDIR)/model.o : $(MOUNT_DIR)/model.c + $(DO_CC) + +$(BUILDDIR)/model_common.o :$(MOUNT_DIR)/model_common.c + $(DO_CC) + +$(BUILDDIR)/net_dgrm.o : $(MOUNT_DIR)/../network/net_dgrm.c + $(DO_CC) + +$(BUILDDIR)/net_loop.o : $(MOUNT_DIR)/../network/net_loop.c + $(DO_CC) + +$(BUILDDIR)/net_main.o : $(MOUNT_DIR)/../network/net_main.c + $(DO_CC) + +$(BUILDDIR)/net_vcr.o : $(MOUNT_DIR)/../network/net_vcr.c + $(DO_CC) + +$(BUILDDIR)/net_udp.o : $(MOUNT_DIR)/../network/net_udp.c + $(DO_CC) + +$(BUILDDIR)/net_bsd.o : $(MOUNT_DIR)/../network/net_bsd.c + $(DO_CC) + +$(BUILDDIR)/nonintel.o : $(MOUNT_DIR)/nonintel.c + $(DO_CC) + +$(BUILDDIR)/pr_cmds.o : $(MOUNT_DIR)/pr_cmds.c + $(DO_CC) + +$(BUILDDIR)/pr_edict.o : $(MOUNT_DIR)/pr_edict.c + $(DO_CC) + +$(BUILDDIR)/pr_exec.o : $(MOUNT_DIR)/pr_exec.c + $(DO_CC) + +$(BUILDDIR)/r_aclip.o : $(MOUNT_DIR)/../renderer/r_aclip.c + $(DO_CC) + +$(BUILDDIR)/r_alias.o : $(MOUNT_DIR)/../renderer/r_alias.c + $(DO_CC) + +$(BUILDDIR)/r_bsp.o : $(MOUNT_DIR)/../renderer/r_bsp.c + $(DO_CC) + +$(BUILDDIR)/r_light.o : $(MOUNT_DIR)/../renderer/r_light.c + $(DO_CC) + +$(BUILDDIR)/r_draw.o : $(MOUNT_DIR)/../renderer/r_draw.c + $(DO_CC) + +$(BUILDDIR)/r_efrag.o : $(MOUNT_DIR)/../renderer/r_efrag.c + $(DO_CC) + +$(BUILDDIR)/r_edge.o : $(MOUNT_DIR)/../renderer/r_edge.c + $(DO_CC) + +$(BUILDDIR)/r_misc.o : $(MOUNT_DIR)/../renderer/r_misc.c + $(DO_CC) + +$(BUILDDIR)/r_main.o : $(MOUNT_DIR)/../renderer/r_main.c + $(DO_CC) + +$(BUILDDIR)/r_sky.o : $(MOUNT_DIR)/../renderer/r_sky.c + $(DO_CC) + +$(BUILDDIR)/r_sprite.o : $(MOUNT_DIR)/../renderer/r_sprite.c + $(DO_CC) + +$(BUILDDIR)/r_surf.o : $(MOUNT_DIR)/../renderer/r_surf.c + $(DO_CC) + +$(BUILDDIR)/r_part.o : $(MOUNT_DIR)/../renderer/r_part.c + $(DO_CC) + +$(BUILDDIR)/r_vars.o : $(MOUNT_DIR)/../renderer/r_vars.c + $(DO_CC) + +$(BUILDDIR)/screen.o : $(MOUNT_DIR)/screen.c + $(DO_CC) + +$(BUILDDIR)/sbar.o : $(MOUNT_DIR)/sbar.c + $(DO_CC) + +$(BUILDDIR)/sv_main.o : $(MOUNT_DIR)/sv_main.c + $(DO_CC) + +$(BUILDDIR)/sv_phys.o : $(MOUNT_DIR)/sv_phys.c + $(DO_CC) + +$(BUILDDIR)/sv_move.o : $(MOUNT_DIR)/sv_move.c + $(DO_CC) + +$(BUILDDIR)/sv_user.o : $(MOUNT_DIR)/sv_user.c + $(DO_CC) + +$(BUILDDIR)/zone.o :$(MOUNT_DIR)/zone.c + $(DO_CC) + +$(BUILDDIR)/view.o : $(MOUNT_DIR)/view.c + $(DO_CC) + +$(BUILDDIR)/wad.o : $(MOUNT_DIR)/wad.c + $(DO_CC) + +$(BUILDDIR)/world.o : $(MOUNT_DIR)/world.c + $(DO_CC) + +$(BUILDDIR)/tracker_xmms.o : $(MOUNT_DIR)/../tracker/tracker_xmms.c + $(DO_DUMB) `/usr/bin/xmms-config --libs` + +$(BUILDDIR)/cd_null.o : $(MOUNT_DIR)/../audio/cd_null.c + $(DO_CC) + +$(BUILDDIR)/sys_linux.o :$(MOUNT_DIR)/../system/sys_linux.c + $(DO_CC) + +$(BUILDDIR)/vid_x.o: $(MOUNT_DIR)/../video/vid_x.c + $(DO_O_CC) + +$(BUILDDIR)/snd_dma.o : $(MOUNT_DIR)/../audio/snd_dma.c + $(DO_CC) + +$(BUILDDIR)/snd_mem.o : $(MOUNT_DIR)/../audio/snd_mem.c + $(DO_CC) + +$(BUILDDIR)/snd_mix.o : $(MOUNT_DIR)/../audio/snd_mix.c + $(DO_CC) + +$(BUILDDIR)/snd_linux.o :$(MOUNT_DIR)/../audio/snd_linux.c + $(DO_CC) + +$(BUILDDIR)/bot.o :$(MOUNT_DIR)/bot.c + $(DO_CC) + +$(BUILDDIR)/nvs_client.o :$(MOUNT_DIR)/../network/nvs_client.c + $(DO_CC) + +$(BUILDDIR)/nvs_common.o :$(MOUNT_DIR)/../network/nvs_common.c + $(DO_CC) + +$(BUILDDIR)/nvs_server.o :$(MOUNT_DIR)/../network/nvs_server.c + $(DO_CC) + +$(BUILDDIR)/nvs_server_data.o :$(MOUNT_DIR)/../network/nvs_server_data.c + $(DO_CC) + + +##### + +$(BUILDDIR)/d_copy.o : $(MOUNT_DIR)/../asm/d_copy.s + $(DO_AS) + +$(BUILDDIR)/d_draw.o : $(MOUNT_DIR)/../asm/d_draw.s + $(DO_AS) + +$(BUILDDIR)/d_draw16.o : $(MOUNT_DIR)/../asm/d_draw16.s + $(DO_AS) + +$(BUILDDIR)/d_parta.o : $(MOUNT_DIR)/../asm/d_parta.s + $(DO_AS) + +$(BUILDDIR)/d_polysa.o : $(MOUNT_DIR)/../asm/d_polysa.s + $(DO_AS) + +$(BUILDDIR)/d_scana.o : $(MOUNT_DIR)/../asm/d_scana.s + $(DO_AS) + +$(BUILDDIR)/d_spr8.o : $(MOUNT_DIR)/../asm/d_spr8.s + $(DO_AS) + +$(BUILDDIR)/d_varsa.o : $(MOUNT_DIR)/../asm/d_varsa.s + $(DO_AS) + +$(BUILDDIR)/math.o : $(MOUNT_DIR)/../asm/math.s + $(DO_AS) + +$(BUILDDIR)/r_aliasa.o : $(MOUNT_DIR)/../asm/r_aliasa.s + $(DO_AS) + +$(BUILDDIR)/r_drawa.o : $(MOUNT_DIR)/../asm/r_drawa.s + $(DO_AS) + +$(BUILDDIR)/r_edgea.o : $(MOUNT_DIR)/../asm/r_edgea.s + $(DO_AS) + +$(BUILDDIR)/r_varsa.o : $(MOUNT_DIR)/../asm/r_varsa.s + $(DO_AS) + +$(BUILDDIR)/surf16.o : $(MOUNT_DIR)/../asm/surf16.s + $(DO_AS) + +$(BUILDDIR)/surf8.o : $(MOUNT_DIR)/../asm/surf8.s + $(DO_AS) + +$(BUILDDIR)/surf8fst.o : $(MOUNT_DIR)/../asm/surf8fst.s + $(DO_AS) + +$(BUILDDIR)/worlda.o : $(MOUNT_DIR)/../asm/worlda.s + $(DO_AS) + +$(BUILDDIR)/r_aclipa.o : $(MOUNT_DIR)/../asm/r_aclipa.s + $(DO_AS) + +$(BUILDDIR)/snd_mixa.o : $(MOUNT_DIR)/../asm/snd_mixa.s + $(DO_AS) + +$(BUILDDIR)/sys_dosa.o : $(MOUNT_DIR)/../asm/sys_dosa.s + $(DO_AS) + +############################################################################# +# MISC +############################################################################# + +clean: clean-debug clean-release + +clean-debug: + $(MAKE) clean2 BUILDDIR=$(BUILD_DEBUG_DIR) CFLAGS="$(DEBUG_CFLAGS)" + +clean-release: + $(MAKE) clean2 BUILDDIR=$(BUILD_RELEASE_DIR) CFLAGS="$(DEBUG_CFLAGS)" + +clean2: + -rm -f $(NGUNIX_OBJS) diff --git a/tracker/tracker_xmms.c b/tracker/tracker_xmms.c new file mode 100644 index 0000000..2161126 --- /dev/null +++ b/tracker/tracker_xmms.c @@ -0,0 +1,107 @@ +/* +Copyright (C) 2015 Marco "eukara" Hladik + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +*/ + +#include "globaldef.h" +#include + +unsigned int xmms_session = 0; +static int xmms_loop = 1; +static int xmms_track; + +void Tracker_Play(byte track, qboolean looping) +{ + xmms_remote_set_playlist_pos(xmms_session, (int) track); + xmms_remote_play(xmms_session); + xmms_loop = looping == true ? 0 : 1; + xmms_track = (int) track; +} + +void Tracker_Stop(void) +{ + xmms_remote_stop(xmms_session); +} + + +void Tracker_Pause(void) +{ + xmms_remote_pause(xmms_session); +} + + +void Tracker_Resume(void) +{ + xmms_remote_play(xmms_session); +} + +// DO NOTHING +void Tracker_Update(void) +{ + if(xmms_loop) + if(xmms_remote_get_playlist_pos(xmms_session) != xmms_track) + xmms_remote_set_playlist_pos(xmms_session, xmms_track); + +} + +static void XMMS_f (void) +{ + char *command; + int ret; + int n; + + if (Cmd_Argc() < 2) + return; + + command = Cmd_Argv (1); + + if (Q_strcasecmp(command, "play") == 0) + { + Tracker_Play((byte)Q_atoi(Cmd_Argv (2)), false); + return; + } + + if (Q_strcasecmp(command, "stop") == 0) + { + Tracker_Stop(); + return; + } + + if (Q_strcasecmp(command, "pause") == 0) + { + Tracker_Pause(); + return; + } + + if (Q_strcasecmp(command, "resume") == 0) + { + Tracker_Resume(); + return; + } +} + +int Tracker_Init(void) +{ + Cmd_AddCommand ("xmms", XMMS_f); // link DUMB + return 1; +} + + +void Tracker_Shutdown(void) +{ +}