PREFIX ?= /usr/local
BINDIR := $(PREFIX)/bin
PERL := $(filter /%,$(shell /bin/sh -c 'type perl'))
PYTHON := $(filter /%,$(shell /bin/sh -c 'type python'))
PROGRAM := bin/classigntax bin/clblastprimer bin/clblastseq bin/clclassseq bin/clcleanseq bin/clelimdupgi bin/clfilterseq bin/clidentseq bin/clmergeassign bin/clmaketaxdb bin/clmaketsv bin/clmakexml bin/clmergeclass bin/clsplitseq bin/clsplitsff bin/cldivseq bin/clretrievegi bin/clsumclass bin/clrevcompseq bin/sff_extract

all: $(PROGRAM)

bin/classigntax: bin/classigntax.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clblastprimer: bin/clblastprimer.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clblastseq: bin/clblastseq.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clclassseq: bin/clclassseq.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clcleanseq: bin/clcleanseq.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clelimdupgi: bin/clelimdupgi.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clfilterseq: bin/clfilterseq.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clidentseq: bin/clidentseq.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clmergeassign: bin/clmergeassign.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clmaketaxdb: bin/clmaketaxdb.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clmaketsv: bin/clmaketsv.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clmakexml: bin/clmakexml.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clmergeclass: bin/clmergeclass.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clsplitseq: bin/clsplitseq.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clsplitsff: bin/clsplitsff.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/cldivseq: bin/cldivseq.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clretrievegi: bin/clretrievegi.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clsumclass: bin/clsumclass.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/clrevcompseq: bin/clrevcompseq.pl
	echo '#!'$(PERL) > $@
	cat $< >> $@

bin/sff_extract: bin/sff_extract.py
	echo '#!'$(PYTHON) > $@
	cat $< >> $@

install: $(PROGRAM)
	chmod 755 $^
	mkdir -p $(BINDIR)
	cp $^ $(BINDIR)
	mkdir -p $(PREFIX)/share/claident
	mkdir -p $(PREFIX)/share/claident/taxdb
	mkdir -p $(PREFIX)/share/claident/blastdb
	mkdir -p /etc/claident
	echo "CLAIDENTHOME=$(PREFIX)/share/claident" > /etc/claident/.claident
	echo "TAXONOMYDB=$(PREFIX)/share/claident/taxdb" >> /etc/claident/.claident
	echo "BLASTDB=$(PREFIX)/share/claident/blastdb" >> /etc/claident/.claident

clean:
	rm $(PROGRAM)
