#
# Environment definition
#
# Nothing.

#
# Build.
#
all: prepare konkon.x BENTI/BENTI.x

prepare:
	cd devs
	cd x68
	make
	cd ..
	cd ..
	cd core
	make
	cd ..

konkon.x: konkon.o core/bin/koncore.a core/bin/stage.a core/bin/enemy.a core/bin/boss.a devs/x68/bin/devs.a devs/x68/bin/GTNLIB.a libs/x68/ZMSCLIB.A
	gcc -o konkon.x konkon.o core/bin/koncore.a core/bin/stage.a core/bin/enemy.a core/bin/enemy2.a core/bin/boss.a devs/x68/bin/devs.a devs/x68/bin/GTNLIB.a libs/x68/ZMSCLIB.A -ldos -liocs

BENTI/BENTI.x: BENTI/BENTI.c
	gcc -O -fstrength-reduce -fomit-frame-pointer -finline-functions BENTI/BENTI.C -o BENTI/BENTI.x devs/x68/bin/GTNLIB.a -liocs -ldos

konkon.o: konkon.c core/koncore.h core/game_context.h core/structs.h devs/memory_map_buffer.h
	gcc -O -c -fstrength-reduce -fomit-frame-pointer -finline-functions konkon.c

clean:
	-del /Y konkon.x
	-del /Y konkon.o
	cd core
	-make clean
	cd ..
	cd devs
	cd x68
	-make clean
	cd ..
	cd ..
	-del /Y BENTI\BENTI.x
