]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/Makefile
pk3 csprogs: fix logic error when switching to csprogs that aren't in any pk3
[xonotic/xonotic-data.pk3dir.git] / qcsrc / Makefile
index 20d935e617f2167b6a06fefc4168e9508b96b3bd..45360c60c19ff9ae2799e8aecb0c8ee20ada8b36 100644 (file)
@@ -1,8 +1,10 @@
 SCM := $(shell if [ -d .svn ]; then echo svn; elif [ -d ../.git ]; then echo git; fi)
 PERL ?= perl
 QCCFLAGS_WATERMARK ?= $(shell git describe)
+CPP := cc -xc -E
 QCC ?= gmqcc
 NDEBUG ?= 1
+PROGS_OUT ?= $(CURDIR)/..
 BUILD_MOD ?= 0
 
 QCCVERSIONFILE := qccversion.$(shell (cd server && $(QCC) --version) > qccversion.txt && git hash-object qccversion.txt)
@@ -35,12 +37,12 @@ XON_BUILDSYSTEM =
 all: qc
 
 .PHONY: qc
-qc: ../menu.dat ../progs.dat ../csprogs.dat
+qc: $(PROGS_OUT)/menu.dat $(PROGS_OUT)/progs.dat $(PROGS_OUT)/csprogs.dat
 
 .PHONY: clean
 clean:
-       rm -f ../progs.dat ../menu.dat ../csprogs.dat
-       rm -f tmp/*.qc tmp/*.d tmp/*.txt
+       rm -f $(PROGS_OUT)/{csprogs,progs,menu}.dat
+       rm -f ../.tmp/*.{qc,d,txt}
 
 $(QCCVERSIONFILE):
        $(RM) qccversion.*
@@ -51,20 +53,20 @@ export CPP
 export QCCDEFS
 export QCCFLAGS
 
-../csprogs.dat: client/progs.inc $(QCCVERSIONFILE)
+$(PROGS_OUT)/csprogs.dat: client/progs.inc $(QCCVERSIONFILE)
        @echo make[1]: Entering directory \`$(PWD)/client\'
        sh ./qcc.sh client $@ $<
--include tmp/client.d
+-include ../.tmp/client.d
 
-../progs.dat: server/progs.inc $(QCCVERSIONFILE)
+$(PROGS_OUT)/progs.dat: server/progs.inc $(QCCVERSIONFILE)
        @echo make[1]: Entering directory \`$(PWD)/server\'
        sh ./qcc.sh server $@ $<
--include tmp/server.d
+-include ../.tmp/server.d
 
-../menu.dat: menu/progs.inc $(QCCVERSIONFILE)
+$(PROGS_OUT)/menu.dat: menu/progs.inc $(QCCVERSIONFILE)
        @echo make[1]: Entering directory \`$(PWD)/menu\'
        sh ./qcc.sh menu $@ $<
--include tmp/menu.d
+-include ../.tmp/menu.d
 
 .PHONY: testcase
 testcase: