[10089] | 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 modtypes modseq modmask modinterpbasic modupdatebasic modgrids \ |
---|
| 11 | modarrays modlinktomodel modmpp modinit moduserfunctions moduservariables \ |
---|
| 12 | modupdate modinitvars modsauv modcluster modinterp modbc moduserinterpolation \ |
---|
| 13 | modbcfunction moduserhierarchy moduserupdate modutil |
---|
| 14 | |
---|
| 15 | |
---|
| 16 | OBJS=$(addsuffix .o,$(addprefix $(DIR_OBJS)/,$(FILENAMES))) |
---|
| 17 | FILES=$(addsuffix .F90,$(addprefix $(DIR_FILES)/,$(FILENAMES))) |
---|
| 18 | |
---|
| 19 | SOURCEFILES = FILES |
---|
| 20 | FORTRANCOMPILER = $(FC) |
---|
| 21 | |
---|
| 22 | |
---|
| 23 | |
---|
| 24 | |
---|
| 25 | all: conv libagrif.a |
---|
| 26 | @echo |
---|
| 27 | @echo =================================================== |
---|
| 28 | @echo AGRIF is OK |
---|
| 29 | @echo =================================================== |
---|
| 30 | @echo |
---|
| 31 | |
---|
| 32 | .PHONY: conv |
---|
| 33 | |
---|
| 34 | conv: |
---|
| 35 | @echo |
---|
| 36 | @echo =================================================== |
---|
| 37 | @echo Compile conv... |
---|
| 38 | @echo =================================================== |
---|
| 39 | $(MAKE) -C LIB conv |
---|
| 40 | mv -f LIB/conv . |
---|
| 41 | |
---|
| 42 | libagrif.a : prep_lib $(OBJS) |
---|
| 43 | $(AR) -r $@ $(OBJS) |
---|
| 44 | ranlib $@ |
---|
| 45 | |
---|
| 46 | prep_lib: |
---|
| 47 | @echo |
---|
| 48 | @echo =================================================== |
---|
| 49 | @echo Compile Agrif library... |
---|
| 50 | @echo =================================================== |
---|
| 51 | mkdir -p $(DIR_YOURFILES) |
---|
| 52 | mkdir -p $(DIR_OBJS) |
---|
| 53 | |
---|
| 54 | $(DIR_OBJS)/%.o: $(DIR_FILES)/%.F90 |
---|
| 55 | $(RM) $(DIR_YOURFILES)/$(*F).F90 |
---|
| 56 | $(CPP) $(CPPFLAGS) $(DIR_FILES)/$(*F).F90 > $(DIR_YOURFILES)/$(*F).F90 |
---|
| 57 | $(FC) $(FFLAGS) -I.. -c $(DIR_YOURFILES)/$(*F).F90 -o $(DIR_OBJS)/$(*F).o |
---|
| 58 | |
---|
| 59 | |
---|
| 60 | $(DIR_OBJS)/modutil.o agrif_util.mod: $(DIR_OBJS)/moduserhierarchy.o \ |
---|
| 61 | $(DIR_OBJS)/moduservariables.o \ |
---|
| 62 | $(DIR_OBJS)/moduserfunctions.o \ |
---|
| 63 | $(DIR_OBJS)/moduserinterpolation.o \ |
---|
| 64 | $(DIR_OBJS)/moduserupdate.o |
---|
| 65 | |
---|
| 66 | $(DIR_OBJS)/moduserupdate.o agrif_user_update.mod: $(DIR_OBJS)/modupdate.o \ |
---|
| 67 | $(DIR_OBJS)/modsauv.o |
---|
| 68 | |
---|
| 69 | $(DIR_OBJS)/moduserhierarchy.o agrif_user_hierarchy.mod: $(DIR_OBJS)/modcluster.o \ |
---|
| 70 | $(DIR_OBJS)/modinit.o \ |
---|
| 71 | $(DIR_OBJS)/moduserfunctions.o |
---|
| 72 | |
---|
| 73 | $(DIR_OBJS)/modbcfunction.o agrif_bcfunction.mod: $(DIR_OBJS)/moduservariables.o |
---|
| 74 | |
---|
| 75 | $(DIR_OBJS)/moduserinterpolation.o agrif_user_interpolation.mod: $(DIR_OBJS)/modbc.o \ |
---|
| 76 | $(DIR_OBJS)/moduservariables.o |
---|
| 77 | |
---|
| 78 | $(DIR_OBJS)/modbc.o agrif_boundary.mod: $(DIR_OBJS)/modinterp.o \ |
---|
| 79 | $(DIR_OBJS)/moduserfunctions.o |
---|
| 80 | |
---|
| 81 | $(DIR_OBJS)/modinterp.o agrif_interpolation.mod: $(DIR_OBJS)/modinit.o \ |
---|
| 82 | $(DIR_OBJS)/modarrays.o \ |
---|
| 83 | $(DIR_OBJS)/modinterpbasic.o \ |
---|
| 84 | $(DIR_OBJS)/moduserfunctions.o \ |
---|
| 85 | $(DIR_OBJS)/modmask.o |
---|
| 86 | |
---|
| 87 | $(DIR_OBJS)/modcluster.o agrif_clustering.mod: $(DIR_OBJS)/modinitvars.o \ |
---|
| 88 | $(DIR_OBJS)/modsauv.o \ |
---|
| 89 | $(DIR_OBJS)/modinit.o |
---|
| 90 | |
---|
| 91 | $(DIR_OBJS)/modsauv.o agrif_save.mod: $(DIR_OBJS)/modtypes.o \ |
---|
| 92 | $(DIR_OBJS)/modlinktomodel.o \ |
---|
| 93 | $(DIR_OBJS)/modarrays.o \ |
---|
| 94 | $(DIR_OBJS)/moduservariables.o |
---|
| 95 | |
---|
| 96 | $(DIR_OBJS)/modinitvars.o agrif_init_vars.mod: $(DIR_OBJS)/modlinktomodel.o \ |
---|
| 97 | $(DIR_OBJS)/modgrids.o \ |
---|
| 98 | $(DIR_OBJS)/modtypes.o |
---|
| 99 | |
---|
| 100 | $(DIR_OBJS)/modupdate.o agrif_update.mod: $(DIR_OBJS)/modupdatebasic.o \ |
---|
| 101 | $(DIR_OBJS)/modarrays.o \ |
---|
| 102 | $(DIR_OBJS)/moduserfunctions.o \ |
---|
| 103 | $(DIR_OBJS)/modinit.o \ |
---|
| 104 | $(DIR_OBJS)/modmask.o |
---|
| 105 | |
---|
| 106 | $(DIR_OBJS)/moduservariables.o agrif_user_variables.mod: $(DIR_OBJS)/moduserfunctions.o |
---|
| 107 | |
---|
| 108 | $(DIR_OBJS)/moduserfunctions.o agrif_user_functions.mod: $(DIR_OBJS)/modinit.o \ |
---|
| 109 | $(DIR_OBJS)/modgrids.o |
---|
| 110 | |
---|
| 111 | $(DIR_OBJS)/modinit.o agrif_init.mod: $(DIR_OBJS)/modlinktomodel.o \ |
---|
| 112 | $(DIR_OBJS)/modgrids.o $(DIR_OBJS)/modmpp.o |
---|
| 113 | |
---|
| 114 | $(DIR_OBJS)/modmpp.o agrif_mpp.mod: $(DIR_OBJS)/modarrays.o \ |
---|
| 115 | $(DIR_OBJS)/modgrids.o |
---|
| 116 | |
---|
| 117 | $(DIR_OBJS)/modlinktomodel.o agrif_link.mod: $(DIR_OBJS)/modgrids.o |
---|
| 118 | |
---|
| 119 | $(DIR_OBJS)/modarrays.o agrif_arrays.mod: $(DIR_OBJS)/modtypes.o $(DIR_OBJS)/modgrids.o |
---|
| 120 | |
---|
| 121 | $(DIR_OBJS)/modgrids.o agrif_grids.mod: $(DIR_OBJS)/modtypes.o |
---|
| 122 | |
---|
| 123 | $(DIR_OBJS)/modupdatebasic.o agrif_updatebasic.mod: $(DIR_OBJS)/modtypes.o |
---|
| 124 | |
---|
| 125 | $(DIR_OBJS)/modinterpbasic.o agrif_interpbasic.mod: $(DIR_OBJS)/modtypes.o |
---|
| 126 | |
---|
| 127 | $(DIR_OBJS)/modmask.o agrif_mask.mod: $(DIR_OBJS)/modtypes.o |
---|
| 128 | |
---|
| 129 | $(DIR_OBJS)/modseq.o agrif_seq.mod: $(DIR_OBJS)/modprocs.o $(DIR_OBJS)/modinit.o |
---|
| 130 | |
---|
| 131 | $(DIR_OBJS)/modtypes.o agrif_types.mod: $(DIR_OBJS)/modprocs.o |
---|
| 132 | |
---|
| 133 | $(DIR_OBJS)/modprocs.o agrif_procs.mod: $(DIR_FILES)/modprocs.F90 |
---|
| 134 | |
---|
| 135 | |
---|
| 136 | .PHONY: doc |
---|
| 137 | |
---|
| 138 | doc: |
---|
| 139 | (cd doc ; doxygen Doxyfile ) |
---|
| 140 | |
---|
| 141 | doc_user: |
---|
| 142 | (cd Userdoc ; doxygen Doxyfile_user ) |
---|
| 143 | |
---|
| 144 | clean: clean-conv |
---|
| 145 | $(RM) libagrif.a *.mod $(DIR_OBJS)/* $(DIR_YOURFILES)/* |
---|
| 146 | |
---|
| 147 | clean-all: clean |
---|
| 148 | $(MAKE) -C LIB clean-all |
---|
| 149 | |
---|
| 150 | clean-conv: |
---|
| 151 | $(MAKE) -C LIB clean |
---|
| 152 | $(RM) conv |
---|