]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - Makefile
add the nexball textures from nexcompat
[xonotic/xonotic-data.pk3dir.git] / Makefile
1 SCM := $(shell if [ -d .svn ]; then echo svn; elif [ -d ../.git ]; then echo git; fi)
2 FTEQCC ?= fteqcc
3 PERL ?= perl
4 ZIP ?= 7za a -tzip -mx=9
5 ZIPEXCLUDE ?= -x\!*.pk3 -xr\!\.svn -x\!qcsrc
6 DIFF ?= diff
7
8 FTEQCCFLAGS_WATERMARK ?= -DWATERMARK='"^1$(shell git describe) TEST BUILD"'
9 #FTEQCCFLAGS ?= -Werror -Wno-Q205 -Wno-Q302 -O3 -Ono-c -Ono-cs $(FTEQCCFLAGS_EXTRA) $(FTEQCCFLAGS_WATERMARK)
10 FTEQCCFLAGS ?= -Wno-Q302 -O3 -Ono-c -Ono-cs $(FTEQCCFLAGS_EXTRA) $(FTEQCCFLAGS_WATERMARK)
11 FTEQCCFLAGS_PROGS ?=
12 FTEQCCFLAGS_MENU ?=
13
14 # NOTE: use -DUSE_FTE instead of -TFTE here!
15 # It will automagically add an engine check with -TID and then change back to -TFTE
16 FTEQCCFLAGS_CSPROGS ?= 
17
18 # xonotic build system overrides this by command line argument to turn off the update-cvarcount step
19 XON_BUILDSYSTEM =
20
21 all: qc
22
23 .PHONY: update-cvarcount
24 update-cvarcount:
25         [ "$(XON_BUILDSYSTEM)" = "" ] || [ "$(XON_BUILDSYSTEM)" = "1" ]
26         [ "$(XON_BUILDSYSTEM)" = "1" ] || { DO_NOT_RUN_MAKE=1 sh update-cvarcount.sh; }
27
28 .PHONY: qc
29 qc: update-cvarcount
30         $(MAKE) qc-recursive
31
32 .PHONY: qc-recursive
33 qc-recursive: menu.dat progs.dat csprogs.dat
34
35 .PHONY: skin
36 skin: gfx/menu/default/skinvalues.txt
37
38 .PHONY: clean
39 clean:
40         rm -f progs.dat menu.dat csprogs.dat
41
42 FILES_CSPROGS = qcsrc/client/progs.src $(shell sed '/\.dat/d; s,//.*,,; s,[^    ],qcsrc/client/&,' < qcsrc/client/progs.src)
43 csprogs.dat: $(FILES_CSPROGS)
44         @echo make[1]: Entering directory \`$(PWD)/qcsrc/client\'
45         cd qcsrc/client && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_CSPROGS)
46
47 FILES_PROGS = qcsrc/server/progs.src $(shell sed '/\.dat/d; s,//.*,,; s,[^      ],qcsrc/server/&,' < qcsrc/server/progs.src)
48 progs.dat: $(FILES_PROGS)
49         @echo make[1]: Entering directory \`$(PWD)/qcsrc/server\'
50         cd qcsrc/server && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_PROGS)
51
52 FILES_MENU = qcsrc/menu/progs.src $(shell sed '/\.dat/d; s,//.*,,; s,[^         ],qcsrc/menu/&,' < qcsrc/menu/progs.src)
53 menu.dat: $(FILES_MENU)
54         @echo make[1]: Entering directory \`$(PWD)/qcsrc/menu\'
55         cd qcsrc/menu && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_MENU)
56
57 gfx/menu/default/skinvalues.txt: qcsrc/menu/skin-customizables.inc
58         $(PERL) qcsrc/menu/skin-customizables.inc > gfx/menu/default/skinvalues.txt
59
60 .PHONY: testcase
61 testcase:
62         cd qcsrc/testcase && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_CSPROGS) -DTESTCASE="$$TESTCASE"