# QuakeWorld Forever Client Makefile for linux...
#
# To be perfectly honest the problem was that zoid's
# Makefile was pretty hard to understand. This is a new one.
#
#

.PHONY: all svga x11 gl svga-release x11-release gl-release serv-release clean pristine

all:
	@echo Choose svga, x11, gl, serv, svga-release, x11-release, gl-release, serv-release, clean or pristine
	@echo The make targets that end in release will do optimisation.
	
svga:
	cd client; rm -f .rule_file; ${MAKE} clean; ${MAKE} generate_qwcl.svga; ${MAKE}
x11:
	cd client; rm -f .rule_file; ${MAKE} clean; ${MAKE} generate_qwcl.x11; ${MAKE}
gl:
	cd client; rm -f .rule_file; ${MAKE} clean; ${MAKE} generate_qwcl.gl; ${MAKE}
serv:
	cd client; make cipherdata.c
	cd server; rm -f .rule_file; ${MAKE} clean; ${MAKE} -f Makefile generate; ${MAKE} -f Makefile

svga-release:
	cd client; rm -f .rule_file; ${MAKE} clean; RELEASE=true ${MAKE} generate_qwcl.svga; ${MAKE}
x11-release:
	cd client; rm -f .rule_file; ${MAKE} clean; RELEASE=true ${MAKE} generate_qwcl.x11; ${MAKE}
gl-release:
	cd client; rm -f .rule_file; ${MAKE} clean; RELEASE=true ${MAKE} generate_qwcl.gl; ${MAKE}
serv-release:
	cd client; make cipherdata.c
	cd server; rm -f .rule_file; ${MAKE} clean; RELEASE=true ${MAKE} -f Makefile generate; ${MAKE} -f Makefile

clean:
	cd client; rm -f .rule_file; ${MAKE} clean; cd ../server; rm -f .rule_file; ${MAKE} -f Makefile clean

pristine: clean
	cd client; rm -f .rule_file; ${MAKE} pristine; cd ../server; rm -f .rule_file; ${MAKE} -f Makefile pristine

