X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2FMakefile;h=fdd9fffff56062357fe277bca02a41131aa2c3c2;hb=57ac8ecea3270c25ecf0df433c885ecebb0f15df;hp=badc3ac1c2ca5cd0a721278f4647e8ade92fb2e9;hpb=729f9418f7e18157d8c9f76877ba5f7744017320;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/Makefile b/qcsrc/Makefile index badc3ac1c..fdd9fffff 100644 --- a/qcsrc/Makefile +++ b/qcsrc/Makefile @@ -1,24 +1,34 @@ SCM := $(shell if [ -d .svn ]; then echo svn; elif [ -d ../.git ]; then echo git; fi) PERL ?= perl +QCCFLAGS_WATERMARK ?= -DWATERMARK='"$(shell git describe)"' -DCVAR_POPCON=1 +QCC ?= fteqcc -ifdef XONOTIC_USE_FTEQCC -FTEQCC ?= gmqcc -FTEQCCFLAGS_WATERMARK ?= -FTEQCCFLAGS ?= -std=fteqcc -fshort-logic -O1 -flno $(FTEQCCFLAGS_EXTRA) $(FTEQCCFLAGS_WATERMARK) -FTEQCCFLAGS_PROGS ?= -FTEQCCFLAGS_MENU ?= +VERSION_MESSAGE = $(shell cd server && $(QCC) --version --help) +ifneq (,$(findstring GMQCC,$(VERSION_MESSAGE))) +# this is gmqcc +QCCFLAGS ?= \ + -std=fteqcc \ + -Werror -Wall \ + -Wno-field-redeclared \ + -Wno-double-declaration \ + -Wno-assign-function-types \ + -Wno-unused-variable \ + -O3 \ + -fftepp \ + -ftranslatable-strings \ + -fadjust-vector-fields \ + -fassign-function-types \ + -fcorrect-ternary \ + -fcorrect-logic \ + -ftrue-empty-strings \ + -fshort-logic \ + -flno \ + $(QCCFLAGS_EXTRA) $(QCCFLAGS_WATERMARK) else -FTEQCC ?= fteqcc -FTEQCCFLAGS_WATERMARK ?= -DWATERMARK='"$(shell git describe)"' -DCVAR_POPCON -FTEQCCFLAGS ?= -Werror -Wno-Q302 -O3 -Ono-return_only -fno-fastarrays $(FTEQCCFLAGS_EXTRA) $(FTEQCCFLAGS_WATERMARK) -FTEQCCFLAGS_PROGS ?= -FTEQCCFLAGS_MENU ?= +# this. is. fteqccccccccccccccccccc! +QCCFLAGS ?= -Werror -Wno-Q302 -O3 -Ono-return_only -fno-fastarrays $(QCCFLAGS_EXTRA) $(QCCFLAGS_WATERMARK) endif -# NOTE: use -DUSE_FTE instead of -TFTE here! -# It will automagically add an engine check with -TID and then change back to -TFTE -FTEQCCFLAGS_CSPROGS ?= - # xonotic build system overrides this by command line argument to turn off the update-cvarcount step XON_BUILDSYSTEM = @@ -38,18 +48,18 @@ clean: FILES_CSPROGS = $(shell find client common warpzonelib csqcmodellib -type f -not -name fteqcc.log -not -name qc.asm) $(wildcard server/w_*.qc) ../csprogs.dat: $(FILES_CSPROGS) @echo make[1]: Entering directory \`$(PWD)/client\' - cd client && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_CSPROGS) + cd client && $(QCC) $(QCCFLAGS) FILES_PROGS = $(shell find server common warpzonelib csqcmodellib -type f -not -name fteqcc.log -not -name qc.asm) $(wildcard server/w_*.qc) ../progs.dat: $(FILES_PROGS) @echo make[1]: Entering directory \`$(PWD)/server\' - cd server && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_PROGS) + cd server && $(QCC) $(QCCFLAGS) FILES_MENU = $(shell find menu common warpzonelib -type f -not -name fteqcc.log -not -name qc.asm) $(wildcard server/w_*.qc) ../menu.dat: $(FILES_MENU) @echo make[1]: Entering directory \`$(PWD)/menu\' - cd menu && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_MENU) + cd menu && $(QCC) $(QCCFLAGS) .PHONY: testcase testcase: - cd testcase && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_CSPROGS) -DTESTCASE="$$TESTCASE" + cd testcase && $(QCC) $(QCCFLAGS) -DTESTCASE="$$TESTCASE"