/[lmdze]/trunk/libf/GNUmakefile
ViewVC logotype

Contents of /trunk/libf/GNUmakefile

Parent Directory Parent Directory | Revision Log Revision Log


Revision 4 - (show annotations)
Thu Feb 28 18:05:06 2008 UTC (16 years, 2 months ago) by guez
File size: 6175 byte(s)
Cosmetic changes
1 # This is the makefile for LMDZE. For GNU Make 3.80.
2
3 # Suffixes are:
4 # "f90" for free format, no preprocessing
5 # "f" for fixed format, no preprocessing
6
7 # Extend known suffixes:
8 %.o: %.f90
9 $(COMPILE.f90) $(OUTPUT_OPTION) $<
10 COMPILE.f90 = $(FC) $(F90FLAGS) -c
11
12 # Directories:
13 libf_dir = .
14
15 VPATH = ${libf_dir}:${libf_dir}/dyn3d:${libf_dir}/filtrez:${libf_dir}/phylmd:${libf_dir}/bibio
16
17 # Compiler-dependent part:
18 -include compiler.mk
19
20 # Source files:
21 sources_etat0_lim = abort_gcm.f90 acc.f dimens_m.f90 comvert.f90 comconst.f90 paramet_m.f90 bernoui.f caldyn0.f coefpoly.f comdissnew.f90 conf_dat2d.f90 conf_dat3d.f90 conf_gcm.f90 convflu.f convmas.f covcont.f cray.f90 dimphy.f90 diverg.f diverg_gam.f divergf.f divgrad.f divgrad2.f dynredem0.f90 dynredem1.f90 eigen_sort.f enercin.f indicesol.f90 etat0_lim.f90 etat0.f90 exner_hyb.f90 extrapol.f filtreg.f flumass.f fxhyp.f fxy.f fxyhyper.f90 fxysinus.f fyhyp.f geopot.f90 grid_change.f90 grad.f gradiv.f gradiv2.f grid_atob.f90 heavyside.f iniconst.f90 inidissip.f inifgn.f inifilr.f inigeom.f inter_barxy.f90 jacobi.f laplacien.f laplacien_gam.f laplacien_rot.f laplacien_rotgam.f limit.f90 massbar.f massbarxy.f massdair.f minmax.f90 nxgrad.f nxgrad_gam.f nxgraro2.f nxgrarot.f phyredem.f pression.f90 psextbar.f q_sat.f90 ran1.f rotat.f rotat_nfil.f rotatf.f sortvarc0.f tourpot.f vitvert.f logic.f90 comgeom.f90 serre.f90 dimsoil.f90 temps.f90 clesphys.f90 iniprint.f90 ener.f90 advtrac_m.f90 netcdf95.f90 startdyn.f90 regr1_step_av_m.f90 regr_coefoz.f90 pressure_m.f90 regr1_lint_m.f90 start_init_phys_m.f90 start_init_orog_m.f90 grid_noro_m.f90 gr_int_dyn_m.f90
22
23 sources_gcm = dimens_m.f90 comvert.f90 comconst.f90 paramet_m.f90 PVtheta.f dimphy.f90 aaam_bud.f abort_gcm.f90 acc.f adaptdt.f addfi.f advect.f advn.f advtrac.f90 advx.f advxp.f advy.f advyp.f advz.f advzp.f aeropt.f ajsec.f albedo.f atm2geo.f bernoui.f caladvtrac.f90 caldyn.f calfis.f90 calltherm.f indicesol.f90 clcdrag.f90 clift.f interface_surf.f90 clmain.f calbeta.f clqh.f clvent.f coefkz.f coefkz2.f clouds_gno.f cltrac.f cltracrn.f90 coefcdrag.f90 coefkzmin.f coefpoly.f comdissnew.f90 concvl.f condsurf.f conema3.f conema3_m.f90 conf_gcm.f90 getparam.f90 conf_guide.f conf_phys.f90 conflx.f convect3.f convflu.f convmas.f coordij.f covcont.f cray.f90 cv3_routines.f cv_driver.f cv_routines.f cvltr.f diagedyn.f diagphy.f dissip.f diverg.f diverg_gam.f divergf.f divgrad.f divgrad2.f dteta1.f dudv1.f dudv2.f dump2d.f dynetat0.f90 dynredem0.f90 dynredem1.f90 eigen_sort.f enercin.f exner_hyb.f90 filtreg.f fisrtilp.f flumass.f fluxstokenc.f formcoord.f fxhyp.f fxy.f fxyhyper.f90 fxysinus.f fyhyp.f gcm.f90 geopot.f90 grid_change.f90 gr_fi_ecrit.f90 grad.f gradiv.f gradiv2.f groupe.f groupeun.f guide.f90 hbtm.f heavyside.f hgardfou.f90 ini_undefSTD.f iniconst.f90 inidissip.f inifgn.f inifilr.f inigeom.f inigrads.f90 iniphysiq.f initdynav.f90 initfluxsto.f inithist.f90 initial0.f initphysto.f initrrnpb.f integrd.f interpost.f interpre.f ismax.f ismin.f jacobi.f laplacien.f laplacien_gam.f laplacien_rot.f laplacien_rotgam.f leapfrog.f90 limx.f limy.f limz.f lnblnk.f massbar.f massbarxy.f massdair.f minmax.f90 moy_undefSTD.f newmicro.f nflxtr.f nuage.f nxgrad.f nxgrad_gam.f nxgraro2.f nxgrarot.f orbite.f90 orografi.f ozonecm.f pentes_ini.f phyetat0.f90 phyredem.f physiq.f90 phystokenc.f phytrac.f90 plevel.f ppm3d.f prather.f pres2lev.f pression.f90 printflag.f psextbar.f q_sat.f90 qminimum.f radlwsw.f ran1.f read_reanalyse.f readsulfate.f rotat.f rotat_nfil.f rotatf.f screenc.f90 screenp.f90 soil.f sortvarc.f stdlevvar.f90 suphec.f90 tetalevel.f thermcell.f tlift.f90 tourabs.f tourpot.f transp.f transp_lay.f undefSTD.f ustarhb.f vdif_kcay.f vitvert.f vlsplt.f vlspltqs.f wrgrads.f yamada.f yamada4.f zilch.f logic.f90 comgeom.f90 serre.f90 dimsoil.f90 temps.f90 clesphys.f90 iniprint.f90 com_io_dyn.f90 tracstoke.f90 ener.f90 advtrac_m.f90 YOMCST.f90 comgeomphy.f90 ctherm.f90 writedynav.f bilan_dyn.f covnat.f gr_u_scal.f gr_v_scal.f academic.f90 oasis_m.f90 raddim.f90 radepsi.f90 radopt.f90 YOETHF.f90 FCTTRE.f90 netcdf95.f90 gradsdef.f90 comfisrtilp.f90 nuagecom.f90 read_coefoz_m.f90 o3_mob_ph_m.f90 ini_hist.f90 o3_chem_m.f90 comdissip.f90 conf_interface.f90 gath_cpl.f90 albsno_m.f90
24
25 sources_test_inter_b = test_inter_barxy.f90 comconst.f90 conf_gcm.f90 iniconst.f90 inigeom.f iniprint.f90 logic.f90 clesphys.f90 serre.f90 comdissnew.f90 comvert.f90 comgeom.f90 fxysinus.f fxy.f fxyhyper.f90 cray.f90 fyhyp.f fxhyp.f inter_barxy.f90 coefpoly.f heavyside.f minmax.f90 dimens_m.f90 paramet_m.f90 temps.f90
26
27 sources_test_disv = test_disvert.f90 comvert.f90 dimens_m.f90 comconst.f90 in_out.f90
28
29 sources := $(sort ${sources_etat0_lim} ${sources_gcm} ${sources_test_inter_b} ${sources_test_disv})
30 # (sort so that each filename appears only once)
31
32 # Object files:
33 obj_etat0_lim := $(addsuffix .o, $(sort $(basename ${sources_etat0_lim})))
34 obj_gcm := $(addsuffix .o, $(sort $(basename ${sources_gcm})))
35 obj_test_inter_b := $(addsuffix .o, $(basename ${sources_test_inter_b}))
36 obj_test_disv := $(sources_test_disv:.f90=.o)
37 objects := $(addsuffix .o, $(basename ${sources}))
38
39 # Executable files:
40 executables = etat0_lim gcm test_inter_barxy test_disvert
41
42 # Rules:
43 .PHONY: all obj_etat0_lim
44 all: ${executables}
45
46 etat0_lim: ${obj_etat0_lim}
47 @echo "$(FC) $(LDFLAGS) \$$^ $(LDLIBS) -o $@"
48 @$(FC) $(LDFLAGS) $^ $(LDLIBS) -o $@
49
50 gcm: ${obj_gcm}
51 @echo "$(FC) $(LDFLAGS) \$$^ $(LDLIBS) -o $@"
52 @$(FC) $(LDFLAGS) $^ $(LDLIBS) -o $@
53
54 test_inter_barxy: ${obj_test_inter_b}
55 $(FC) $(LDFLAGS) $^ $(LDLIBS) -o $@
56
57 test_disvert: ${obj_test_disv}
58 $(FC) $(LDFLAGS) $^ $(LDLIBS) -o $@
59
60 TAGS: ${sources}
61 etags -l fortran $^
62
63 .PHONY: clean clobber
64
65 clean:
66 @echo "Removing object files."
67 @rm -f ${objects}
68 rm -f ${executables}
69
70 clobber: clean
71 rm -f *.mod ${libf_dir}/depend.mk TAGS
72
73 .PHONY: depend
74 depend ${libf_dir}/depend.mk:
75 makedepf90 -Wmissing -Wconfused -I ${VPATH} -u IOIPSL -u histcom -u netcdf -u nrutil -u nrtype -u interpolation -nosrc ${sources} >${libf_dir}/depend.mk
76
77 # Dependencies between object files and include files:
78 include ${libf_dir}/depend.mk
79
80 # Other rules, optionnally:
81 -include grep.mk
82 -include call_graph.mk

  ViewVC Help
Powered by ViewVC 1.1.21