fteqw/engine/qclib/Makefile
Spoike fceb09fe37 reworked demo playback and interpolation.
added support for recording nq demos, but only if not already on the server.
added capturedriver as a sane way to select between screenshots, avi, or various plugins.
output sound device can now be selected via the menu. not all drivers provide device enumeration (openal and dsound do).
enabled openal, but not using it unless an openal device is explicitly requested as its still a little buggy.
added \"\"" markup in the console.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4427 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-07-26 17:19:06 +00:00

92 lines
No EOL
2.5 KiB
Makefile

COMMON_OBJS=comprout.o hash.o qcc_cmdlib.o qcd_main.o
QCC_OBJS=qccmain.o qcc_pr_comp.o qcc_pr_lex.o
VM_OBJS=pr_exec.o pr_edict.o pr_multi.o initlib.o qcdecomp.o
GTKGUI_OBJS=qcc_gtk.o qccguistuff.o
WIN32GUI_OBJS=qccgui.o qccguistuff.o
TUI_OBJS=qcctui.o
LIB_OBJS=
CC?=gcc
CFLAGS?=-Wall
all: qcc
USEGUI_CFLAGS=
# set to -DUSEGUI when compiling the GUI
BASE_CFLAGS=-ggdb $(USEGUI_CFLAGS)
BASE_LDFLAGS=-s
# set to "" for debugging
DO_CC?=$(CC) $(BASE_CFLAGS) -o $@ -c $< $(CFLAGS)
lib:
R_win_nocyg: $(QCC_OBJS) $(COMMON_OBJS) $(WIN32GUI_OBJS)
$(CC) $(BASE_CFLAGS) -o fteqcc.exe -O3 $(BASE_LDFLAGS) $(QCC_OBJS) $(COMMON_OBJS) $(WIN32GUI_OBJS) -mno-cygwin -mwindows -lcomctl32
R_nocyg: $(QCC_OBJS) $(COMMON_OBJS) $(WIN32GUI_OBJS)
$(CC) $(BASE_CFLAGS) -o fteqcc.exe -O3 $(BASE_LDFLAGS) $(QCC_OBJS) $(COMMON_OBJS) $(WIN32GUI_OBJS) -mno-cygwin -lcomctl32
R_win: $(QCC_OBJS) $(COMMON_OBJS) $(WIN32GUI_OBJS)
$(CC) $(BASE_CFLAGS) -o fteqcc.exe -O3 $(BASE_LDFLAGS) $(QCC_OBJS) $(COMMON_OBJS) $(WIN32GUI_OBJS) -mwindows -lcomctl32
win_nocyg:
$(MAKE) USEGUI_CFLAGS="-DUSEGUI -DQCCONLY" R_win_nocyg
nocyg:
$(MAKE) USEGUI_CFLAGS="-DUSEGUI -DQCCONLY" R_nocyg
win:
$(MAKE) USEGUI_CFLAGS="-DUSEGUI -DQCCONLY" R_win
R_qcc: $(QCC_OBJS) $(COMMON_OBJS) $(TUI_OBJS)
$(CC) $(BASE_CFLAGS) -o fteqcc.bin -O3 $(BASE_LDFLAGS) $(QCC_OBJS) $(TUI_OBJS) $(COMMON_OBJS)
qcc:
$(MAKE) USEGUI_CFLAGS="" R_qcc
qccmain.o: qccmain.c qcc.h
$(DO_CC)
qcc_cmdlib.o: qcc_cmdlib.c qcc.h
$(DO_CC)
qcc_pr_comp.o: qcc_pr_comp.c qcc.h
$(DO_CC)
qcc_pr_lex.o: qcc_pr_lex.c qcc.h
$(DO_CC)
comprout.o: comprout.c qcc.h
$(DO_CC)
hash.o: hash.c qcc.h
$(DO_CC)
qcd_main.o: qcd_main.c qcc.h
$(DO_CC)
qccguistuff.o: qccguistuff.c qcc.h
$(DO_CC)
qcc_gtk.o: qcc_gtk.c qcc.h
$(DO_CC) `pkg-config --cflags gtk+-2.0`
R_gtkgui: $(QCC_OBJS) $(COMMON_OBJS) $(GTKGUI_OBJS)
$(CC) $(BASE_CFLAGS) $(USEGUI_CFLAGS) -o fteqccgui.bin -O3 $(GTKGUI_OBJS) $(QCC_OBJS) $(COMMON_OBJS) `pkg-config --libs gtk+-2.0`
gtkgui:
$(MAKE) USEGUI_CFLAGS="-DUSEGUI -DQCCONLY" R_gtkgui
clean:
$(RM) fteqcc.bin fteqcc.exe $(QCC_OBJS) $(COMMON_OBJS) $(VM_OBJS) $(GTKGUI_OBJS) $(WIN32GUI_OBJS) $(TUI_OBJS)
qcvm.so: $(QCC_OBJS) $(VM_OBJS) $(COMMON_OBJS)
$(CC) $(BASE_CFLAGS) -o $@ -O3 $(BASE_LDFLAGS) $(QCC_OBJS) $(VM_OBJS) $(COMMON_OBJS) -shared
test.o: test.c
$(DO_CC)
testapp.bin: qcvm.so test.o
$(CC) $(BASE_CFLAGS) -o testapp.bin -O3 $(BASE_LDFLAGS) qcvm.so test.o
tests: testapp.bin
@$(foreach a,$(wildcard tests/*.src), echo TEST: $a; ./testapp.bin progs.dat -srcfile $a; echo; echo)
.PHONY: tests