# Change these to install somewhere else
# System wide:
PACKAGE_DATA_DIR=/usr/share/$(TARGET)/
BINDIR=/usr/bin/
DOCDIR=/usr/share/doc/$(TARGET)/

# Local:
#PACKAGE_DATA_DIR=$(HOME)/Games/$(TARGET)/
#BINDIR=$(HOME)/Games/$(TARGET)/
#DOCDIR=$(HOME)/Games/$(TARGET)/

# The current folder:
#PACKAGE_DATA_DIR=./data/
#BINDIR=./
#DOCDIR=./

# Choose ONE of these and comment the other
#FONT_USE_PIXMAP=-DUSE_PIXMAP_FONT
FONT_USE_SDL_TTF=-lSDL_ttf

# USE_SDL_GFX=-lSDL_gfx

# You won't need to alter these
TARGET=gnurobbo
SOURCES=$(wildcard *.c)
OBJECTS=$(patsubst %.c, %.o, $(SOURCES))
VERSION=`cat VERSION`

# These should be ok for most
CC=gcc
CFLAGS=-O3 -pipe -Wall -fomit-frame-pointer -I/usr/include `sdl-config --cflags` -DPLATFORM_PC -DVERSION=\"$(VERSION)\" -DPACKAGE_DATA_DIR=\"$(PACKAGE_DATA_DIR)/\" $(FONT_USE_PIXMAP) `pkg-config --cflags libosso` -DHILDON
LINK=gcc
LDFLAGS=-L/usr/lib
LIBS=`sdl-config --libs` $(FONT_USE_SDL_TTF) `pkg-config --libs libosso` $(USE_SDL_GFX)

# You won't need to alter anything below
all: $(SOURCES) $(TARGET)

$(TARGET): $(OBJECTS)
	$(LINK) $(LDFLAGS) $(OBJECTS) $(LIBS) -o $@

%.o: %.c
	$(CC) $(CFLAGS) -c $< -o $@

.PHONY: all clean install

clean:
	rm $(OBJECTS)

install:
	@if [[ "$(PACKAGE_DATA_DIR)" == ./* ]] ; then \
	echo "Installing into the current folder is not allowed."; \
	exit 2; \
	fi			
	mkdir -p $(DESTDIR)$(PACKAGE_DATA_DIR)/levels
	mkdir -p $(DESTDIR)$(PACKAGE_DATA_DIR)/rob
	mkdir -p $(DESTDIR)$(PACKAGE_DATA_DIR)/n8x0
	mkdir -p $(DESTDIR)$(PACKAGE_DATA_DIR)/skins/original
	mkdir -p $(DESTDIR)$(PACKAGE_DATA_DIR)/skins/tronic
	mkdir -p $(DESTDIR)$(PACKAGE_DATA_DIR)/locales/en_GB
	mkdir -p $(DESTDIR)$(PACKAGE_DATA_DIR)/locales/pl_PL
	mkdir -p $(DESTDIR)$(PACKAGE_DATA_DIR)/locales/de_DE
	mkdir -p $(DESTDIR)$(PACKAGE_DATA_DIR)/locales/sk_SK
	mkdir -p $(DESTDIR)$(PACKAGE_DATA_DIR)/locales/sv_SE
	mkdir -p $(DESTDIR)$(BINDIR)
	mkdir -p $(DESTDIR)$(DOCDIR)
	cp data/levels/* $(DESTDIR)$(PACKAGE_DATA_DIR)/levels/
	cp data/rob/*.bmp $(DESTDIR)$(PACKAGE_DATA_DIR)/rob/
	cp data/skins/original/*.bmp data/skins/original/skinrc $(DESTDIR)$(PACKAGE_DATA_DIR)/skins/original/
	cp data/skins/tronic/*.bmp data/skins/tronic/skinrc $(DESTDIR)$(PACKAGE_DATA_DIR)/skins/tronic/
	@if [ -n "$(FONT_USE_SDL_TTF)" ] ; then \
	cp data/skins/original/*ttf $(DESTDIR)$(PACKAGE_DATA_DIR)/skins/original/; \
	cp data/skins/tronic/*ttf $(DESTDIR)$(PACKAGE_DATA_DIR)/skins/tronic/; \
	fi			
	cp data/locales/en_GB/* $(DESTDIR)$(PACKAGE_DATA_DIR)/locales/en_GB/
	cp data/locales/pl_PL/* $(DESTDIR)$(PACKAGE_DATA_DIR)/locales/pl_PL/
	cp data/locales/de_DE/* $(DESTDIR)$(PACKAGE_DATA_DIR)/locales/de_DE/
	cp data/locales/sk_SK/* $(DESTDIR)$(PACKAGE_DATA_DIR)/locales/sk_SK/
	cp data/locales/sv_SE/* $(DESTDIR)$(PACKAGE_DATA_DIR)/locales/sv_SE/
	cp $(TARGET) $(DESTDIR)$(BINDIR)/
	cp ChangeLog NEWS COPYING README $(DESTDIR)$(DOCDIR)/
	cp gnurobbo.desktop $(DESTDIR)$(PACKAGE_DATA_DIR)/
	cp gnurobbo.service $(DESTDIR)$(PACKAGE_DATA_DIR)/
	cp gnurobbo.png $(DESTDIR)$(PACKAGE_DATA_DIR)/
	cp data/n8x0/* $(DESTDIR)$(PACKAGE_DATA_DIR)/n8x0/
	@if [ -n "$(FONT_USE_SDL_TTF)" ] ; then \
	cp LICENSE-ttf $(DESTDIR)$(DOCDIR)/; \
	fi			



