-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathMakefile
74 lines (60 loc) · 2.52 KB
/
Makefile
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
67
68
69
70
71
72
73
74
# Use this Makefile with make
# Executable name
CMD = zstruct.exe
FC = icpx -I"${CONDA_PREFIX}/include"
# FC = icpc -qopenmp -I$(MKLROOT)/include
# FC = g++ -fopenmp -I$(MKLROOT)/include
# -------- description of DFLAGS ---------------
DFLAGS = #-Define the cpp flags to be used
OFLAGS = # optimization
# Intel parallel openmp (only w/ intel compiler?)
# generated using https://www.intel.com/content/www/us/en/developer/tools/oneapi/onemkl-link-line-advisor.html
LINKERFLAGS = -L${CONDA_PREFIX}/lib -lmkl_intel_ilp64 -lmkl_tbb_thread -lmkl_core -lpthread -lm -ldl
#LINKERFLAGS = -L$(MKLROOT)/lib/em64t -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -lpthread -lm
# MAC OS linkers
#LINKERFLAGS = -lm -framework Accelerate
#
# Implicit rules for handling src files
# ( uses static pattern rules, see info for make )
.c.o:
$(FC) -c -g $(DFLAGS) -Wimplicit $<
.cpp.o:
$(FC) -c -g $(DFLAGS) $<
OBJECTS = zstruct.o main.o icoord.o pTable.o stringtools.o utils.o mem.o print.o mopac.o dft.o opt.o mm_grad.o lsq.o rxndb.o rxnftr.o atom.o align.o iccomp.o write.o knnr.o rtype.o tm.o nbo.o
$(CMD) : $(OBJECTS)
$(FC) $(DEBUG_FLAGS) $(OFLAGS) $(LINKERFLAGS) $(OBJECTS) -o ./$(CMD)
clean:
/bin/rm -f *.o *.i *.mod *.exe a.out make.log
cleano:
rm -f *.o *.i
depend :
g++ -MM *.cpp *.c >> Makefile
# DO NOT DELETE created with g++ -MM *.cpp *.c
main.o: main.cpp zstruct.h icoord.h lsq.h rxndb.h rxnftr.h align.h
lsq.o: lsq.cpp lsq.h utils.h
rxndb.o: rxndb.cpp rxndb.h utils.h rxnftr.h knnr.h rtype.h
rxnftr.o: rxnftr.cpp rxnftr.h utils.h
align.o: align.cpp align.h icoord.h utils.h
paths.o: paths.cpp zstruct.h icoord.h
pgsm.o: pgsm.cpp pgsm.h constants.h
dft.o: dft.cpp dft.h constants.h
iso.o: iso.cpp zstruct.h icoord.h geombasis.h constants.h utils.h mopac.h
atom.o: atom.cpp atom.h icoord.h
zstruct.o: zstruct.cpp zstruct.h utils.h constants.h print.h lsq.h rxndb.h rxnftr.h align.h dft.h rtype.h nbo.h
icoord.o: icoord.cpp icoord.h zstruct.h
mm_grad.o: mm_grad.cpp icoord.h
mopac.o: mopac.cpp mopac.h constants.h
geombasis.o: geombasis.cpp geombasis.h icoord.h
mem.o: mem.cpp icoord.h
opt.o: opt.cpp icoord.h
pTable.o: pTable.cpp pTable.h
print.o: print.cpp icoord.h
stringtools.o: stringtools.cpp stringtools.h
utils.o: utils.cpp utils.h
iccomp.o: iccomp.cpp zstruct.h utils.h
write.o: write.cpp zstruct.h utils.h constants.h
knnr.o: knnr.cpp knnr.h utils.h
rtype.o: rtype.cpp rtype.h utils.h stringtools.h
tm.o: tm.cpp zstruct.h constants.h
gaussian.o: gaussian.h gaussian.cpp constants.h utils.h stringtools.h pTable.h
nbo.o: nbo.h nbo.cpp zstruct.h