1 | #- Creation des elements relatifs a AGRIF (lib, config) |
---|
2 | #--------------------------------------------------------------------- |
---|
3 | SHELL = /bin/sh |
---|
4 | #--------------------------------------------------------------------- |
---|
5 | |
---|
6 | DIR_OBJS = AGRIF_OBJS |
---|
7 | DIR_FILES = AGRIF_FILES |
---|
8 | DIR_YOURFILES = AGRIF_YOURFILES |
---|
9 | |
---|
10 | FILENAMES = modprocs modseq modbc modcluster modinit modinitvars modinterp modinterpbasic \ |
---|
11 | modtypes modgrids modbcfunction modutil modcurgridfunctions \ |
---|
12 | modmask modsauv modupdate modmpp \ |
---|
13 | modupdatebasic modlinktomodel modarrays modvariables |
---|
14 | |
---|
15 | OBJS=$(addsuffix .o,$(addprefix $(DIR_OBJS)/,$(FILENAMES))) |
---|
16 | FILES=$(addsuffix .F90,$(addprefix $(DIR_FILES)/,$(FILENAMES))) |
---|
17 | |
---|
18 | all: conv libagrif.a |
---|
19 | @echo |
---|
20 | @echo =================================================== |
---|
21 | @echo AGRIF is OK |
---|
22 | @echo =================================================== |
---|
23 | @echo |
---|
24 | |
---|
25 | .PHONY: conv |
---|
26 | |
---|
27 | conv: |
---|
28 | @echo |
---|
29 | @echo =================================================== |
---|
30 | @echo Compile conv... |
---|
31 | @echo =================================================== |
---|
32 | $(MAKE) -C LIB conv |
---|
33 | #mv -f LIB/conv . |
---|
34 | |
---|
35 | libagrif.a : prep_lib $(OBJS) |
---|
36 | $(AR) -r $@ $(OBJS) |
---|
37 | ranlib $@ |
---|
38 | |
---|
39 | prep_lib: |
---|
40 | @echo |
---|
41 | @echo =================================================== |
---|
42 | @echo Compile Agrif library... |
---|
43 | @echo =================================================== |
---|
44 | mkdir -p $(DIR_YOURFILES) |
---|
45 | mkdir -p $(DIR_OBJS) |
---|
46 | |
---|
47 | $(DIR_OBJS)/%.o : $(DIR_FILES)/%.F90 |
---|
48 | $(RM) $(DIR_YOURFILES)/$(*F).f90 |
---|
49 | $(CPP) $(CPPFLAGS) $(DIR_FILES)/$(*F).F90 > $(DIR_YOURFILES)/$(*F).f90 |
---|
50 | $(FC) $(FFLAGS) -I.. -c $(DIR_YOURFILES)/$(*F).f90 -o $(DIR_OBJS)/$(*F).o |
---|
51 | |
---|
52 | $(DIR_OBJS)/modarrays.o: $(DIR_OBJS)/modgrids.o |
---|
53 | |
---|
54 | $(DIR_OBJS)/modbc.o: $(DIR_OBJS)/modinterp.o |
---|
55 | |
---|
56 | $(DIR_OBJS)/modbcfunction.o: $(DIR_OBJS)/modupdate.o \ |
---|
57 | $(DIR_OBJS)/modbc.o \ |
---|
58 | $(DIR_OBJS)/modinterp.o \ |
---|
59 | $(DIR_OBJS)/modtypes.o |
---|
60 | |
---|
61 | $(DIR_OBJS)/modcluster.o: $(DIR_OBJS)/modtypes.o \ |
---|
62 | $(DIR_OBJS)/modlinktomodel.o \ |
---|
63 | $(DIR_OBJS)/modsauv.o \ |
---|
64 | $(DIR_OBJS)/modinitvars.o \ |
---|
65 | $(DIR_OBJS)/modseq.o \ |
---|
66 | $(DIR_OBJS)/modcurgridfunctions.o |
---|
67 | |
---|
68 | $(DIR_OBJS)/modcurgridfunctions.o: $(DIR_OBJS)/modinit.o \ |
---|
69 | $(DIR_OBJS)/modtypes.o |
---|
70 | |
---|
71 | $(DIR_OBJS)/modinit.o: $(DIR_OBJS)/modlinktomodel.o \ |
---|
72 | $(DIR_OBJS)/modtypes.o \ |
---|
73 | $(DIR_OBJS)/modmpp.o |
---|
74 | |
---|
75 | $(DIR_OBJS)/modinitvars.o: $(DIR_OBJS)/modlinktomodel.o \ |
---|
76 | $(DIR_OBJS)/modgrids.o |
---|
77 | |
---|
78 | $(DIR_OBJS)/modinterpbasic.o: $(DIR_OBJS)/modtypes.o |
---|
79 | |
---|
80 | $(DIR_OBJS)/modinterp.o: $(DIR_OBJS)/modcurgridfunctions.o \ |
---|
81 | $(DIR_OBJS)/modmask.o \ |
---|
82 | $(DIR_OBJS)/modarrays.o \ |
---|
83 | $(DIR_OBJS)/modmpp.o \ |
---|
84 | $(DIR_OBJS)/modinterpbasic.o |
---|
85 | |
---|
86 | $(DIR_OBJS)/modlinktomodel.o: $(DIR_OBJS)/modgrids.o |
---|
87 | |
---|
88 | $(DIR_OBJS)/modgrids.o: $(DIR_OBJS)/modtypes.o |
---|
89 | |
---|
90 | $(DIR_OBJS)/modmask.o: $(DIR_OBJS)/modtypes.o |
---|
91 | |
---|
92 | $(DIR_OBJS)/modsauv.o: $(DIR_OBJS)/modarrays.o $(DIR_OBJS)/modlinktomodel.o \ |
---|
93 | $(DIR_OBJS)/modtypes.o $(DIR_OBJS)/modvariables.o |
---|
94 | |
---|
95 | $(DIR_OBJS)/modupdatebasic.o: $(DIR_OBJS)/modtypes.o |
---|
96 | |
---|
97 | $(DIR_OBJS)/modupdate.o: $(DIR_OBJS)/modmask.o \ |
---|
98 | $(DIR_OBJS)/modcurgridfunctions.o \ |
---|
99 | $(DIR_OBJS)/modarrays.o \ |
---|
100 | $(DIR_OBJS)/modmpp.o \ |
---|
101 | $(DIR_OBJS)/modupdatebasic.o |
---|
102 | |
---|
103 | $(DIR_OBJS)/modutil.o: $(DIR_OBJS)/modtypes.o \ |
---|
104 | $(DIR_OBJS)/modcurgridfunctions.o \ |
---|
105 | $(DIR_OBJS)/modlinktomodel.o \ |
---|
106 | $(DIR_OBJS)/modsauv.o \ |
---|
107 | $(DIR_OBJS)/modcluster.o \ |
---|
108 | $(DIR_OBJS)/modseq.o |
---|
109 | |
---|
110 | $(DIR_OBJS)/modmpp.o: $(DIR_OBJS)/modgrids.o \ |
---|
111 | $(DIR_OBJS)/modarrays.o |
---|
112 | |
---|
113 | $(DIR_OBJS)/modseq.o: $(DIR_OBJS)/modinit.o \ |
---|
114 | $(DIR_OBJS)/modarrays.o \ |
---|
115 | $(DIR_OBJS)/modprocs.o |
---|
116 | |
---|
117 | .PHONY: doc doc_user |
---|
118 | |
---|
119 | doc: |
---|
120 | (cd doc ; doxygen Doxyfile ) |
---|
121 | |
---|
122 | doc_user: |
---|
123 | (cd doc ; doxygen Doxyfile_user ) |
---|
124 | |
---|
125 | clean: clean-conv |
---|
126 | $(RM) libagrif.a *.mod $(DIR_OBJS)/* $(DIR_YOURFILES)/* |
---|
127 | |
---|
128 | clean-all: clean |
---|
129 | $(MAKE) -C LIB clean-all |
---|
130 | |
---|
131 | clean-conv: |
---|
132 | $(MAKE) -C LIB clean |
---|
133 | $(RM) conv |
---|