
CC = gcc
CFLAGS = -Wall -O2

.PHONY: all
all: bin/DomSearch bin/DomReduce

.PHONY: clean
clean:
	rm bin/DomSearch bin/DomReduce src/*.o

# $@ is target, $^ is dependencies
bin/DomSearch: src/DomSearch.o src/Hash.o
	$(CC) $(CFLAGS) -o $@ $^

bin/DomReduce: src/DomReduce.o src/Hash.o
	$(CC) $(CFLAGS) -o $@ $^

src/DomReduce.o: src/Hash.h
src/DomSearch.o: src/Hash.h
src/Hash.o: src/Hash.h

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

.PHONY: fbtest
fbtest:
	cd fbtest && ~/fasthmm/bin/formatdb -p T -o T -i test.faa && ~/fasthmm/bin/fastBlastPrepare.pl -pieces 2 -faa test.faa result.test.smart.hmmhits && touch fb.tmp && make -f Makefile.fastblast clean && make -f Makefile.fastblast
