##############
## Makefile ##
##############
#
#  Makefile for pak48.bitlit
#  Author: Nazalassa
#  Got inspiration from pak48.Excentrique makefile
#
##############

MAKEOBJ ?= ./makeobj

DESTDIR  ?= .
PAKDIR   ?= $(DESTDIR)/pak48.bitlit
ADDONDIR ?= $(DESTDIR)/addons/pak48.bitlit
THEMEDEST  ?= $(DESTDIR)/addons/themes
PAKVERSION ?= "0.0e"
DESTFILE ?= pak48.bitlit_$(PAKVERSION)

COPYDIRS :=
COPYDIRS += config
COPYDIRS += scenario
COPYDIRS += sound
COPYDIRS += text

DIRS48 :=
DIRS48 += buildings
DIRS48 += cursor
DIRS48 += goods
DIRS48 += industry
DIRS48 += menu
DIRS48 += misc
DIRS48 += symbols
DIRS48 += terrain
DIRS48 += vehicles
DIRS48 += wayobj
DIRS48 += ways
# Add more directories

DIRS64 :=
DIRS64 += symbols64

DIRS128 :=
DIRS128 += logo/big

THEMEDIR :=
THEMEDIR += theme

ADDONDIRS48 :=

DIRS := $(DIRS48) $(DIRS64) $(DIRS128) #$(THEMEDIR)
ADDONDIRS := $(ADDONDIRS48)

all: version copy $(DIRS) tar

archives: tar zip

tar: $(DESTFILE).tgz
zip: $(DESTFILE).zip

version:
	@echo "'-> version"
	@mkdir -p $(PAKDIR)
	@rm -f terrain/outside.dat
	@echo "Obj=ground" > terrain/outside.dat
	@echo "Name=Outside" >> terrain/outside.dat
	@echo "copyright=pak48.bitlit v$(PAKVERSION)" >> terrain/outside.dat
	@echo "Image[0][0]=outside.0.0" >> terrain/outside.dat
	@echo "---------------" >> terrain/outside.dat

copy: $(COPYDIRS)

clean:
	@echo "'-> clean"
	@rm -fr $(PAKDIR) $(THEMEDEST) $(DESTFILE).tar.gz $(DESTFILE).zip

sandwich:
	@echo "'-> sandwich"
	@if [ `id -u` -eq 0 ]; then echo "Making sandwich... done." ;\
	else echo "What? Make it yourself!" ; fi

$(DESTFILE).tgz: $(PAKDIR)
	@echo "'-> tgz $@"
	@tar czf $@ $(PAKDIR)
	@tar czf src.$@ --exclude='*.[zt][gi][zp]' .

$(DESTFILE).zip: $(PAKDIR)
	@echo "'-> zip $@"
	@zip -rq $@ $(PAKDIR)
	@zip -rq src.$@ $(DIRS) $(COPYDIRS) Makefile CHANGELOG

$(COPYDIRS):
	@echo "'-> copy $@"
	@mkdir -p $(PAKDIR)/$@
	@if [ "`ls $@`" ]; then cp -p $@/* $(PAKDIR)/$@ ; fi

$(DIRS48):
	@echo "'-> pak48 $@"
	@mkdir -p $(PAKDIR)
	@$(MAKEOBJ) quiet PAK48 $(PAKDIR)/ $@/ > /dev/null

$(DIRS64):
	@echo "'-> pak64 $@"
	@mkdir -p $(PAKDIR)
	@$(MAKEOBJ) quiet PAK64 $(PAKDIR)/ $@/ > /dev/null

$(DIRS128):
	@echo "'-> pak128 $@"
	@mkdir -p $(PAKDIR)
	@$(MAKEOBJ) quiet PAK128 $(PAKDIR)/ $@/ > /dev/null

$(THEMEDIR):
	@echo "'-> theme (pak48 $@)"
	@mkdir -p $(THEMEDEST)
	@$(MAKEOBJ) quiet PAK48 $(THEMEDEST)/theme.bitlit.pak $@/bitlit.dat > /dev/null
	@cp $@/*.tab $(THEMEDEST)
