
CC = gcc -mshort -Wall
OPTS = -O2

SOURCE = eyes.c rsh.c sincos.c
ASSEM = cpxstart.s

OBJECT = $(ASSEM:.s=.o) $(SOURCE:.c=.o) # Reihenfolge beachten
HEADER = eyes.h rsh.h eyes-rsc.h
RESOURCE = eyes-rsc.rsc

DEBUG =

.SUFFIXES: .c .s .o

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

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

.PHONY: eyes

eyes: proto.h eyes.cpx

eyes.cpx: eyes.hdr eyes.cp
	cat eyes.hdr eyes.cp >eyes.cpx

eyes.cp: $(OBJECT)
	ld -o $@ $(OBJECT) -laes16 -ltm16 -lgnu16
	xstrip $@

$(OBJECT) : $(HEADER)

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

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

sincos.c: sintab.tos eyes.h
	./sintab.tos >sincos.c

sintab.tos: sintab.c eyes.h
	$(CC) -o sintab.tos sintab.c -lpml16 -ltm16
