X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2FMakefile;h=4f772589ba3eeaba45f157e742aac84a497f3b11;hb=6662900032e661381fab820ee80b5c6982ed6278;hp=8961c4d41e74226665bc97d4b5a77083ed0ae1fb;hpb=b89f8d68098b298bd8893141e184dcab63eb6117;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/Makefile b/qcsrc/Makefile index 8961c4d41..4f772589b 100644 --- a/qcsrc/Makefile +++ b/qcsrc/Makefile @@ -1,15 +1,45 @@ SCM := $(shell if [ -d .svn ]; then echo svn; elif [ -d ../.git ]; then echo git; fi) -FTEQCC ?= fteqcc PERL ?= perl +QCCFLAGS_WATERMARK ?= -DWATERMARK='"$(shell git describe)"' -DCVAR_POPCON=1 +QCC ?= gmqcc -FTEQCCFLAGS_WATERMARK ?= -DWATERMARK='"$(shell git describe)"' -DCVAR_POPCON -FTEQCCFLAGS ?= -Werror -Wno-Q302 -O3 -Ono-return_only -Ono-assignment -fno-fastarrays $(FTEQCCFLAGS_EXTRA) $(FTEQCCFLAGS_WATERMARK) -FTEQCCFLAGS_PROGS ?= -FTEQCCFLAGS_MENU ?= - -# 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 ?= +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-uninitialized-global \ + -O3 \ + -fadjust-vector-fields \ + -fftepp \ + -fftepp-predefs \ + -frelaxed-switch \ + -fshort-logic \ + -fno-perl-logic \ + -ftranslatable-strings \ + -fno-initialized-nonconstants \ + -fno-assign-function-types \ + -flno \ + -fcorrect-ternary \ + -fno-single-vector-defs \ + -fcorrect-logic \ + -ftrue-empty-strings \ + -fno-false-empty-strings \ + -futf8 \ + -fno-bail-on-werror \ + -floop-labels \ + -funtyped-nil \ + -fno-permissive \ + -fvariadic-args \ + -DNOTIFICATIONS_DEBUG \ + $(QCCFLAGS_EXTRA) $(QCCFLAGS_WATERMARK) +else +# this. is. fteqccccccccccccccccccc! +QCCFLAGS ?= -Werror -Wno-Q302 -O3 -Ono-return_only -fno-fastarrays $(QCCFLAGS_EXTRA) $(QCCFLAGS_WATERMARK) +endif # xonotic build system overrides this by command line argument to turn off the update-cvarcount step XON_BUILDSYSTEM = @@ -30,18 +60,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"