1 SCM := $(shell if [ -d .svn ]; then echo svn; elif [ -d ../.git ]; then echo git; fi)
4 ZIP ?= 7za a -tzip -mx=9
5 ZIPEXCLUDE ?= -x\!*.pk3 -xr\!\.svn -x\!qcsrc
8 FTEQCCFLAGS_WATERMARK ?= -DWATERMARK='"^1$(shell git describe) TEST BUILD"'
9 FTEQCCFLAGS ?= -Werror -Wall -Wno-mundane -O3 -Ono-c -Ono-cs -flo $(FTEQCCFLAGS_EXTRA) $(FTEQCCFLAGS_WATERMARK)
13 # NOTE: use -DUSE_FTE instead of -TFTE here!
14 # It will automagically add an engine check with -TID and then change back to -TFTE
15 FTEQCCFLAGS_CSPROGS ?=
17 # xonotic build system overrides this by command line argument to turn off the update-cvarcount step
22 .PHONY: update-cvarcount
24 [ "$(XON_BUILDSYSTEM)" = "" ] || [ "$(XON_BUILDSYSTEM)" = "1" ]
25 [ "$(XON_BUILDSYSTEM)" = "1" ] || { DO_NOT_RUN_MAKE=1 sh update-cvarcount.sh; }
32 qc-recursive: menu.dat progs.dat csprogs.dat
35 skin: gfx/menu/default/skinvalues.txt
39 rm -f progs.dat menu.dat csprogs.dat
41 csprogs.dat: qcsrc/client/*.* qcsrc/common/*.* qcsrc/warpzonelib/*.*
42 @echo make[1]: Entering directory \`$(PWD)/qcsrc/client\'
43 cd qcsrc/client && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_CSPROGS)
45 progs.dat: qcsrc/server/*.* qcsrc/common/*.* qcsrc/server/*/*.* qcsrc/server/*/*/*.* qcsrc/warpzonelib/*.*
46 @echo make[1]: Entering directory \`$(PWD)/qcsrc/server\'
47 cd qcsrc/server && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_PROGS)
49 menu.dat: qcsrc/menu/*.* qcsrc/menu/*/*.* qcsrc/common/*.*
50 @echo make[1]: Entering directory \`$(PWD)/qcsrc/menu\'
51 cd qcsrc/menu && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_MENU)
53 gfx/menu/default/skinvalues.txt: qcsrc/menu/skin-customizables.inc
54 $(PERL) qcsrc/menu/skin-customizables.inc > gfx/menu/default/skinvalues.txt
58 cd qcsrc/testcase && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_CSPROGS) -DTESTCASE="$$TESTCASE"