# Host build of the Space Taxi simulation core for trace comparison.
ST  := ../../examples/spacetaxi
CC  ?= gcc
CFLAGS := -O1 -g -Wall -Wextra -std=c99 -I$(ST)
SRCS := stsim.c $(ST)/stSim.c $(ST)/stFare.c $(ST)/stHooks.c $(ST)/stLevelFile.c $(ST)/stTitle.c $(ST)/stC64Data.c $(ST)/stLevelCels.c

stsim: $(SRCS) $(ST)/stSim.h $(ST)/stC64Data.h $(ST)/stDemoStreams.h gateStreams.h
	$(CC) $(CFLAGS) $(SRCS) -o $@

# The fixture generator for gateStreams.h. Not built by default: it runs
# a long search and is only needed when a level's stream is (re)made.
recorder: recorder.c $(SRCS:stsim.c=) $(ST)/stSim.h
	$(CC) $(CFLAGS) recorder.c $(ST)/stSim.c $(ST)/stFare.c $(ST)/stHooks.c \
	    $(ST)/stLevelFile.c $(ST)/stTitle.c $(ST)/stC64Data.c -o $@

clean:
	rm -f stsim recorder
