TARGET = pyldin

all:	$(TARGET)

CC := gcc
CXX := g++
OPT_FLAGS := -O3 -fomit-frame-pointer -funroll-loops -mcpu=athlon
CFLAGS = $(OPT_FLAGS) -fno-exceptions -fno-rtti -Isrc/include
CXXFLAGS = $(CFLAGS) `sdl-config --cflags`
LDFLAGS = $(OPT_LIBS) -s  `sdl-config --libs` -lz

OBJS  = src/core/floppy.o src/core/virtkbd.o src/core/mc6800.o 
OBJS += src/target/sdl/pyldin.o src/target/sdl/wave.o src/target/sdl/screen.o src/target/sdl/discs.o

$(TARGET): $(OBJS)
	$(CXX) -o $@ $(OBJS) $(LDFLAGS) $(CXXFLAGS)

clean:
	rm -f $(OBJS) $(TARGET)

install:
	mkdir -p $(DESTDIR)/usr/share/pyldin
	cp -a share		$(DESTDIR)/usr/share/pyldin/
	cp -f pyldin		$(DESTDIR)/usr/share/pyldin/
	mkdir -p $(DESTDIR)/usr/share/applications
	mkdir -p $(DESTDIR)/usr/share/pixmaps
	cp -f pyldin.desktop	$(DESTDIR)/usr/share/applications/
	cp -f pyldin.png	$(DESTDIR)/usr/share/pixmaps/
	mkdir -p $(DESTDIR)/usr/bin
	cp -f pyldin.run	$(DESTDIR)/usr/bin/
	chmod 755 $(DESTDIR)/usr/bin/pyldin.run
