1# Tested with: GFortran 7.4.0, MPICH 3.3, LAPACK 3.8.0, ScaLAPACK 2.0.2, FFTW 3.3, 2# Libint 2.6.0, Libxc 4.3.4, ELPA 2019.05.001, PLUMED 2.5.2, SPGLIB 1.12.2 3# Author: Matthias Krack (matthias.krack@psi.ch, PSI, Dezember 2019) 4 5CC = mpicc 6FC = mpif90 7LD = mpif90 8AR = ar -r 9 10include $(MPI_PATH)/plumed/2.5.2/lib/plumed/src/lib/Plumed.inc.static 11 12ELPA_VER = 2019.05.001 13ELPA_INC = $(MPI_PATH)/elpa/$(ELPA_VER)/include/elpa-$(ELPA_VER) 14ELPA_LIB = $(MPI_PATH)/elpa/$(ELPA_VER)/lib 15 16FFTW_INC = $(GNU_PATH)/fftw/3.3-regtest/include 17FFTW_LIB = $(GNU_PATH)/fftw/3.3-regtest/lib 18 19LIBINT_INC = $(GNU_PATH)/libint/2.6.0-lmax-4-regtest/include 20LIBINT_LIB = $(GNU_PATH)/libint/2.6.0-lmax-4-regtest/lib 21 22LIBXC_INC = $(GNU_PATH)/libxc/4.3.4-regtest/include 23LIBXC_LIB = $(GNU_PATH)/libxc/4.3.4-regtest/lib 24 25SPGLIB_INC = $(GNU_PATH)/spglib/1.12.2/include 26SPGLIB_LIB = $(GNU_PATH)/spglib/1.12.2/lib 27 28CFLAGS = -O1 -g -mtune=generic 29 30DFLAGS = -D__ELPA -D__FFTW3 -D__LIBINT -D__LIBXC 31DFLAGS += -D__MPI_VERSION=3 -D__PLUMED2 -D__SPGLIB 32DFLAGS += -D__parallel -D__SCALAPACK 33DFLAGS += -D__CHECK_DIAG 34 35WFLAGS = -Waliasing -Wampersand -Wc-binding-type -Wconversion 36WFLAGS += -Wintrinsic-shadow -Wintrinsics-std -Wline-truncation 37WFLAGS += -Wno-tabs -Wrealloc-lhs -Wtarget-lifetime -Wunderflow 38WFLAGS += -Wunused-but-set-variable -Wunused-dummy-argument -Wunused-variable 39WFLAGS += -Werror 40 41FCFLAGS = $(CFLAGS) $(DFLAGS) $(WFLAGS) 42FCFLAGS += -fcheck=bounds,do,recursion,pointer -ffree-form 43FCFLAGS += -ffree-line-length-none -fimplicit-none -fno-omit-frame-pointer 44FCFLAGS += -std=f2008 45FCFLAGS += -I$(ELPA_INC)/elpa -I$(ELPA_INC)/modules 46FCFLAGS += -I$(FFTW_INC) -I$(LIBINT_INC) -I$(LIBXC_INC) 47 48LDFLAGS = $(FCFLAGS) -fsanitize=leak 49 50LIBS = $(PLUMED_DEPENDENCIES) -lgsl -lgslcblas -lz 51LIBS += $(ELPA_LIB)/libelpa.a 52LIBS += $(LIBXC_LIB)/libxcf03.a 53LIBS += $(LIBXC_LIB)/libxc.a 54LIBS += $(LIBINT_LIB)/libint2.a 55LIBS += $(SPGLIB_LIB)/libsymspg.a 56LIBS += $(FFTW_LIB)/libfftw3.a 57LIBS += $(MPI_LIBRARY_PATH)/libscalapack-regtest.a 58LIBS += $(LIBPATH)/liblapack-regtest.a 59LIBS += $(LIBPATH)/libblas-regtest.a 60LIBS += -ldl -lstdc++ 61