-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathMakefileCommon
69 lines (49 loc) · 1.42 KB
/
MakefileCommon
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
# Some paths for included sources:
HYDROLIB_PATH=$(SRC_HYDROLIB)
# Look for sources in the repository:
vpath %.c $(SRC_DOI)
vpath %.h $(SRC_DOI)
vpath %.f90 $(SRC_DOI)
vpath %.c $(SRC_HYDROLIB)
vpath %.h $(SRC_HYDROLIB)
vpath %.f90 $(SRC_HYDROLIB)
# Libraries o link
LIBRARIES= #-lquadmath
# List of source codes
CSOURCES=
FSOURCES=DoiBoxModule.f90 MinHeapModule.f90
# From HydroGrid library:
CSOURCES += RNGs.c visit_writer.c
FSOURCES += HydroGridModule.f90 Precision.f90 RNGEngine.f90 RNG.f90 NURNGs.f90 Random.f90 FFTW.f90 VisitWriter.f90
OBJECTS=$(CSOURCES:.c=.o) $(FSOURCES:.f90=.o)
all: DOI.exe
clean:
rm -rf *.o *.mod DOI.exe
# HydroGrid make rules:
#--------------------------
Precision.o: Precision.f90
$(FC) -c $<
Random.o: Random.f90 Precision.o
$(FC) -c $<
RNGEngine.o: RNGEngine.f90
$(FC) -c $<
NURNGs.o: NURNGs.f90 RNGEngine.o
$(FC) -c $<
RNG.o: RNG.f90 Random.o RNGEngine.o NURNGs.o
$(FC) -c $<
RNGs.o: RNGs.c
$(CC) -c -DBL_FORT_USE_UNDERSCORE $<
visit_writer.o: visit_writer.c
$(CC) -c $<
FFTW.o: FFTW.f90 Precision.o
$(FC) -c $<
VisitWriter.o: VisitWriter.f90
$(FC) -c $<
HydroGridModule.o: HydroGridModule.f90 FFTW.o VisitWriter.o
$(FC) -c $<
MinHeapModule.o: MinHeapModule.f90
$(FC) -c $<
DoiBoxModule.o: DoiBoxModule.f90 MinHeapModule.o RNG.o
$(FC) -c $<
DOI.exe: main.f90 $(OBJECTS) $(LIBRARIES)
$(FC) -o $@ $< $(OBJECTS) $(LIBRARIES) -L/usr/lib64/ -lfftw3 -lfftw3f -lm