Makefile.1D.gfortran 3.66 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# FICHIER DE CREATION D'OBJETS ET D'UN EXECUTABLE
#     RANGEMENT PAR ORDRE ALPHABETIQUE
#
# VERSION DEBBUGGEUR -db
# VERSION OPTIMISEUR   
F90=gfortran 
OBJDIR = obj1D
MODDIR = mod1D
BINDIR = bin1D
SRC = ../Src1D

FFLAGS = -DLINUX -J$(MODDIR)  -cpp -c $(OPT) -ffree-line-length-none
LDFLAGS= -J$(MODDIR)  -cpp $(OPT)  -ffree-line-length-none

15
16
17
#INIT= init_bc_euler
#UTIL = utils
#MODEL_VAR= variable_def_euler
18

19
20
#INIT= init_bc_wave_1D
#MODEL_VAR= variable_def_wave_1D
21
#UTIL = utils
22

23
24
25
INIT= init_bc_sw
MODEL_VAR= variable_def_sw
UTIL = utils_sw
26

27
28
29
30
31
32
33
34
35
36
37
38
39
#INIT= init_bc_burgers
#MODEL_VAR= variable_def_burgers
#UTIL = utils

#INIT= init_bc_scalar
#MODEL_VAR= variable_def_scalar
#UTIL = utils

#INIT= init_bc_scalar
#MODEL_VAR= variable_def_damped_scalar
#UTIL = utils

OBJS = $(addprefix $(OBJDIR)/, elements_1D.o  param2d.o $(MODEL_VAR).o  aretes.o scheme.o overloading.o  Model.o geometry.o algebra.o $(UTIL).o postprocessing.o timestepping.o $(INIT).o precision.o)
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54


dec: $(MODDIR) $(OBJDIR) $(BINDIR) $(OBJS) $(SRC)/main_dec.f90 
	$(F90) $(LDFLAGS) -o $(BINDIR)/main_dec.out $(SRC)/main_dec.f90 $(OBJS)

$(MODDIR): 
	mkdir -p $(MODDIR)

$(OBJDIR):	
	mkdir -p $(OBJDIR)

$(BINDIR):	
	mkdir -p $(BINDIR)	


55
$(OBJDIR)/Model.o: $(SRC)/Model.f90 $(OBJDIR)/param2d.o $(OBJDIR)/precision.o
56
57
58
59
60
61
62
63
64
65
66
	$(F90) $(FFLAGS) -o $(OBJDIR)/Model.o $(SRC)/Model.f90

$(OBJDIR)/aretes.o: $(SRC)/aretes.f90 $(OBJDIR)/precision.o
	$(F90) $(FFLAGS) -o $(OBJDIR)/aretes.o $(SRC)/aretes.f90

$(OBJDIR)/overloading.o: $(SRC)/overloading.f90 $(OBJDIR)/$(MODEL_VAR).o $(OBJDIR)/precision.o
	$(F90) $(FFLAGS) -o $(OBJDIR)/overloading.o $(SRC)/overloading.f90

$(OBJDIR)/param2d.o: $(SRC)/param2d.f90 $(OBJDIR)/$(MODEL_VAR).o $(OBJDIR)/elements_1D.o $(OBJDIR)/aretes.o $(OBJDIR)/precision.o
	$(F90) $(FFLAGS) -o $(OBJDIR)/param2d.o $(SRC)/param2d.f90

67
$(OBJDIR)/geometry.o: $(SRC)/param2d.f90 $(OBJDIR)/elements_1D.o $(OBJDIR)/$(INIT).o $(SRC)/geometry.f90 $(OBJDIR)/precision.o
68
69
70
71
72
73
74
75
	 $(F90) $(FFLAGS) -o $(OBJDIR)/geometry.o $(SRC)/geometry.f90

$(OBJDIR)/algebra.o: $(SRC)/algebra.f90 $(OBJDIR)/precision.o
	$(F90) $(FFLAGS) -o $(OBJDIR)/algebra.o $(SRC)/algebra.f90

$(OBJDIR)/elements_1D.o: $(SRC)/elements_1D.f90 $(OBJDIR)/$(MODEL_VAR).o $(OBJDIR)/algebra.o $(OBJDIR)/overloading.o $(OBJDIR)/precision.o
	$(F90) $(FFLAGS) -o $(OBJDIR)/elements_1D.o $(SRC)/elements_1D.f90

76
$(OBJDIR)/$(MODEL_VAR).o: $(OBJDIR)/algebra.o $(SRC)/$(MODEL_VAR).f90   $(OBJDIR)/$(UTIL).o $(OBJDIR)/precision.o
77
78
79
80
81
	$(F90) $(FFLAGS) -o $(OBJDIR)/$(MODEL_VAR).o $(SRC)/$(MODEL_VAR).f90

$(OBJDIR)/scheme.o: $(SRC)/scheme.f90  $(OBJDIR)/$(MODEL_VAR).o $(OBJDIR)/elements_1D.o $(OBJDIR)/overloading.o $(OBJDIR)/aretes.o $(OBJDIR)/Model.o $(OBJDIR)/precision.o
	$(F90) $(FFLAGS) -o $(OBJDIR)/scheme.o $(SRC)/scheme.f90

82
83
$(OBJDIR)/$(UTIL).o:$(SRC)/$(UTIL).f90 $(OBJDIR)/precision.o
	$(F90) $(FFLAGS) -o $(OBJDIR)/$(UTIL).o $(SRC)/$(UTIL).f90
84

85
$(OBJDIR)/$(INIT).o: $(SRC)/$(INIT).f90 $(OBJDIR)/param2d.o $(OBJDIR)/overloading.o $(OBJDIR)/$(UTIL).o $(OBJDIR)/precision.o
86
87
88
89
90
	$(F90) $(FFLAGS) -o $(OBJDIR)/$(INIT).o $(SRC)/$(INIT).f90

$(OBJDIR)/timestepping.o: $(SRC)/timestepping.f90 $(OBJDIR)/overloading.o $(OBJDIR)/elements_1D.o $(OBJDIR)/$(MODEL_VAR).o $(OBJDIR)/param2d.o $(OBJDIR)/scheme.o $(OBJDIR)/Model.o $(OBJDIR)/precision.o
	$(F90) $(FFLAGS) -o $(OBJDIR)/timestepping.o $(SRC)/timestepping.f90

91
$(OBJDIR)/postprocessing.o: $(SRC)/postprocessing.f90 $(OBJDIR)/param2d.o $(OBJDIR)/$(INIT).o $(OBJDIR)/Model.o $(OBJDIR)/precision.o
92
93
94
95
96
97
98
99
100
101
102
103
	$(F90) $(FFLAGS) -o $(OBJDIR)/postprocessing.o $(SRC)/postprocessing.f90
	
$(OBJDIR)/precision.o: $(SRC)/precision.f90
		       $(F90) $(FFLAGS) -o $(OBJDIR)/precision.o $(SRC)/precision.f90

clean:	
	rm -rf $(OBJDIR)
	rm -rf $(MODDIR)
	rm -rf $(BINDIR)
	rm $(SRC)/*.f90~ 
	rm *.mod