fteqw/engine/qclib/Makefile
Spoike 9e8bb446f4 implemented pm_stepdown.
attempt to implement 'simple csqc' api.
handle qw+nq gunshot+blood+lightning differently - they do actually have different particle spawn patterns (qw is a single point, so spreads wider).
fix q3ui logo mesh thing. work around q3ui player meshes on d3d.
split video and renderer latching, so vid_reload delatches more stuff.
fix autosprite+autosprite2 in 6 different renderers...
added fog volumes to d3d9 renderer.
using matrix hacks instead of glDepthRange, this should give more consistent behaviour, especially now that we have r_viewmodel_fov.
small cleanup for gl shadowmaps to make the interface more consistent with other renderers.
added patchDef2 parsing to fte's .map loader, doesn't actually use it though.
some fixes for q3's shaders, including to try to get overbright working better.
updated customskin api to give more control.
first attempt at a packager system for fteqccgui. probably useless, but whatever.
menusys changes to try to support QSS's csqc.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5200 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-01-22 19:18:04 +00:00

105 lines
No EOL
2.8 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 packager.o
TUI_OBJS=qcctui.o
LIB_OBJS=
CC?=gcc
CFLAGS?=-Wall
all: help qcc
help:
@echo for fteqccgui: win or nocyg
@echo for commandline: qcc
@echo for debug builds, add: DEBUG=1
@echo
USEGUI_CFLAGS=
# set to -DUSEGUI when compiling the GUI
BASE_CFLAGS=$(USEGUI_CFLAGS)
ifneq ($(DEBUG),)
BASE_CFLAGS+=-ggdb
else
BASE_LDFLAGS+=-s
endif
BASE_LDFLAGS+=-lz
# 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 -lole32 -lshlwapi
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 -lole32 -lshlwapi
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 -lole32 -lshlwapi
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) -lm $(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)
packager.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; rm progs.dat; ./testapp.bin progs.dat -srcfile $a; echo; echo)
.PHONY: tests