-
Notifications
You must be signed in to change notification settings - Fork 1
/
Makefile.in
66 lines (55 loc) · 2.38 KB
/
Makefile.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
CC = mpiicpc
CC_FLAGS = -O2 -qopenmp -std=c++11 -W -g
HDF5_INC = -I/usr/lib/x86_64-linux-gnu/hdf5/serial/include
HDF5_LIB = -L/usr/lib/x86_64-linux-gnu/hdf5/serial/lib -lhdf5
HPTT_INC = -DUSE_HPTT -I${HOME}/software/ctf/hptt/include
HPTT_LIB = -DUSE_HPTT -L${HOME}/software/ctf/hptt/lib -Wl,-rpath=${HOME}/software/ctf/hptt/lib -lhptt
EIGEN_INC = -I ${HOME}/software/eigen-3.3.7
CTF_INC = -I${HOME}/software/ctf/include
CTF_LIB = -L${HOME}/software/ctf/lib -lctf -lmkl_scalapack_lp64 -Wl,--start-group -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -lmkl_blacs_intelmpi_lp64 -Wl,--end-group -lpthread -lm
# Blue waters with gcc, SciLib
# CC = CC
# CC_FLAGS = -O2 -fopenmp -std=c++11 -W -g -DNDEBUG
#
# # CTF should be handling LAPACK
# #LAPACK_INC =
# #LAPACK_LIB =
#
# HPTT_INC = -DUSE_HPTT -I${HOME}/bin/ctf/hptt/include
# HPTT_LIB = -DUSE_HPTT -L${HOME}/bin/ctf/hptt/lib -Wl,-rpath=${HOME}/bin/ctf/hptt/lib -lhptt
#
# EIGEN_INC = -I ${HOME}/bin/eigen-eigen-b9cd8366d4e8
#
# CTF_INC = -I${HOME}/ctf/include
# CTF_LIB = -L${HOME}/ctf/lib -lctf
# Stampede2
# CC = mpicxx
# CC_FLAGS = -O2 -fopenmp -std=c++11 -W -g -DNDEBUG
#
# # CTF should be handling LAPACK
# #LAPACK_INC =
# #LAPACK_LIB =
#
# HDF5_INC = -I${TACC_HDF5_INC}
# HDF5_LIB = -Wl,-rpath,${TACC_HDF5_LIB} -L${TACC_HDF5_LIB} -lhdf5 -lz
#
# HPTT_INC = -DUSE_HPTT -I${HOME}/software/ctf/hptt/include
# HPTT_LIB = -DUSE_HPTT -L${HOME}/software/ctf/hptt/lib -Wl,-rpath=${HOME}/software/ctf/hptt/lib -lhptt
#
# EIGEN_INC = -I${HOME}/software/eigen-eigen-323c052e1731
#
# CTF_INC = -I${HOME}/software/ctf/include
# CTF_LIB = -L${MKLROOT}/lib/intel64/ -lmkl_scalapack_lp64 -Wl,--start-group -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -lmkl_blacs_intelmpi_lp64 -Wl,--end-group -lpthread -lm -L${HOME}/software/ctf_nomem/lib -lctf
# File names
EXEC = run
SOURCES = $(wildcard ./project/*.cpp ./util/*.cpp ./linalg/*.cpp ./dtensor/*.cpp ./qtensor/*.cpp ./qstensor/*.cpp ./mps/*.cpp ./models/hams/*.cpp ./models/sites/*.cpp ./algos/dmrg/*.cpp)
OBJECTS = $(SOURCES:.cpp=.o)
# Main target
$(EXEC): $(OBJECTS)
$(CC) $(OBJECTS) $(CC_FLAGS) $(CTF_LIB) $(HPTT_LIB) $(LAPACK_LIB) $(HDF5_LIB) -o $(EXEC)
# To obtain object files
%.o: %.cpp
$(CC) -c $(CC_FLAGS) $(CTF_INC) $(HPTT_INC) $(LAPACK_INC) $(HDF5_INC) $(EIGEN_INC) $< -o $@
# To remove generated files
clean:
rm -f $(EXEC) $(OBJECTS)