# Makefile of FINDLSAB
#
# written by Tom Barnowsky
FC = gfortran

OFLAG = -O3
FFLAGS = -march=native -flto -ffast-math -I./ftamsl/include 

LIBS = -lblas -llapack -L./ftamsl/lib -lftamsl

EXECS = bin/findslab

OBJS = build/helpers.o build/planesearch.o build/bonddel.o

# general targets
.PHONY: all ftamsl clean cleanmod

all: $(EXECS) cleanmod

# sources
bin/%: src/%.F90 $(OBJS) | ftamsl bin/
	$(FC) $(OFLAG) $(FFLAGS) -o $@ $< $(OBJS) $(LIBS)

build/%.o : src/%.F90 | build/
	$(FC) $(OFLAG) $(FFLAGS) -c -o $@ $^

ftamsl:
	$(MAKE) -C ./ftamsl

#dirs
build/ :
	mkdir $@

bin/ :
	mkdir $@

bin/test/ :
	mkdir $@

# cleaning
clean :
	rm -f -r build
	rm -f -r bin
	rm -f *.mod

cleanmod:
	rm -f *.mod
