# ARCADEmini simulator (unix, console)
# version 1.0.2 date 2005-10-24
# part of the ARCADEmini project - http[s]://arcademini.schuermans.info/
# Copyright (C) 2003-2005 sphaera <sphaera@geekness.de>
#                     and 1stein <1stein@schuermans.info>
# Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html

CC=gcc
CFLAGS=-W -Wall $(CFLAGS_EX)
LFLAGS=$(LFLAGS_EX)

.PHONY: all debug normal sdl opti clean

all: normal sdl

debug: CFLAGS_EX=-g -DDEBUG
debug: LFLAGS_EX=
debug: am_sim

normal: CFLAGS_EX=
normal: LFLAGS_EX=
normal: am_sim

opti: CFLAGS_EX=-O2
opti: LFLAGS_EX=-Wl,--strip-all
opti: am_sim

sdl: CFLAGS_EX=-Wall
sdl: LFLAGS_EX=-lpthread -lSDL
sdl: am_sdlsim

am_sim: am_dev.o display.o input.o main.c am_dev.h display.h input.h
	$(CC) $(CFLAGS) $(LFLAGS) -o am_sim am_dev.o display.o input.o main.c

am_sdlsim: am_dev.o sdldisplay.o input.o main.c am_dev.h display.h input.h
	$(CC) $(CFLAGS) $(LFLAGS) -o am_sdlsim am_dev.o sdldisplay.o input.o main.c

am_dev.o: am_dev.c am_dev.h
	$(CC) $(CFLGAS) -c -o am_dev.o am_dev.c

sdldisplay.o: sdldisplay.c display.h
	$(CC) $(CFLAGS) -c -o sdldisplay.o sdldisplay.c

display.o: display.c display.h am_dev.h
	$(CC) $(CFLAGS) -c -o display.o display.c

input.o: input.c input.h am_dev.h
	$(CC) $(CFLAGS) -c -o input.o input.c

clean:
	rm -f *.o
	rm -f am_sim am_sdlsim
