THIS=Makefile-C
VERSION=20060623

SRCOBJS := audio.o hostcall.o keymap.o main.o shortcut.o input.o joystick.o

COMPILER ?= gcc
CC := $(CROSS_COMPILE)$(COMPILER)

SDL_CONFIG := $(shell $(CC) --print-sysroot)/usr/bin/sdl-config
SDL_CFLAGS := $(shell $(SDL_CONFIG) --cflags)
SDL_LIBS := $(shell $(SDL_CONFIG) --libs)

CFLAGS := -O3 -fomit-frame-pointer -Wall -Wno-unused $(SDL_CFLAGS) -DOGG_MUSIC

LIBS := -lvorbisfile -lvorbis -logg -lini $(SDL_LIBS) -lSDL_image

WITH_GL=y
ifeq ($(WITH_GL),y)
	SRCOBJS += gl.o
	LIBS += -lGL -lGLU
	CFLAGS += -DWITH_GL
else
	SRCOBJS += soft.o
endif

OBJS := fe2.s.o host.o \
	$(addprefix src/,$(SRCOBJS))
TARGET := frontier

.PHONY: all $(TARGET) allclean clean

all: $(TARGET)

$(TARGET): fe2.s.c
	$(MAKE) -f $(THIS) gen
	$(CC) $(CFLAGS) $(LIBS) $(OBJS) gen/*.o -o $@

gen: $(patsubst %.c,%.o,$(wildcard gen/*.c)) $(OBJS)

as68k/as68k:
	$(MAKE) -C as68k/

fe2.s.c: as68k/as68k
	mkdir -p gen
	as68k/as68k --output-c fe2.s

clean:
	rm -rf fe2.s.bin $(OBJS) gen fe2.s.c fixups.h $(TARGET)

allclean: clean
	$(MAKE) -C as68k/ clean

# To make a nice clean tarball
dist:
	$(MAKE) -f Makefile-i386 clean
	$(MAKE) -f $(THIS) allclean
	mkdir frontvm3-$(VERSION)
	mkdir frontvm3-$(VERSION)/as68k
	mkdir frontvm3-$(VERSION)/dis68k
	mkdir frontvm3-$(VERSION)/src
	mkdir frontvm3-$(VERSION)/savs
	#mkdir frontvm3-$(VERSION)/sfx
	#mkdir frontvm3-$(VERSION)/music
	cp as68k/* frontvm3-$(VERSION)/as68k
	cp dis68k/* frontvm3-$(VERSION)/dis68k
	cp src/* frontvm3-$(VERSION)/src
	#cp sfx/* frontvm3-$(VERSION)/sfx
	#cp music/* frontvm3-$(VERSION)/music
	cp fe2.s frontvm3-$(VERSION)
	cp m68000.h frontvm3-$(VERSION)
	cp _host.c frontvm3-$(VERSION)
	cp notes.txt frontvm3-$(VERSION)
	cp benchmarks.txt frontvm3-$(VERSION)
	cp README frontvm3-$(VERSION)
	cp TODO frontvm3-$(VERSION)
	cp Makefile-i386 frontvm3-$(VERSION)
	cp Makefile-C frontvm3-$(VERSION)
	cp Makefile-mingw frontvm3-$(VERSION)
	tar cvjf frontvm3-$(VERSION).tar.bz2 frontvm3-$(VERSION)
	rm -rf frontvm3-$(VERSION)

# save bandwidth...
audio-dist:
	mkdir frontvm-audio-$(VERSION)
	mkdir frontvm-audio-$(VERSION)/sfx
	mkdir frontvm-audio-$(VERSION)/music
	cp sfx/* frontvm-audio-$(VERSION)/sfx
	cp music/* frontvm-audio-$(VERSION)/music
	tar cvjf frontvm-audio-$(VERSION).tar.bz2 frontvm-audio-$(VERSION)
	rm -rf frontvm-audio-$(VERSION)

