
CC = gcc -mshort -Wall
OPTS = -O

SOURCE = galaxy.c resource.c misc.c
ASSEM = cpxstart.s

OBJECT = $(ASSEM:.s=.o) $(SOURCE:.c=.o) # Reihenfolge beachten
RESOURCE = bild.rsc

HEADER = galaxy.h galx-rsc.h resource.h

DEBUG =

.SUFFIXES: .c .s .o

.c.o:
	$(CC) $(OPTS) $(DEBUG) -c $<

.s.o:
	$(CC) $(OPTS) $(DEBUG) -c $<

.PHONY: galaxy

galaxy: proto.h galaxy.cpx

galaxy.cpx: galaxy.hdr galaxy.cp
	cat galaxy.hdr galaxy.cp >galaxy.cpx

galaxy.cp: $(OBJECT)
	ld -o $@ $(OBJECT) -laes16 -ltm16 -lgnu16
	strip $@

$(OBJECT) : $(HEADER)

proto.h: $(SOURCE)
	prototyp $(SOURCE) >proto.h

resource.h resource.c: galx-rsc.rsc
	krsc2c -a -m -oresource galx-rsc.rsc

rsh.h rsh.c: $(RESOURCE)
	krsc2c -a -m $(RESOURCE)

misc.c: bild-sin.tos
	./bild-sin.tos >misc.c

bild-sin.tos: bild-sin.c galaxy.h rsh.h rsh.c
	$(CC) -o bild-sin.tos bild-sin.c -lpml16 -ltm16
