# Default precompiler options CPP_OPTIONS = -DHOST=\"LinuxGNU\" \ -DMPI -DMPI_BLOCK=8000 -Duse_collective \ -DscaLAPACK \ -DCACHE_SIZE=4000 \ -Davoidalloc \ -Dvasp6 \ -Duse_bse_te \ -Dtbdyn \ -Dfock_dblbuf \ -D_OPENMP CPP = armflang -E -P -C -w -Mfree $*$(FUFFIX) >$*$(SUFFIX) $(CPP_OPTIONS) FC = mpif90 -fopenmp FCL = mpif90 -fopenmp FREE = -ffree-form -ffree-line-length-none FFLAGS = -w -fno-fortran-main $(CPP_OPTIONS) -Mbackslash OFLAG = -O2 OFLAG_IN = $(OFLAG) DEBUG = -O0 OBJECTS = fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o OBJECTS_O1 += fftw3d.o fftmpi.o fftmpiw.o OBJECTS_O2 += fft3dlib.o # For what used to be vasp.5.lib CPP_LIB = $(CPP) FC_LIB = $(FC) CC_LIB = armclang CFLAGS_LIB = -O FFLAGS_LIB = -O1 FREE_LIB = $(FREE) OBJECTS_LIB = linpack_double.o # For the parser library CXX_PARS = armclang++ LLIBS = -lstdc++ ## ## Customize as of this point! Of course you may change the preceding ## part of this file as well if you like, but it should rarely be ## necessary ... ## # When compiling on the target machine itself, change this to the # relevant target when cross-compiling for another architecture FFLAGS += -Ofast -mcpu=native -ffast-math -fno-math-errno # For gcc-10 and higher (comment out for older versions) #FFLAGS += -fallow-argument-mismatch # ARMPL (mandatory) ARMPL_DIR ?= /path/to/your/amdblis/installation ARMPL = -L$(ARMPL_DIR)/lib -armpl -lamath -lastring # scaLAPACK (mandatory) SCALAPACK_ROOT ?= /path/to/your/armscalapack/installation SCALAPACK = -L$(HPC_PREFIX)/$(HPC_COMPILER)/$(HPC_MPI)/lib -lscalapack LLIBS += $(SCALAPACK) $(ARMPL) INCS += -I$(ARMPL_DIR)/include # HDF5-support (optional but strongly recommended) #CPP_OPTIONS+= -DVASP_HDF5 #HDF5_ROOT ?= /path/to/your/hdf5/installation #LLIBS += -L$(HDF5_ROOT)/lib -lhdf5_fortran #INCS += -I$(HDF5_ROOT)/include # For the VASP-2-Wannier90 interface (optional) #CPP_OPTIONS += -DVASP2WANNIER90 #WANNIER90_ROOT ?= /path/to/your/wannier90/installation #LLIBS += -L$(WANNIER90_ROOT)/lib -lwannier # For the fftlib library (experimental) CPP_OPTIONS+= -Dsysv FCL += fftlib.o CXX_FFTLIB = armclang++ -fopenmp -std=c++11 -DFFTLIB_THREADSAFE INCS_FFTLIB = -I./include -I$(AOCL_ROOT)/include LIBS += fftlib LLIBS += -ldl # armflang doesn't support QD either: # https://www.vasp.at/forum/viewtopic.php?t=17768 #switch on qd-emulation using qd-lib CPP_OPTIONS += -Dqd_emulate # Software emulation of quadruple precsion QD ?= $(HPC_PREFIX)/$(HPC_COMPILER)/$(HPC_MPI) QDLIB = -L$(QD)/lib -lqdmod -lqd -lamath LLIBS += $(QDLIB) INCS += -I$(QD)/include/qd