DC?=dmd

DEBUG?=1

BINDIR=bin
SRCDIR=src
OBJDIR=obj

PREFIX=/usr

SOULFINDFILES=client.d \
         db.d \
	 message_codes.d \
	 messages.d \
	 pm.d \
	 room.d \
	 server.d \
	 defines.d \
	 sqlite3_imp.d
SOULFINDFILES:=$(addprefix $(SRCDIR)/,$(SOULFINDFILES))


SOULSETUPFILES=soulsetup.d \
               defines.d \
               db.d
SOULSETUPFILES:=$(addprefix $(SRCDIR)/,$(SOULSETUPFILES))


SOULFIND=$(BINDIR)/soulfind
SOULSETUP=$(BINDIR)/soulsetup


all: soulfind soulsetup

soulfind: $(SOULFIND)

soulsetup: $(SOULSETUP)

$(SOULFIND): $(SOULFINDFILES)
	@mkdir -p $(OBJDIR)
	@mkdir -p $(BINDIR)
ifeq ($(DC), gdc)
		$(DC) $(SOULFINDFILES) -I$(SRCDIR) -o$(SOULFIND) -lsqlite3 -fversion=Soulfind -fdebug=$(DEBUG)
else
		$(DC) $(SOULFINDFILES) -I$(SRCDIR) -od$(OBJDIR) -of$(SOULFIND) -L-lsqlite3 -version=Soulfind -debug=$(DEBUG)
endif

$(SOULSETUP): $(SOULSETUPFILES)
	@mkdir -p $(OBJDIR)
	@mkdir -p $(BINDIR)
ifeq ($(DC), gdc)
		$(DC) $(SOULSETUPFILES) -I$(SRCDIR) -o$(SOULSETUP) -lsqlite3 -fversion=Soulsetup -fdebug=$(DEBUG)
else
		$(DC) $(SOULSETUPFILES) -I$(SRCDIR) -od$(OBJDIR) -of$(SOULSETUP) -L-lsqlite3 -version=Soulsetup -debug=$(DEBUG)
endif

install: install_soulfind install_soulsetup

install_soulfind: $(SOULFIND)
	install -D --strip $(SOULFIND)  $(PREFIX)/$(SOULFIND)

install_soulsetup: $(SOULSETUP)
	install -D --strip $(SOULSETUP) $(PREFIX)/$(SOULSETUP)

clean:
	-rm -rf $(OBJDIR)
	-rm -rf $(BINDIR)
