# Makefile for game "panzer" for VgaGames3

CFLAGS = -W -Wall -O2 -fsigned-char -g
VGAG_CFLAGS = `vgagames3-config --cflags`
VGAG_LIBS = `vgagames3-config --libs`
VGAG_VERSION_MAIOR = `vgagames3-config --version-maior`
VGAG_VERSION_MINOR = `vgagames3-config --version-minor`

# files
GAME = panzer
HFILES = main.h obj-ground.h obj-shot.h obj-tank.h obj-wall.h
OBJ = keys.o main.o misc.o mymenu.o nw.o ofunc.o plysel.o \
	obj-ground_wall.o obj-shot.o obj-tank.o \
	objobj-shot-shot.o objobj-shot-tank.o objobj-shot-wall.o objobj-tank-tank.o objobj-tank-wall.o


# external make-directives

all: version $(GAME)

version:
	@if test $(VGAG_VERSION_MAIOR) -ne 1 || test $(VGAG_VERSION_MINOR) -lt 3; then \
	  echo "*** VgaGames3 version 1.3 or higher is needed ***" >&2; \
	  exit 1; \
	fi

clean:
	rm -f files/settings.save
	rm -f *.o
	rm -f $(GAME)


# internal make-directives

$(GAME): $(OBJ)
	$(CC) $(OBJ) $(VGAG_LIBS) -o $(GAME)

keys.o: keys.c $(HFILES)
	$(CC) $(CFLAGS) $(VGAG_CFLAGS) -c keys.c

main.o: main.c $(HFILES)
	$(CC) $(CFLAGS) $(VGAG_CFLAGS) -c main.c

misc.o: misc.c $(HFILES)
	$(CC) $(CFLAGS) $(VGAG_CFLAGS) -c misc.c

mymenu.o: mymenu.c $(HFILES)
	$(CC) $(CFLAGS) $(VGAG_CFLAGS) -c mymenu.c

nw.o: nw.c $(HFILES)
	$(CC) $(CFLAGS) $(VGAG_CFLAGS) -c nw.c

ofunc.o: ofunc.c $(HFILES)
	$(CC) $(CFLAGS) $(VGAG_CFLAGS) -c ofunc.c

plysel.o: plysel.c $(HFILES)
	$(CC) $(CFLAGS) $(VGAG_CFLAGS) -c plysel.c

obj-ground_wall.o: obj-ground_wall.c $(HFILES)
	$(CC) $(CFLAGS) $(VGAG_CFLAGS) -c obj-ground_wall.c

obj-shot.o: obj-shot.c $(HFILES)
	$(CC) $(CFLAGS) $(VGAG_CFLAGS) -c obj-shot.c

obj-tank.o: obj-tank.c $(HFILES)
	$(CC) $(CFLAGS) $(VGAG_CFLAGS) -c obj-tank.c

objobj-shot-shot.o: objobj-shot-shot.c $(HFILES)
	$(CC) $(CFLAGS) $(VGAG_CFLAGS) -c objobj-shot-shot.c

objobj-shot-tank.o: objobj-shot-tank.c $(HFILES)
	$(CC) $(CFLAGS) $(VGAG_CFLAGS) -c objobj-shot-tank.c

objobj-shot-wall.o: objobj-shot-wall.c $(HFILES)
	$(CC) $(CFLAGS) $(VGAG_CFLAGS) -c objobj-shot-wall.c

objobj-tank-tank.o: objobj-tank-tank.c $(HFILES)
	$(CC) $(CFLAGS) $(VGAG_CFLAGS) -c objobj-tank-tank.c

objobj-tank-wall.o: objobj-tank-wall.c $(HFILES)
	$(CC) $(CFLAGS) $(VGAG_CFLAGS) -c objobj-tank-wall.c

