Index: trunk/CONFIG/ORCA2_LIM/scripts/BB_make
===================================================================
--- trunk/CONFIG/ORCA2_LIM/scripts/BB_make	(revision 1538)
+++ trunk/CONFIG/ORCA2_LIM/scripts/BB_make	(revision 1556)
@@ -83,7 +83,16 @@
 override USER_LIB += -L../../../lib/libxmlio_server -lioserver -lxmlio -lxmlf90
 override USER_INC += -I../../../lib/libxmlio_server
+ifneq (,$(findstring key_mpp_mpi,$(P_P)))
+IOSERVER_MPI=
+else
+IOSERVER_MPI=-DNO_MPI
+endif
 else
 IOSERVER=notuse
 endif
+
+# A variables related to xmlioserver compilationi (fcm or AA_make)
+# Please do not change 
+override FCM += notuse
 
 KEY_LIST = \
@@ -118,5 +127,4 @@
      key_eel_r6 \
      key_esopa \
-     key_feti \
      key_floats \
      key_flx_bulk_monthly \
@@ -184,16 +192,16 @@
 		$(MODEL_LIB)(agrif_user.o)\
 		$(MODEL_LIB)(albedo.o)\
+		$(MODEL_LIB)(bdy_oce.o)\
+		$(MODEL_LIB)(bdy_par.o)\
 		$(MODEL_LIB)(bdydta.o)\
 		$(MODEL_LIB)(bdydyn.o)\
 		$(MODEL_LIB)(bdyini.o)\
-		$(MODEL_LIB)(bdy_oce.o)\
-		$(MODEL_LIB)(bdy_par.o)\
 		$(MODEL_LIB)(bdytides.o)\
 		$(MODEL_LIB)(bdytra.o)\
 		$(MODEL_LIB)(bdyvol.o)\
 		$(MODEL_LIB)(c1d.o)\
+		$(MODEL_LIB)(cla.o)\
 		$(MODEL_LIB)(cla_div.o)\
 		$(MODEL_LIB)(cla_dynspg.o)\
-		$(MODEL_LIB)(cla.o)\
 		$(MODEL_LIB)(closea.o)\
 		$(MODEL_LIB)(cpl_oasis3.o)\
@@ -208,13 +216,13 @@
 		$(MODEL_LIB)(dianam.o)\
 		$(MODEL_LIB)(diaptr.o)\
+		$(MODEL_LIB)(diawri.o)\
 		$(MODEL_LIB)(diawri_c1d.o)\
-		$(MODEL_LIB)(diawri.o)\
 		$(MODEL_LIB)(divcur.o)\
+		$(MODEL_LIB)(dom_ice_2.o)\
+		$(MODEL_LIB)(dom_oce.o)\
 		$(MODEL_LIB)(domain.o)\
 		$(MODEL_LIB)(domcfg.o)\
 		$(MODEL_LIB)(domhgr.o)\
-		$(MODEL_LIB)(dom_ice_2.o)\
 		$(MODEL_LIB)(dommsk.o)\
-		$(MODEL_LIB)(dom_oce.o)\
 		$(MODEL_LIB)(domstp.o)\
 		$(MODEL_LIB)(domvvl.o)\
@@ -223,19 +231,19 @@
 		$(MODEL_LIB)(dtasal.o)\
 		$(MODEL_LIB)(dtatem.o)\
+		$(MODEL_LIB)(dynadv.o)\
 		$(MODEL_LIB)(dynadv_cen2.o)\
-		$(MODEL_LIB)(dynadv.o)\
 		$(MODEL_LIB)(dynadv_ubs.o)\
 		$(MODEL_LIB)(dyncor_c1d.o)\
 		$(MODEL_LIB)(dynhpg.o)\
 		$(MODEL_LIB)(dynkeg.o)\
+		$(MODEL_LIB)(dynldf.o)\
 		$(MODEL_LIB)(dynldf_bilap.o)\
 		$(MODEL_LIB)(dynldf_bilapg.o)\
-		$(MODEL_LIB)(dynldf.o)\
 		$(MODEL_LIB)(dynldf_iso.o)\
 		$(MODEL_LIB)(dynldf_lap.o)\
+		$(MODEL_LIB)(dynnxt.o)\
 		$(MODEL_LIB)(dynnxt_c1d.o)\
-		$(MODEL_LIB)(dynnxt.o)\
+		$(MODEL_LIB)(dynspg.o)\
 		$(MODEL_LIB)(dynspg_exp.o)\
-		$(MODEL_LIB)(dynspg.o)\
 		$(MODEL_LIB)(dynspg_flt.o)\
 		$(MODEL_LIB)(dynspg_oce.o)\
@@ -243,14 +251,14 @@
 		$(MODEL_LIB)(dynvor.o)\
 		$(MODEL_LIB)(dynzad.o)\
+		$(MODEL_LIB)(dynzdf.o)\
 		$(MODEL_LIB)(dynzdf_exp.o)\
-		$(MODEL_LIB)(dynzdf.o)\
 		$(MODEL_LIB)(dynzdf_imp.o)\
 		$(MODEL_LIB)(eosbn2.o)\
 		$(MODEL_LIB)(fldread.o)\
 		$(MODEL_LIB)(flo4rk.o)\
+		$(MODEL_LIB)(flo_oce.o)\
 		$(MODEL_LIB)(floats.o)\
 		$(MODEL_LIB)(floblk.o)\
 		$(MODEL_LIB)(flodom.o)\
-		$(MODEL_LIB)(flo_oce.o)\
 		$(MODEL_LIB)(flowri.o)\
 		$(MODEL_LIB)(geo2ocean.o)\
@@ -258,6 +266,6 @@
 		$(MODEL_LIB)(iceini_2.o)\
 		$(MODEL_LIB)(in_out_manager.o)\
+		$(MODEL_LIB)(iom.o)\
 		$(MODEL_LIB)(iom_def.o)\
-		$(MODEL_LIB)(iom.o)\
 		$(MODEL_LIB)(iom_ioipsl.o)\
 		$(MODEL_LIB)(iom_nf90.o)\
@@ -272,5 +280,4 @@
 		$(MODEL_LIB)(ldftra.o)\
 		$(MODEL_LIB)(ldftra_oce.o)\
-		$(MODEL_LIB)(lib_feti.o)\
 		$(MODEL_LIB)(lib_mpp.o)\
 		$(MODEL_LIB)(limadv_2.o)\
@@ -292,11 +299,11 @@
 		$(MODEL_LIB)(mppini.o)\
 		$(MODEL_LIB)(oasis4_date.o)\
+		$(MODEL_LIB)(obc_oce.o)\
+		$(MODEL_LIB)(obc_par.o)\
 		$(MODEL_LIB)(obcdta.o)\
+		$(MODEL_LIB)(obcdyn.o)\
 		$(MODEL_LIB)(obcdyn_bt.o)\
-		$(MODEL_LIB)(obcdyn.o)\
 		$(MODEL_LIB)(obcfla.o)\
 		$(MODEL_LIB)(obcini.o)\
-		$(MODEL_LIB)(obc_oce.o)\
-		$(MODEL_LIB)(obc_par.o)\
 		$(MODEL_LIB)(obcrad.o)\
 		$(MODEL_LIB)(obcrst.o)\
@@ -311,4 +318,6 @@
 		$(MODEL_LIB)(prtctl.o)\
 		$(MODEL_LIB)(restart.o)\
+		$(MODEL_LIB)(sbc_ice.o)\
+		$(MODEL_LIB)(sbc_oce.o)\
 		$(MODEL_LIB)(sbcana.o)\
 		$(MODEL_LIB)(sbcblk_clio.o)\
@@ -317,29 +326,26 @@
 		$(MODEL_LIB)(sbcflx.o)\
 		$(MODEL_LIB)(sbcfwb.o)\
-		$(MODEL_LIB)(sbc_ice.o)\
 		$(MODEL_LIB)(sbcice_if.o)\
+		$(MODEL_LIB)(sbcice_lim.o)\
 		$(MODEL_LIB)(sbcice_lim_2.o)\
-		$(MODEL_LIB)(sbcice_lim.o)\
 		$(MODEL_LIB)(sbcmod.o)\
-		$(MODEL_LIB)(sbc_oce.o)\
 		$(MODEL_LIB)(sbcrnf.o)\
 		$(MODEL_LIB)(sbcssm.o)\
 		$(MODEL_LIB)(sbcssr.o)\
 		$(MODEL_LIB)(sms.o)\
-		$(MODEL_LIB)(solfet.o)\
+		$(MODEL_LIB)(sol_oce.o)\
 		$(MODEL_LIB)(solmat.o)\
-		$(MODEL_LIB)(sol_oce.o)\
 		$(MODEL_LIB)(solpcg.o)\
 		$(MODEL_LIB)(solsor.o)\
 		$(MODEL_LIB)(solver.o)\
+		$(MODEL_LIB)(step.o)\
 		$(MODEL_LIB)(step_c1d.o)\
-		$(MODEL_LIB)(step.o)\
 		$(MODEL_LIB)(stpctl.o)\
 		$(MODEL_LIB)(thd_ice_2.o)\
+		$(MODEL_LIB)(traadv.o)\
 		$(MODEL_LIB)(traadv_cen2.o)\
 		$(MODEL_LIB)(traadv_eiv.o)\
-		$(MODEL_LIB)(traadv.o)\
+		$(MODEL_LIB)(traadv_muscl.o)\
 		$(MODEL_LIB)(traadv_muscl2.o)\
-		$(MODEL_LIB)(traadv_muscl.o)\
 		$(MODEL_LIB)(traadv_qck.o)\
 		$(MODEL_LIB)(traadv_tvd.o)\
@@ -348,7 +354,7 @@
 		$(MODEL_LIB)(trabbl.o)\
 		$(MODEL_LIB)(tradmp.o)\
+		$(MODEL_LIB)(traldf.o)\
 		$(MODEL_LIB)(traldf_bilap.o)\
 		$(MODEL_LIB)(traldf_bilapg.o)\
-		$(MODEL_LIB)(traldf.o)\
 		$(MODEL_LIB)(traldf_iso.o)\
 		$(MODEL_LIB)(traldf_lap.o)\
@@ -357,9 +363,9 @@
 		$(MODEL_LIB)(traqsr.o)\
 		$(MODEL_LIB)(trasbc.o)\
+		$(MODEL_LIB)(trazdf.o)\
 		$(MODEL_LIB)(trazdf_exp.o)\
-		$(MODEL_LIB)(trazdf.o)\
 		$(MODEL_LIB)(trazdf_imp.o)\
+		$(MODEL_LIB)(trc_oce.o)\
 		$(MODEL_LIB)(trcini.o)\
-		$(MODEL_LIB)(trc_oce.o)\
 		$(MODEL_LIB)(trcstp.o)\
 		$(MODEL_LIB)(trdicp.o)\
@@ -373,4 +379,5 @@
 		$(MODEL_LIB)(trdvor_oce.o)\
 		$(MODEL_LIB)(wzvmod.o)\
+		$(MODEL_LIB)(zdf_oce.o)\
 		$(MODEL_LIB)(zdfbfr.o)\
 		$(MODEL_LIB)(zdfddm.o)\
@@ -379,5 +386,4 @@
 		$(MODEL_LIB)(zdfkpp.o)\
 		$(MODEL_LIB)(zdfmxl.o)\
-		$(MODEL_LIB)(zdf_oce.o)\
 		$(MODEL_LIB)(zdfric.o)\
 		$(MODEL_LIB)(zdftke.o)\
@@ -404,5 +410,5 @@
 		@if [ ! -d ../../../lib/oce ] ; then mkdir ../../../lib/oce ; fi
 
-$(EXEC_BIN) :	libioipsl libioserver firstagrif mpiagrif key keyverif src_file_list libagrif $(MODEL_LIB) $(IOIPSL_LIB) $(AGRIF_LIB) agrif2model.o model.o
+$(EXEC_BIN) :	libioipsl libioserver firstagrif mpiagrif key keyverif src_file_list libagrif $(MODEL_LIB) $(IOIPSL_LIB) $(AGRIF_LIB) agrif2model.o model.o 
 ifeq ($(AGRIF),use)
 		$(F_L) $(L_X) -o $(EXEC_BIN) model.o agrif2model.o $(SXMODEL_LIB) $(USER_LIB) $(IOIPSL_LIB) $(AGRIF_LIB) $(NCDF_LIB) $(LIBMPI) $(LIBMP)
@@ -414,6 +420,11 @@
 libioserver :
 ifeq ($(IOSERVER),use)
+ifeq ($(FCM),use)
 	(cd ../../XMLF90; ./configure -arch $(FCM_ARCH); fcm build; mkdir -p ../../lib/libxmlio_server  ; cd ../../lib/libxmlio_server ; ln -sf ../../modeles/XMLF90/lib/*.a .; ln -sf ../../modeles/XMLF90/inc/*.mod .)
 	(cd ../../XMLIO_SERVER; ./configure -arch $(FCM_ARCH); fcm build ; cd ../../lib/libxmlio_server ; ln -sf ../../modeles/XMLIO_SERVER/lib/*.a . ; ln -sf ../../modeles/XMLIO_SERVER/inc/* . ; cd ../../bin ; ln -sf ../modeles/XMLIO_SERVER/bin/server.exe ioserver)
+else
+	(cd ../../XMLF90/external ; $(M_K) -f Makefile )
+	(cd ../../XMLIO_SERVER/external ; $(M_K) -f Makefile P_P="$(IOSERVER_MPI)" )
+endif
 endif
 
@@ -551,31 +562,31 @@
 	par_kind.F90 \
 	par_oce.F90 \
-	dom_oce.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
 	par_oce.F90 \
 	KEY_CPP \
 	agrif_oce.F90
 $(MODEL_LIB)(agrif_opa_interp.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sol_oce.o) \
 	agrif_oce.F90 \
 	dom_oce.F90 \
 	in_out_manager.F90 \
-	$(MODEL_LIB)(agrif_oce.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sol_oce.o) \
 	oce.F90 \
 	par_oce.F90 \
@@ -588,20 +599,20 @@
 	agrif_opa_interp.F90
 $(MODEL_LIB)(agrif_opa_sponge.o) :	\
-	dom_oce.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
 	agrif_oce.F90 \
 	dom_oce.F90 \
 	in_out_manager.F90 \
-	$(MODEL_LIB)(agrif_oce.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_oce.o) \
 	oce.F90 \
 	par_oce.F90 \
@@ -611,11 +622,4 @@
 	agrif_opa_sponge.F90
 $(MODEL_LIB)(agrif_opa_update.o) :	\
-	bdy_oce.F90 \
-	dom_oce.F90 \
-	domvvl.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
 	$(MODEL_LIB)(bdy_oce.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -634,4 +638,11 @@
 	$(MODEL_LIB)(restart.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
+	bdy_oce.F90 \
+	dom_oce.F90 \
+	domvvl.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	obc_oce.F90 \
 	obc_par.F90 \
@@ -643,15 +654,15 @@
 	restart.F90 \
 	sbc_oce.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(cla_div.o) \
+	$(MODEL_LIB)(divcur.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(wzvmod.o) \
 	agrif_oce.F90 \
 	cla_div.F90 \
 	divcur.F90 \
 	dom_oce.F90 \
-	$(MODEL_LIB)(agrif_oce.o) \
-	$(MODEL_LIB)(cla_div.o) \
-	$(MODEL_LIB)(divcur.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(wzvmod.o) \
 	oce.F90 \
 	par_oce.F90 \
@@ -662,17 +673,17 @@
 	agrif_opa_update.F90
 $(MODEL_LIB)(agrif_top_interp.o) :	\
-	dom_oce.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
 	agrif_oce.F90 \
 	dom_oce.F90 \
-	$(MODEL_LIB)(agrif_oce.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(sol_oce.o) \
 	oce.F90 \
 	par_oce.F90 \
@@ -684,20 +695,20 @@
 	agrif_top_interp.F90
 $(MODEL_LIB)(agrif_top_sponge.o) :	\
-	dom_oce.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
 	agrif_oce.F90 \
 	dom_oce.F90 \
 	in_out_manager.F90 \
-	$(MODEL_LIB)(agrif_oce.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_oce.o) \
 	oce.F90 \
 	par_oce.F90 \
@@ -707,16 +718,16 @@
 	agrif_top_sponge.F90
 $(MODEL_LIB)(agrif_top_update.o) :	\
-	dom_oce.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
 	agrif_oce.F90 \
 	dom_oce.F90 \
-	$(MODEL_LIB)(agrif_oce.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_oce.o) \
 	oce.F90 \
 	par_oce.F90 \
@@ -726,7 +737,52 @@
 	agrif_top_update.F90
 $(MODEL_LIB)(agrif_user.o) :	\
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(bdyini.o) \
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(cla_div.o) \
+	$(MODEL_LIB)(cpl_oasis3.o) \
+	$(MODEL_LIB)(cpl_oasis4.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(diaptr.o) \
+	$(MODEL_LIB)(divcur.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(domain.o) \
+	$(MODEL_LIB)(domcfg.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(dyncor_c1d.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(istate.o) \
+	$(MODEL_LIB)(ldfdyn.o) \
+	$(MODEL_LIB)(ldftra.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(mppini.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(obcini.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(step.o) \
+	$(MODEL_LIB)(step_c1d.o) \
+	$(MODEL_LIB)(trcini.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(wzvmod.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfini.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zpshde.o) \
 	agrif_oce.F90 \
+	bdy_par.F90 \
 	bdyini.F90 \
-	bdy_par.F90 \
 	c1d.F90 \
 	cla_div.F90 \
@@ -736,7 +792,7 @@
 	diaptr.F90 \
 	divcur.F90 \
+	dom_oce.F90 \
 	domain.F90 \
 	domcfg.F90 \
-	dom_oce.F90 \
 	dtasal.F90 \
 	dtatem.F90 \
@@ -750,53 +806,8 @@
 	ldftra.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(agrif_oce.o) \
-	$(MODEL_LIB)(bdyini.o) \
-	$(MODEL_LIB)(bdy_par.o) \
-	$(MODEL_LIB)(c1d.o) \
-	$(MODEL_LIB)(cla_div.o) \
-	$(MODEL_LIB)(cpl_oasis3.o) \
-	$(MODEL_LIB)(cpl_oasis4.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(diaptr.o) \
-	$(MODEL_LIB)(divcur.o) \
-	$(MODEL_LIB)(domain.o) \
-	$(MODEL_LIB)(domcfg.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dtasal.o) \
-	$(MODEL_LIB)(dtatem.o) \
-	$(MODEL_LIB)(dyncor_c1d.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(istate.o) \
-	$(MODEL_LIB)(ldfdyn.o) \
-	$(MODEL_LIB)(ldftra.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(mppini.o) \
-	$(MODEL_LIB)(obcini.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(sol_oce.o) \
-	$(MODEL_LIB)(step_c1d.o) \
-	$(MODEL_LIB)(step.o) \
-	$(MODEL_LIB)(trcini.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(wzvmod.o) \
-	$(MODEL_LIB)(zdfini.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	$(MODEL_LIB)(zpshde.o) \
+	lib_print.F90 \
 	mppini.F90 \
+	obc_par.F90 \
 	obcini.F90 \
-	obc_par.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -806,14 +817,28 @@
 	sbc_oce.F90 \
 	sol_oce.F90 \
+	step.F90 \
 	step_c1d.F90 \
-	step.F90 \
 	trcini.F90 \
 	trdmod.F90 \
 	trdmod_oce.F90 \
 	wzvmod.F90 \
+	zdf_oce.F90 \
 	zdfini.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
 	zpshde.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(agrif_opa_interp.o) \
+	$(MODEL_LIB)(agrif_opa_sponge.o) \
+	$(MODEL_LIB)(agrif_opa_update.o) \
+	$(MODEL_LIB)(agrif_top_interp.o) \
+	$(MODEL_LIB)(agrif_top_sponge.o) \
+	$(MODEL_LIB)(agrif_top_update.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(opa.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(tradmp.o) \
 	agrif_oce.F90 \
 	agrif_opa_interp.F90 \
@@ -825,18 +850,4 @@
 	dom_oce.F90 \
 	in_out_manager.F90 \
-	$(MODEL_LIB)(agrif_oce.o) \
-	$(MODEL_LIB)(agrif_opa_interp.o) \
-	$(MODEL_LIB)(agrif_opa_sponge.o) \
-	$(MODEL_LIB)(agrif_opa_update.o) \
-	$(MODEL_LIB)(agrif_top_interp.o) \
-	$(MODEL_LIB)(agrif_top_sponge.o) \
-	$(MODEL_LIB)(agrif_top_update.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(opa.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(sol_oce.o) \
-	$(MODEL_LIB)(tradmp.o) \
 	oce.F90 \
 	opa.F90 \
@@ -848,19 +859,49 @@
 	agrif_user.F90
 $(MODEL_LIB)(albedo.o) :	\
-	in_out_manager.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	in_out_manager.F90 \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	in_out_manager.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(phycst.o) \
+	in_out_manager.F90 \
 	phycst.F90 \
 	KEY_CPP \
 	albedo.F90
+$(MODEL_LIB)(bdy_oce.o) :	\
+	$(MODEL_LIB)(par_kind.o) \
+	par_kind.F90 \
+	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	bdy_par.F90 \
+	par_oce.F90 \
+	KEY_CPP \
+	bdy_oce.F90
+$(MODEL_LIB)(bdy_par.o) :	\
+	KEY_CPP \
+	bdy_par.F90
 $(MODEL_LIB)(bdydta.o) :	\
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
 	bdy_oce.F90 \
 	bdy_par.F90 \
@@ -868,11 +909,37 @@
 	dom_oce.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
 	lbclnk.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(bdytides.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	bdy_oce.F90 \
+	bdytides.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	oce.F90 \
+	phycst.F90 \
+	$(IOIPSL_LIB) \
+	KEY_CPP \
+	bdydta.F90
+$(MODEL_LIB)(bdydyn.o) :	\
 	$(MODEL_LIB)(bdy_oce.o) \
 	$(MODEL_LIB)(bdy_par.o) \
@@ -880,43 +947,64 @@
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	bdy_oce.F90 \
+	bdy_par.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(bdytides.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	bdy_oce.F90 \
+	bdytides.F90 \
+	dom_oce.F90 \
+	dynspg_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	oce.F90 \
+	phycst.F90 \
+	KEY_CPP \
+	bdydyn.F90
+$(MODEL_LIB)(bdyini.o) :	\
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	bdy_oce.F90 \
-	bdytides.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	$(MODEL_LIB)(bdy_oce.o) \
-	$(MODEL_LIB)(bdytides.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	oce.F90 \
-	phycst.F90 \
-	$(IOIPSL_LIB) \
-	KEY_CPP \
-	bdydta.F90
-$(MODEL_LIB)(bdydyn.o) :	\
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
 	bdy_oce.F90 \
 	bdy_par.F90 \
@@ -925,8 +1013,71 @@
 	in_out_manager.F90 \
 	iom.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(bdytides.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	bdy_oce.F90 \
+	bdytides.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	KEY_CPP \
+	bdyini.F90
+$(MODEL_LIB)(bdytides.o) :	\
+	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	bdy_par.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
 	$(MODEL_LIB)(bdy_oce.o) \
 	$(MODEL_LIB)(bdy_par.o) \
@@ -936,34 +1087,6 @@
 	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	bdy_oce.F90 \
-	bdytides.F90 \
-	dom_oce.F90 \
-	dynspg_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(bdy_oce.o) \
-	$(MODEL_LIB)(bdytides.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	oce.F90 \
-	phycst.F90 \
-	KEY_CPP \
-	bdydyn.F90
-$(MODEL_LIB)(bdyini.o) :	\
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
 	bdy_oce.F90 \
 	bdy_par.F90 \
@@ -971,118 +1094,6 @@
 	dom_oce.F90 \
 	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(bdy_oce.o) \
-	$(MODEL_LIB)(bdy_par.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	bdy_oce.F90 \
-	bdytides.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(bdy_oce.o) \
-	$(MODEL_LIB)(bdytides.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	oce.F90 \
-	KEY_CPP \
-	bdyini.F90
-$(MODEL_LIB)(bdy_oce.o) :	\
-	$(MODEL_LIB)(par_kind.o) \
-	par_kind.F90 \
-	bdy_par.F90 \
-	$(MODEL_LIB)(bdy_par.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_oce.F90 \
-	KEY_CPP \
-	bdy_oce.F90
-$(MODEL_LIB)(bdy_par.o) :	\
-	KEY_CPP \
-	bdy_par.F90
-$(MODEL_LIB)(bdytides.o) :	\
-	bdy_par.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(bdy_par.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	bdy_oce.F90 \
-	bdy_par.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(bdy_oce.o) \
-	$(MODEL_LIB)(bdy_par.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
+	iom.F90 \
+	lbclnk.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -1090,4 +1101,13 @@
 	bdytides.F90
 $(MODEL_LIB)(bdytra.o) :	\
+	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
 	bdy_par.F90 \
 	dom_oce.F90 \
@@ -1095,30 +1115,29 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(bdy_par.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
 	bdy_oce.F90 \
 	dom_oce.F90 \
 	in_out_manager.F90 \
 	lbclnk.F90 \
-	$(MODEL_LIB)(bdy_oce.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
 	oce.F90 \
 	KEY_CPP \
 	bdytra.F90
 $(MODEL_LIB)(bdyvol.o) :	\
+	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
 	bdy_par.F90 \
 	dom_oce.F90 \
@@ -1126,26 +1145,18 @@
 	lbclnk.F90 \
 	lbcnfd.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(bdy_par.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
 	bdy_oce.F90 \
 	dom_oce.F90 \
 	in_out_manager.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(bdy_oce.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
 	oce.F90 \
 	phycst.F90 \
@@ -1157,27 +1168,23 @@
 	KEY_CPP \
 	c1d.F90
-$(MODEL_LIB)(cla_div.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
+$(MODEL_LIB)(cla.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -1186,17 +1193,49 @@
 	$(MODEL_LIB)(oce.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	oce.F90 \
 	sbc_oce.F90 \
 	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	cla.F90
+$(MODEL_LIB)(cla_div.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	sbc_oce.F90 \
+	domzgr_substitute.h90 \
 	KEY_CPP \
 	cla_div.F90
 $(MODEL_LIB)(cla_dynspg.o) :	\
-	dom_oce.F90 \
-	dynspg_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(dynspg_oce.o) \
@@ -1215,4 +1254,11 @@
 	$(MODEL_LIB)(sol_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	dynspg_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	obc_oce.F90 \
 	obc_par.F90 \
@@ -1224,30 +1270,28 @@
 	sol_oce.F90 \
 	zdf_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
 	$(MODEL_LIB)(obcdyn.o) \
-	$(MODEL_LIB)(obc_oce.o) \
 	$(MODEL_LIB)(obcvol.o) \
 	$(MODEL_LIB)(oce.o) \
 	$(MODEL_LIB)(phycst.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(solfet.o) \
 	$(MODEL_LIB)(sol_oce.o) \
 	$(MODEL_LIB)(solpcg.o) \
 	$(MODEL_LIB)(solsor.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	obc_oce.F90 \
 	obcdyn.F90 \
-	obc_oce.F90 \
 	obcvol.F90 \
 	oce.F90 \
 	phycst.F90 \
 	sbc_oce.F90 \
-	solfet.F90 \
 	sol_oce.F90 \
 	solpcg.F90 \
@@ -1258,27 +1302,23 @@
 	KEY_CPP \
 	cla_dynspg.F90
-$(MODEL_LIB)(cla.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
+$(MODEL_LIB)(closea.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -1287,39 +1327,8 @@
 	$(MODEL_LIB)(oce.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
-	oce.F90 \
-	sbc_oce.F90 \
-	domzgr_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	cla.F90
-$(MODEL_LIB)(closea.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	oce.F90 \
 	sbc_oce.F90 \
@@ -1328,36 +1337,31 @@
 	closea.F90
 $(MODEL_LIB)(cpl_oasis3.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
 	par_oce.F90 \
 	KEY_CPP \
 	cpl_oasis3.F90
 $(MODEL_LIB)(cpl_oasis4.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbcnfd.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -1370,4 +1374,9 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(restart.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbcnfd.F90 \
+	lib_print.F90 \
 	par_kind.F90 \
 	par_oce.F90 \
@@ -1375,15 +1384,15 @@
 	prtctl.F90 \
 	restart.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oasis4_date.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
 	daymod.F90 \
 	dom_oce.F90 \
 	in_out_manager.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oasis4_date.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
 	oasis4_date.F90 \
 	par_oce.F90 \
@@ -1392,36 +1401,24 @@
 	cpl_oasis4.F90
 $(MODEL_LIB)(ctlopn.o) :	\
-	lib_print.f90 \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	in_out_manager.F90 \
-	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(in_out_manager.o) \
+	in_out_manager.F90 \
 	$(AGRIF_LIB) \
 	KEY_CPP \
 	ctlopn.F90
 $(MODEL_LIB)(daymod.o) :	\
-	c1d.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(c1d.o) \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(eosbn2.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
@@ -1436,4 +1433,16 @@
 	$(MODEL_LIB)(zdfmxl.o) \
 	$(MODEL_LIB)(zpshde.o) \
+	c1d.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -1444,7 +1453,4 @@
 	zdfmxl.F90 \
 	zpshde.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -1453,4 +1459,7 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(restart.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
 	phycst.F90 \
 	prtctl.F90 \
@@ -1459,8 +1468,4 @@
 	daymod.F90
 $(MODEL_LIB)(diadimg.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -1472,4 +1477,8 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(restart.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lib_print.F90 \
 	par_kind.F90 \
 	par_oce.F90 \
@@ -1477,11 +1486,11 @@
 	prtctl.F90 \
 	restart.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
 	daymod.F90 \
 	dom_oce.F90 \
 	in_out_manager.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(oce.o) \
 	oce.F90 \
 	domzgr_substitute.h90 \
@@ -1489,21 +1498,18 @@
 	diadimg.F90
 $(MODEL_LIB)(diafwb.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lib_mpp.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -1513,4 +1519,7 @@
 	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -1522,4 +1531,17 @@
 	diafwb.F90
 $(MODEL_LIB)(diagap.o) :	\
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
 	daymod.F90 \
 	dom_oce.F90 \
@@ -1528,24 +1550,19 @@
 	lbclnk.F90 \
 	lbcnfd.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
 	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
 	daymod.F90 \
 	dianam.F90 \
@@ -1555,12 +1572,4 @@
 	in_out_manager.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dianam.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dtasal.o) \
-	$(MODEL_LIB)(dtatem.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
 	oce.F90 \
 	domzgr_substitute.h90 \
@@ -1569,18 +1578,18 @@
 	diagap.F90
 $(MODEL_LIB)(diahdy.o) :	\
-	in_out_manager.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	in_out_manager.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -1589,4 +1598,14 @@
 	diahdy.F90
 $(MODEL_LIB)(diahth.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -1596,7 +1615,54 @@
 	iom_rstdimg.F90 \
 	lbclnk.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	oce.F90 \
+	phycst.F90 \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	diahth.F90
+$(MODEL_LIB)(dianam.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	phycst.F90 \
+	KEY_CPP \
+	dianam.F90
+$(MODEL_LIB)(diaptr.o) :	\
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
@@ -1604,30 +1670,5 @@
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	oce.F90 \
-	phycst.F90 \
-	domzgr_substitute.h90 \
-	KEY_CPP \
-	diahth.F90
-$(MODEL_LIB)(dianam.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(par_kind.o) \
@@ -1636,25 +1677,9 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(restart.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
 	daymod.F90 \
 	dom_oce.F90 \
 	in_out_manager.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(phycst.o) \
-	phycst.F90 \
-	KEY_CPP \
-	dianam.F90
-$(MODEL_LIB)(diaptr.o) :	\
-	daymod.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -1662,16 +1687,52 @@
 	lbclnk.F90 \
 	lbcnfd.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
 	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dianam.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	phycst.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	$(IOIPSL_LIB) \
+	KEY_CPP \
+	diaptr.F90
+$(MODEL_LIB)(diawri.o) :	\
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(fldread.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
 	$(MODEL_LIB)(par_kind.o) \
 	$(MODEL_LIB)(par_oce.o) \
@@ -1679,35 +1740,55 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(restart.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcrnf.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	daymod.F90 \
 	dianam.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
+	dom_ice_2.F90 \
+	dom_oce.F90 \
+	fldread.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
+	sbcrnf.F90 \
+	zdf_oce.F90 \
 	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(diadimg.o) \
+	$(MODEL_LIB)(diahth.o) \
 	$(MODEL_LIB)(dianam.o) \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
 	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
 	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	oce.F90 \
-	phycst.F90 \
-	domzgr_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	$(IOIPSL_LIB) \
-	KEY_CPP \
-	diaptr.F90
-$(MODEL_LIB)(diawri_c1d.o) :	\
-	closea.F90 \
-	cpl_oasis3.F90 \
+	$(MODEL_LIB)(limwri_2.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcssr.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
 	daymod.F90 \
 	diadimg.F90 \
@@ -1715,17 +1796,27 @@
 	dianam.F90 \
 	dom_oce.F90 \
-	domvvl.F90 \
-	dynzdf_exp.F90 \
-	eosbn2.F90 \
-	fldread.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
 	ldfdyn_oce.F90 \
 	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	limwri_2.F90 \
+	oce.F90 \
+	phycst.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
+	sbcssr.F90 \
+	sol_oce.F90 \
+	zdf_oce.F90 \
+	zdfddm.F90 \
+	zdfmxl.F90 \
+	$(MODEL_LIB)(lib_mpp.o) \
+	lib_mpp.F90 \
+	diawri_dimg.h90 \
+	zdfddm_substitute.h90 \
+	$(IOIPSL_LIB) \
+	KEY_CPP \
+	diawri.F90
+$(MODEL_LIB)(diawri_c1d.o) :	\
 	$(MODEL_LIB)(closea.o) \
 	$(MODEL_LIB)(cpl_oasis3.o) \
@@ -1755,4 +1846,6 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(sbcana.o) \
 	$(MODEL_LIB)(sbcblk_clio.o) \
@@ -1762,8 +1855,6 @@
 	$(MODEL_LIB)(sbcfwb.o) \
 	$(MODEL_LIB)(sbcice_if.o) \
+	$(MODEL_LIB)(sbcice_lim.o) \
 	$(MODEL_LIB)(sbcice_lim_2.o) \
-	$(MODEL_LIB)(sbcice_lim.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(sbcrnf.o) \
 	$(MODEL_LIB)(sbcssm.o) \
@@ -1772,7 +1863,27 @@
 	$(MODEL_LIB)(trazdf_exp.o) \
 	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfddm.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
+	closea.F90 \
+	cpl_oasis3.F90 \
+	daymod.F90 \
+	diadimg.F90 \
+	diahth.F90 \
+	dianam.F90 \
+	dom_oce.F90 \
+	domvvl.F90 \
+	dynzdf_exp.F90 \
+	eosbn2.F90 \
+	fldread.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	limwri_2.F90 \
 	oce.F90 \
 	par_ice_2.F90 \
@@ -1782,4 +1893,6 @@
 	prtctl.F90 \
 	restart.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
 	sbcana.F90 \
 	sbcblk_clio.F90 \
@@ -1788,9 +1901,7 @@
 	sbcflx.F90 \
 	sbcfwb.F90 \
-	sbc_ice.F90 \
 	sbcice_if.F90 \
+	sbcice_lim.F90 \
 	sbcice_lim_2.F90 \
-	sbcice_lim.F90 \
-	sbc_oce.F90 \
 	sbcrnf.F90 \
 	sbcssm.F90 \
@@ -1799,7 +1910,26 @@
 	trazdf_exp.F90 \
 	trdmod.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(diawri.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcmod.o) \
+	$(MODEL_LIB)(sbcssr.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfkpp.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdftke.o) \
+	$(MODEL_LIB)(zdftke_old.o) \
 	daymod.F90 \
 	dianam.F90 \
@@ -1808,34 +1938,15 @@
 	in_out_manager.F90 \
 	lbclnk.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dianam.o) \
-	$(MODEL_LIB)(diawri.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbcmod.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(sbcssr.o) \
-	$(MODEL_LIB)(sol_oce.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdfkpp.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	$(MODEL_LIB)(zdftke.o) \
-	$(MODEL_LIB)(zdftke_old.o) \
 	oce.F90 \
 	phycst.F90 \
 	sbc_ice.F90 \
+	sbc_oce.F90 \
 	sbcmod.F90 \
-	sbc_oce.F90 \
 	sbcssr.F90 \
 	sol_oce.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
 	zdfkpp.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
 	zdftke.F90 \
 	zdftke_old.F90 \
@@ -1844,107 +1955,15 @@
 	KEY_CPP \
 	diawri_c1d.F90
-$(MODEL_LIB)(diawri.o) :	\
-	daymod.F90 \
-	dianam.F90 \
-	dom_ice_2.F90 \
-	dom_oce.F90 \
-	fldread.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dianam.o) \
-	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(fldread.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(sbcrnf.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	sbc_ice.F90 \
-	sbc_oce.F90 \
-	sbcrnf.F90 \
-	zdf_oce.F90 \
-	daymod.F90 \
-	diadimg.F90 \
-	diahth.F90 \
-	dianam.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	ldfdyn_oce.F90 \
-	ldftra_oce.F90 \
-	limwri_2.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(diadimg.o) \
-	$(MODEL_LIB)(diahth.o) \
-	$(MODEL_LIB)(dianam.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(limwri_2.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(sbcssr.o) \
-	$(MODEL_LIB)(sol_oce.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	phycst.F90 \
-	sbc_ice.F90 \
-	sbc_oce.F90 \
-	sbcssr.F90 \
-	sol_oce.F90 \
-	zdfddm.F90 \
-	zdfmxl.F90 \
-	zdf_oce.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(lib_mpp.o) \
-	diawri_dimg.h90 \
-	zdfddm_substitute.h90 \
-	$(IOIPSL_LIB) \
-	KEY_CPP \
-	diawri.F90
 $(MODEL_LIB)(divcur.o) :	\
+	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
 	bdy_par.F90 \
 	dom_oce.F90 \
@@ -1952,29 +1971,19 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(bdy_par.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
+	lib_print.F90 \
 	obc_par.F90 \
 	oce.F90 \
 	par_kind.F90 \
 	par_oce.F90 \
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
 	bdy_oce.F90 \
 	dom_oce.F90 \
 	in_out_manager.F90 \
 	lbclnk.F90 \
-	$(MODEL_LIB)(bdy_oce.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(oce.o) \
 	obc_oce.F90 \
 	oce.F90 \
@@ -1983,5 +1992,35 @@
 	KEY_CPP \
 	divcur.F90
+$(MODEL_LIB)(dom_ice_2.o) :	\
+	$(MODEL_LIB)(par_oce.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_ice_2.o) \
+	par_ice_2.F90 \
+	KEY_CPP \
+	dom_ice_2.F90
+$(MODEL_LIB)(dom_oce.o) :	\
+	$(MODEL_LIB)(par_kind.o) \
+	par_kind.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	par_oce.F90 \
+	KEY_CPP \
+	dom_oce.F90
 $(MODEL_LIB)(domain.o) :	\
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(closea.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
 	c1d.F90 \
 	closea.F90 \
@@ -1993,31 +2032,28 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(c1d.o) \
+	lib_print.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	sbc_oce.F90 \
 	$(MODEL_LIB)(closea.o) \
 	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(domhgr.o) \
+	$(MODEL_LIB)(dommsk.o) \
+	$(MODEL_LIB)(domstp.o) \
+	$(MODEL_LIB)(domvvl.o) \
+	$(MODEL_LIB)(domwri.o) \
+	$(MODEL_LIB)(domzgr.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
 	$(MODEL_LIB)(phycst.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
-	obc_oce.F90 \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	sbc_oce.F90 \
 	closea.F90 \
+	dom_oce.F90 \
 	domhgr.F90 \
 	dommsk.F90 \
-	dom_oce.F90 \
 	domstp.F90 \
 	domvvl.F90 \
@@ -2026,17 +2062,4 @@
 	in_out_manager.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(closea.o) \
-	$(MODEL_LIB)(domhgr.o) \
-	$(MODEL_LIB)(dommsk.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(domstp.o) \
-	$(MODEL_LIB)(domvvl.o) \
-	$(MODEL_LIB)(domwri.o) \
-	$(MODEL_LIB)(domzgr.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
 	oce.F90 \
 	phycst.F90 \
@@ -2047,26 +2070,37 @@
 	domain.F90
 $(MODEL_LIB)(domcfg.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
 	phycst.F90 \
 	domcfg.F90
 $(MODEL_LIB)(domhgr.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -2077,5 +2111,109 @@
 	lbclnk.F90 \
 	lbcnfd.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lib_mpp.F90 \
+	phycst.F90 \
+	KEY_CPP \
+	domhgr.F90
+$(MODEL_LIB)(dommsk.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	obc_par.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	dom_oce.F90 \
+	dynspg_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dommsk.F90
+$(MODEL_LIB)(domstp.o) :	\
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	domstp.F90
+$(MODEL_LIB)(domvvl.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	phycst.F90 \
+	sbc_oce.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	domvvl.F90
+$(MODEL_LIB)(domwri.o) :	\
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2086,125 +2224,9 @@
 	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(phycst.o) \
-	phycst.F90 \
-	KEY_CPP \
-	domhgr.F90
-$(MODEL_LIB)(dom_ice_2.o) :	\
-	$(MODEL_LIB)(par_oce.o) \
-	par_oce.F90 \
-	$(MODEL_LIB)(par_ice_2.o) \
-	par_ice_2.F90 \
-	KEY_CPP \
-	dom_ice_2.F90
-$(MODEL_LIB)(dommsk.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	obc_par.F90 \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	dynspg_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	obc_oce.F90 \
-	oce.F90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	dommsk.F90
-$(MODEL_LIB)(dom_oce.o) :	\
-	$(MODEL_LIB)(par_kind.o) \
-	par_kind.F90 \
-	$(MODEL_LIB)(par_oce.o) \
-	par_oce.F90 \
-	KEY_CPP \
-	dom_oce.F90
-$(MODEL_LIB)(domstp.o) :	\
-	lib_print.f90 \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(oce.o) \
-	oce.F90 \
-	domzgr_substitute.h90 \
-	KEY_CPP \
-	domstp.F90
-$(MODEL_LIB)(domvvl.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	oce.F90 \
-	phycst.F90 \
-	sbc_oce.F90 \
-	domzgr_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	domvvl.F90
-$(MODEL_LIB)(domwri.o) :	\
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -2216,5 +2238,20 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	domwri.F90
+$(MODEL_LIB)(domzgr.o) :	\
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2230,19 +2267,5 @@
 	$(MODEL_LIB)(par_kind.o) \
 	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	domwri.F90
-$(MODEL_LIB)(domzgr.o) :	\
+	$(MODEL_LIB)(sbc_oce.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -2254,7 +2277,33 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	sbc_oce.F90 \
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(closea.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	c1d.F90 \
+	closea.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	domzgr.F90
+$(MODEL_LIB)(dtasal.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
@@ -2268,34 +2317,11 @@
 	$(MODEL_LIB)(par_kind.o) \
 	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	sbc_oce.F90 \
-	c1d.F90 \
-	closea.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(c1d.o) \
-	$(MODEL_LIB)(closea.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	oce.F90 \
-	domzgr_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	domzgr.F90
-$(MODEL_LIB)(dtasal.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -2304,11 +2330,35 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	oce.F90 \
+	phycst.F90 \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	dtasal.F90
+$(MODEL_LIB)(dtatem.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
@@ -2322,32 +2372,8 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(restart.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	oce.F90 \
-	phycst.F90 \
-	domzgr_substitute.h90 \
-	KEY_CPP \
-	dtasal.F90
-$(MODEL_LIB)(dtatem.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -2356,22 +2382,5 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -2380,4 +2389,11 @@
 	prtctl.F90 \
 	restart.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
 	daymod.F90 \
 	dom_oce.F90 \
@@ -2385,11 +2401,4 @@
 	iom.F90 \
 	lbclnk.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
 	oce.F90 \
 	phycst.F90 \
@@ -2397,10 +2406,44 @@
 	KEY_CPP \
 	dtatem.F90
+$(MODEL_LIB)(dynadv.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	prtctl.F90 \
+	sbc_oce.F90 \
+	trdmod.F90 \
+	trdmod_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynadv_cen2.o) \
+	$(MODEL_LIB)(dynadv_ubs.o) \
+	$(MODEL_LIB)(dynkeg.o) \
+	$(MODEL_LIB)(dynzad.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	dom_oce.F90 \
+	dynadv_cen2.F90 \
+	dynadv_ubs.F90 \
+	dynkeg.F90 \
+	dynzad.F90 \
+	in_out_manager.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dynadv.F90
 $(MODEL_LIB)(dynadv_cen2.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2421,4 +2464,9 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -2434,6 +2482,4 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2442,4 +2488,6 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
 	oce.F90 \
 	prtctl.F90 \
@@ -2450,50 +2498,5 @@
 	KEY_CPP \
 	dynadv_cen2.F90
-$(MODEL_LIB)(dynadv.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	prtctl.F90 \
-	sbc_oce.F90 \
-	trdmod.F90 \
-	trdmod_oce.F90 \
-	dom_oce.F90 \
-	dynadv_cen2.F90 \
-	dynadv_ubs.F90 \
-	dynkeg.F90 \
-	dynzad.F90 \
-	in_out_manager.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynadv_cen2.o) \
-	$(MODEL_LIB)(dynadv_ubs.o) \
-	$(MODEL_LIB)(dynkeg.o) \
-	$(MODEL_LIB)(dynzad.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	domzgr_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	dynadv.F90
 $(MODEL_LIB)(dynadv_ubs.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2515,4 +2518,10 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -2528,7 +2537,4 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2538,4 +2544,7 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
 	oce.F90 \
 	prtctl.F90 \
@@ -2547,23 +2556,23 @@
 	dynadv_ubs.F90
 $(MODEL_LIB)(dyncor_c1d.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -2573,10 +2582,4 @@
 	dyncor_c1d.F90
 $(MODEL_LIB)(dynhpg.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2598,4 +2601,10 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -2611,7 +2620,4 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2622,4 +2628,7 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -2632,9 +2641,4 @@
 	dynhpg.F90
 $(MODEL_LIB)(dynkeg.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2655,4 +2659,9 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -2668,6 +2677,4 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2676,4 +2683,6 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
 	oce.F90 \
 	prtctl.F90 \
@@ -2683,11 +2692,90 @@
 	KEY_CPP \
 	dynkeg.F90
+$(MODEL_LIB)(dynldf.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(trdicp.o) \
+	$(MODEL_LIB)(trdicp_oce.o) \
+	$(MODEL_LIB)(trdmld.o) \
+	$(MODEL_LIB)(trdmld_oce.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(trdvor.o) \
+	$(MODEL_LIB)(trdvor_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldfdyn_oce.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	sbc_oce.F90 \
+	trdicp.F90 \
+	trdicp_oce.F90 \
+	trdmld.F90 \
+	trdmld_oce.F90 \
+	trdmod.F90 \
+	trdmod_oce.F90 \
+	trdvor.F90 \
+	trdvor_oce.F90 \
+	zdf_oce.F90 \
+	zdfmxl.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynldf_bilap.o) \
+	$(MODEL_LIB)(dynldf_bilapg.o) \
+	$(MODEL_LIB)(dynldf_iso.o) \
+	$(MODEL_LIB)(dynldf_lap.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	dom_oce.F90 \
+	dynldf_bilap.F90 \
+	dynldf_bilapg.F90 \
+	dynldf_iso.F90 \
+	dynldf_lap.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldfslp.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	trdmod.F90 \
+	trdmod_oce.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dynldf.F90
 $(MODEL_LIB)(dynldf_bilap.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2709,4 +2797,10 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -2722,8 +2816,4 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	ldfdyn_oce.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2733,4 +2823,8 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
 	oce.F90 \
 	trdmod.F90 \
@@ -2742,12 +2836,4 @@
 	dynldf_bilap.F90
 $(MODEL_LIB)(dynldf_bilapg.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldfdyn_oce.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2771,6 +2857,14 @@
 	$(MODEL_LIB)(trdvor.o) \
 	$(MODEL_LIB)(trdvor_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -2786,11 +2880,6 @@
 	trdvor.F90 \
 	trdvor_oce.F90 \
+	zdf_oce.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	ldfdyn_oce.F90 \
-	ldfslp.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2803,4 +2892,9 @@
 	$(MODEL_LIB)(trdmod_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldfslp.F90 \
 	oce.F90 \
 	prtctl.F90 \
@@ -2812,98 +2906,5 @@
 	KEY_CPP \
 	dynldf_bilapg.F90
-$(MODEL_LIB)(dynldf.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldfdyn_oce.F90 \
-	ldfslp.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(ldfslp.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(trdicp.o) \
-	$(MODEL_LIB)(trdicp_oce.o) \
-	$(MODEL_LIB)(trdmld.o) \
-	$(MODEL_LIB)(trdmld_oce.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(trdvor.o) \
-	$(MODEL_LIB)(trdvor_oce.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	sbc_oce.F90 \
-	trdicp.F90 \
-	trdicp_oce.F90 \
-	trdmld.F90 \
-	trdmld_oce.F90 \
-	trdmod.F90 \
-	trdmod_oce.F90 \
-	trdvor.F90 \
-	trdvor_oce.F90 \
-	zdfmxl.F90 \
-	zdf_oce.F90 \
-	dom_oce.F90 \
-	dynldf_bilap.F90 \
-	dynldf_bilapg.F90 \
-	dynldf_iso.F90 \
-	dynldf_lap.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	ldfdyn_oce.F90 \
-	ldfslp.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynldf_bilapg.o) \
-	$(MODEL_LIB)(dynldf_bilap.o) \
-	$(MODEL_LIB)(dynldf_iso.o) \
-	$(MODEL_LIB)(dynldf_lap.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(ldfslp.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	trdmod.F90 \
-	trdmod_oce.F90 \
-	domzgr_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	dynldf.F90
 $(MODEL_LIB)(dynldf_iso.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldfdyn_oce.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2927,6 +2928,14 @@
 	$(MODEL_LIB)(trdvor.o) \
 	$(MODEL_LIB)(trdvor_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -2942,6 +2951,17 @@
 	trdvor.F90 \
 	trdvor_oce.F90 \
+	zdf_oce.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -2950,15 +2970,4 @@
 	ldfslp.F90 \
 	ldftra_oce.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(ldfslp.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
 	oce.F90 \
 	prtctl.F90 \
@@ -2972,10 +2981,4 @@
 	dynldf_iso.F90
 $(MODEL_LIB)(dynldf_lap.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	ldfdyn_oce.F90 \
-	ldftra_oce.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -2997,6 +3000,12 @@
 	$(MODEL_LIB)(trdvor.o) \
 	$(MODEL_LIB)(trdvor_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -3012,10 +3021,6 @@
 	trdvor.F90 \
 	trdvor_oce.F90 \
+	zdf_oce.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	ldfdyn_oce.F90 \
-	ldfslp.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -3026,4 +3031,8 @@
 	$(MODEL_LIB)(trdmod_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	ldfdyn_oce.F90 \
+	ldfslp.F90 \
 	oce.F90 \
 	trdmod.F90 \
@@ -3035,34 +3044,33 @@
 	KEY_CPP \
 	dynldf_lap.F90
-$(MODEL_LIB)(dynnxt_c1d.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	oce.F90 \
-	prtctl.F90 \
-	KEY_CPP \
-	dynnxt_c1d.F90
 $(MODEL_LIB)(dynnxt.o) :	\
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(bdytides.o) \
+	$(MODEL_LIB)(cla_div.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(divcur.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynadv_cen2.o) \
+	$(MODEL_LIB)(dynadv_ubs.o) \
+	$(MODEL_LIB)(dynkeg.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(dynzad.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(wzvmod.o) \
 	agrif_oce.F90 \
 	bdy_oce.F90 \
@@ -3083,33 +3091,5 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(agrif_oce.o) \
-	$(MODEL_LIB)(bdy_oce.o) \
-	$(MODEL_LIB)(bdy_par.o) \
-	$(MODEL_LIB)(bdytides.o) \
-	$(MODEL_LIB)(cla_div.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(divcur.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynadv_cen2.o) \
-	$(MODEL_LIB)(dynadv_ubs.o) \
-	$(MODEL_LIB)(dynkeg.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(dynzad.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(sol_oce.o) \
-	$(MODEL_LIB)(wzvmod.o) \
+	lib_print.F90 \
 	obc_oce.F90 \
 	obc_par.F90 \
@@ -3121,9 +3101,26 @@
 	sol_oce.F90 \
 	wzvmod.F90 \
+	$(MODEL_LIB)(agrif_opa_interp.o) \
+	$(MODEL_LIB)(agrif_opa_update.o) \
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(bdydta.o) \
+	$(MODEL_LIB)(bdydyn.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(domvvl.o) \
+	$(MODEL_LIB)(dynadv.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(obcdyn.o) \
+	$(MODEL_LIB)(obcdyn_bt.o) \
+	$(MODEL_LIB)(obcvol.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
 	agrif_opa_interp.F90 \
 	agrif_opa_update.F90 \
+	bdy_oce.F90 \
 	bdydta.F90 \
 	bdydyn.F90 \
-	bdy_oce.F90 \
 	dom_oce.F90 \
 	domvvl.F90 \
@@ -3132,136 +3129,49 @@
 	in_out_manager.F90 \
 	lbclnk.F90 \
+	obc_oce.F90 \
+	obcdyn.F90 \
+	obcdyn_bt.F90 \
+	obcvol.F90 \
+	oce.F90 \
+	prtctl.F90 \
+	domzgr_substitute.h90 \
+	$(AGRIF_LIB) \
+	KEY_CPP \
+	dynnxt.F90
+$(MODEL_LIB)(dynnxt_c1d.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	oce.F90 \
+	prtctl.F90 \
+	KEY_CPP \
+	dynnxt_c1d.F90
+$(MODEL_LIB)(dynspg.o) :	\
 	$(MODEL_LIB)(agrif_opa_interp.o) \
-	$(MODEL_LIB)(agrif_opa_update.o) \
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(bdy_par.o) \
 	$(MODEL_LIB)(bdydta.o) \
 	$(MODEL_LIB)(bdydyn.o) \
-	$(MODEL_LIB)(bdy_oce.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(domvvl.o) \
-	$(MODEL_LIB)(dynadv.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(obcdyn_bt.o) \
-	$(MODEL_LIB)(obcdyn.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(obcvol.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	obcdyn_bt.F90 \
-	obcdyn.F90 \
-	obc_oce.F90 \
-	obcvol.F90 \
-	oce.F90 \
-	prtctl.F90 \
-	domzgr_substitute.h90 \
-	$(AGRIF_LIB) \
-	KEY_CPP \
-	dynnxt.F90
-$(MODEL_LIB)(dynspg_exp.o) :	\
-	c1d.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	dynspg_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(c1d.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(trdmld_oce.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zpshde.o) \
-	obc_oce.F90 \
-	obc_par.F90 \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	trdmld_oce.F90 \
-	zdfddm.F90 \
-	zdfmxl.F90 \
-	zpshde.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(obcdta.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	obcdta.F90 \
-	obc_oce.F90 \
-	obc_par.F90 \
-	oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	sbc_oce.F90 \
-	domzgr_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	dynspg_exp.F90
-$(MODEL_LIB)(dynspg.o) :	\
-	agrif_opa_interp.F90 \
-	bdydta.F90 \
-	bdydyn.F90 \
-	bdy_oce.F90 \
-	bdy_par.F90 \
-	bdytides.F90 \
-	bdyvol.F90 \
-	cla_dynspg.F90 \
-	dom_oce.F90 \
-	domvvl.F90 \
-	dynspg_oce.F90 \
-	dynvor.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(agrif_opa_interp.o) \
-	$(MODEL_LIB)(bdydta.o) \
-	$(MODEL_LIB)(bdydyn.o) \
-	$(MODEL_LIB)(bdy_oce.o) \
-	$(MODEL_LIB)(bdy_par.o) \
 	$(MODEL_LIB)(bdytides.o) \
 	$(MODEL_LIB)(bdyvol.o) \
@@ -3277,9 +3187,9 @@
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(obc_par.o) \
 	$(MODEL_LIB)(obcdta.o) \
 	$(MODEL_LIB)(obcdyn.o) \
 	$(MODEL_LIB)(obcfla.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(obc_par.o) \
 	$(MODEL_LIB)(obcvol.o) \
 	$(MODEL_LIB)(oce.o) \
@@ -3290,7 +3200,6 @@
 	$(MODEL_LIB)(restart.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(solfet.o) \
+	$(MODEL_LIB)(sol_oce.o) \
 	$(MODEL_LIB)(solmat.o) \
-	$(MODEL_LIB)(sol_oce.o) \
 	$(MODEL_LIB)(solpcg.o) \
 	$(MODEL_LIB)(solsor.o) \
@@ -3304,9 +3213,27 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	agrif_opa_interp.F90 \
+	bdy_oce.F90 \
+	bdy_par.F90 \
+	bdydta.F90 \
+	bdydyn.F90 \
+	bdytides.F90 \
+	bdyvol.F90 \
+	cla_dynspg.F90 \
+	dom_oce.F90 \
+	domvvl.F90 \
+	dynspg_oce.F90 \
+	dynvor.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	obc_oce.F90 \
+	obc_par.F90 \
 	obcdta.F90 \
 	obcdyn.F90 \
 	obcfla.F90 \
-	obc_oce.F90 \
-	obc_par.F90 \
 	obcvol.F90 \
 	oce.F90 \
@@ -3317,7 +3244,6 @@
 	restart.F90 \
 	sbc_oce.F90 \
-	solfet.F90 \
+	sol_oce.F90 \
 	solmat.F90 \
-	sol_oce.F90 \
 	solpcg.F90 \
 	solsor.F90 \
@@ -3331,4 +3257,15 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_exp.o) \
+	$(MODEL_LIB)(dynspg_flt.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(dynspg_ts.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
 	dom_oce.F90 \
 	dynspg_exp.F90 \
@@ -3337,15 +3274,4 @@
 	dynspg_ts.F90 \
 	in_out_manager.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynspg_exp.o) \
-	$(MODEL_LIB)(dynspg_flt.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(dynspg_ts.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
 	obc_oce.F90 \
 	oce.F90 \
@@ -3357,5 +3283,122 @@
 	KEY_CPP \
 	dynspg.F90
+$(MODEL_LIB)(dynspg_exp.o) :	\
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(trdmld_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zpshde.o) \
+	c1d.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dynspg_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	obc_oce.F90 \
+	obc_par.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	trdmld_oce.F90 \
+	zdfddm.F90 \
+	zdfmxl.F90 \
+	zpshde.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(obcdta.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	obc_oce.F90 \
+	obc_par.F90 \
+	obcdta.F90 \
+	oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	sbc_oce.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dynspg_exp.F90
 $(MODEL_LIB)(dynspg_flt.o) :	\
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(bdytides.o) \
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(obcdyn.o) \
+	$(MODEL_LIB)(obcvol.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(solmat.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(trdmld_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zpshde.o) \
 	agrif_oce.F90 \
 	bdy_oce.F90 \
@@ -3367,6 +3410,6 @@
 	eosbn2.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -3374,48 +3417,9 @@
 	lbclnk.F90 \
 	lbcnfd.F90 \
-	lib_feti.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(agrif_oce.o) \
-	$(MODEL_LIB)(bdy_oce.o) \
-	$(MODEL_LIB)(bdy_par.o) \
-	$(MODEL_LIB)(bdytides.o) \
-	$(MODEL_LIB)(c1d.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_feti.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(obcdyn.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(obcvol.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(solfet.o) \
-	$(MODEL_LIB)(solmat.o) \
-	$(MODEL_LIB)(sol_oce.o) \
-	$(MODEL_LIB)(solpcg.o) \
-	$(MODEL_LIB)(solsor.o) \
-	$(MODEL_LIB)(trdmld_oce.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	$(MODEL_LIB)(zpshde.o) \
-	obcdyn.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	obc_oce.F90 \
 	obc_par.F90 \
+	obcdyn.F90 \
 	obcvol.F90 \
 	oce.F90 \
@@ -3424,28 +3428,16 @@
 	phycst.F90 \
 	sbc_oce.F90 \
-	solfet.F90 \
+	sol_oce.F90 \
 	solmat.F90 \
-	sol_oce.F90 \
 	solpcg.F90 \
 	solsor.F90 \
 	trdmld_oce.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
 	zpshde.F90 \
-	agrif_opa_interp.F90 \
-	bdydyn.F90 \
-	bdy_oce.F90 \
-	bdyvol.F90 \
-	cla_dynspg.F90 \
-	dom_oce.F90 \
-	domvvl.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
 	$(MODEL_LIB)(agrif_opa_interp.o) \
+	$(MODEL_LIB)(bdy_oce.o) \
 	$(MODEL_LIB)(bdydyn.o) \
-	$(MODEL_LIB)(bdy_oce.o) \
 	$(MODEL_LIB)(bdyvol.o) \
 	$(MODEL_LIB)(cla_dynspg.o) \
@@ -3456,6 +3448,6 @@
 	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
 	$(MODEL_LIB)(obcdyn.o) \
-	$(MODEL_LIB)(obc_oce.o) \
 	$(MODEL_LIB)(obcvol.o) \
 	$(MODEL_LIB)(oce.o) \
@@ -3464,13 +3456,23 @@
 	$(MODEL_LIB)(restart.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(solfet.o) \
+	$(MODEL_LIB)(sol_oce.o) \
 	$(MODEL_LIB)(solmat.o) \
-	$(MODEL_LIB)(sol_oce.o) \
 	$(MODEL_LIB)(solpcg.o) \
 	$(MODEL_LIB)(solsor.o) \
 	$(MODEL_LIB)(solver.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	agrif_opa_interp.F90 \
+	bdy_oce.F90 \
+	bdydyn.F90 \
+	bdyvol.F90 \
+	cla_dynspg.F90 \
+	dom_oce.F90 \
+	domvvl.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	obc_oce.F90 \
 	obcdyn.F90 \
-	obc_oce.F90 \
 	obcvol.F90 \
 	oce.F90 \
@@ -3479,7 +3481,6 @@
 	restart.F90 \
 	sbc_oce.F90 \
-	solfet.F90 \
+	sol_oce.F90 \
 	solmat.F90 \
-	sol_oce.F90 \
 	solpcg.F90 \
 	solsor.F90 \
@@ -3499,23 +3500,4 @@
 	dynspg_oce.F90
 $(MODEL_LIB)(dynspg_ts.o) :	\
-	bdy_oce.F90 \
-	bdy_par.F90 \
-	bdytides.F90 \
-	c1d.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	dynadv.F90 \
-	dynspg_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(bdy_oce.o) \
 	$(MODEL_LIB)(bdy_par.o) \
@@ -3528,8 +3510,8 @@
 	$(MODEL_LIB)(eosbn2.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
@@ -3537,7 +3519,7 @@
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(obcdta.o) \
 	$(MODEL_LIB)(obc_oce.o) \
 	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(obcdta.o) \
 	$(MODEL_LIB)(oce.o) \
 	$(MODEL_LIB)(par_kind.o) \
@@ -3552,7 +3534,26 @@
 	$(MODEL_LIB)(zdfmxl.o) \
 	$(MODEL_LIB)(zpshde.o) \
-	obcdta.F90 \
+	bdy_oce.F90 \
+	bdy_par.F90 \
+	bdytides.F90 \
+	c1d.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dynadv.F90 \
+	dynspg_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	obc_oce.F90 \
 	obc_par.F90 \
+	obcdta.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -3567,8 +3568,30 @@
 	zdfmxl.F90 \
 	zpshde.F90 \
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(bdydta.o) \
+	$(MODEL_LIB)(bdydyn.o) \
+	$(MODEL_LIB)(bdytides.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(domvvl.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(dynvor.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(obcdta.o) \
+	$(MODEL_LIB)(obcfla.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	bdy_oce.F90 \
+	bdy_par.F90 \
 	bdydta.F90 \
 	bdydyn.F90 \
-	bdy_oce.F90 \
-	bdy_par.F90 \
 	bdytides.F90 \
 	dom_oce.F90 \
@@ -3580,30 +3603,8 @@
 	lbclnk.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(bdydta.o) \
-	$(MODEL_LIB)(bdydyn.o) \
-	$(MODEL_LIB)(bdy_oce.o) \
-	$(MODEL_LIB)(bdy_par.o) \
-	$(MODEL_LIB)(bdytides.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(domvvl.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(dynvor.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(obcdta.o) \
-	$(MODEL_LIB)(obcfla.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
+	obc_oce.F90 \
+	obc_par.F90 \
 	obcdta.F90 \
 	obcfla.F90 \
-	obc_oce.F90 \
-	obc_par.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -3616,14 +3617,4 @@
 	dynspg_ts.F90
 $(MODEL_LIB)(dynvor.o) :	\
-	dom_oce.F90 \
-	dynadv_cen2.F90 \
-	dynadv_ubs.F90 \
-	dynkeg.F90 \
-	dynzad.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(dynadv_cen2.o) \
@@ -3649,4 +3640,14 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	dynadv_cen2.F90 \
+	dynadv_ubs.F90 \
+	dynkeg.F90 \
+	dynzad.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -3662,8 +3663,4 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	dom_oce.F90 \
-	dynadv.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(dynadv.o) \
@@ -3674,4 +3671,8 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	dom_oce.F90 \
+	dynadv.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
 	oce.F90 \
 	prtctl.F90 \
@@ -3683,10 +3684,4 @@
 	dynvor.F90
 $(MODEL_LIB)(dynzad.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -3708,4 +3703,10 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -3721,6 +3722,4 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -3730,4 +3729,6 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
 	oce.F90 \
 	prtctl.F90 \
@@ -3739,44 +3740,5 @@
 	KEY_CPP \
 	dynzad.F90
-$(MODEL_LIB)(dynzdf_exp.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	phycst.F90 \
-	sbc_oce.F90 \
-	zdf_oce.F90 \
-	domzgr_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	dynzdf_exp.F90
 $(MODEL_LIB)(dynzdf.o) :	\
-	dom_oce.F90 \
-	domvvl.F90 \
-	dynzdf_exp.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(domvvl.o) \
@@ -3805,7 +3767,17 @@
 	$(MODEL_LIB)(trdvor.o) \
 	$(MODEL_LIB)(trdvor_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfddm.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	domvvl.F90 \
+	dynzdf_exp.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -3824,7 +3796,20 @@
 	trdvor.F90 \
 	trdvor_oce.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynzdf_exp.o) \
+	$(MODEL_LIB)(dynzdf_imp.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfkpp.o) \
+	$(MODEL_LIB)(zdftke.o) \
+	$(MODEL_LIB)(zdftke_old.o) \
 	dom_oce.F90 \
 	dynzdf_exp.F90 \
@@ -3832,23 +3817,10 @@
 	in_out_manager.F90 \
 	ldfdyn_oce.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynzdf_exp.o) \
-	$(MODEL_LIB)(dynzdf_imp.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(zdfkpp.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	$(MODEL_LIB)(zdftke.o) \
-	$(MODEL_LIB)(zdftke_old.o) \
 	oce.F90 \
 	prtctl.F90 \
 	trdmod.F90 \
 	trdmod_oce.F90 \
+	zdf_oce.F90 \
 	zdfkpp.F90 \
-	zdf_oce.F90 \
 	zdftke.F90 \
 	zdftke_old.F90 \
@@ -3858,19 +3830,17 @@
 	KEY_CPP \
 	dynzdf.F90
-$(MODEL_LIB)(dynzdf_imp.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
+$(MODEL_LIB)(dynzdf_exp.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -3879,4 +3849,6 @@
 	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -3886,11 +3858,35 @@
 	vectopt_loop_substitute.h90 \
 	KEY_CPP \
+	dynzdf_exp.F90
+$(MODEL_LIB)(dynzdf_imp.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	phycst.F90 \
+	sbc_oce.F90 \
+	zdf_oce.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
 	dynzdf_imp.F90
 $(MODEL_LIB)(eosbn2.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -3903,4 +3899,9 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -3908,6 +3909,4 @@
 	prtctl.F90 \
 	zdf_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -3915,4 +3914,6 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(zdfddm.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
 	phycst.F90 \
 	prtctl.F90 \
@@ -3923,19 +3924,10 @@
 	eosbn2.F90
 $(MODEL_LIB)(fldread.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
@@ -3946,303 +3938,7 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(restart.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	geo2ocean.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(geo2ocean.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	oce.F90 \
-	phycst.F90 \
-	$(AGRIF_LIB) \
-	KEY_CPP \
-	fldread.F90
-$(MODEL_LIB)(flo4rk.o) :	\
-	lib_print.f90 \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	flo_oce.F90 \
-	in_out_manager.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(flo_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(oce.o) \
-	oce.F90 \
-	KEY_CPP \
-	flo4rk.F90
-$(MODEL_LIB)(floats.o) :	\
-	daymod.F90 \
-	dom_oce.F90 \
-	flo_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(flo_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	oce.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	flo4rk.F90 \
-	floblk.F90 \
-	flodom.F90 \
-	flo_oce.F90 \
-	flowri.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(flo4rk.o) \
-	$(MODEL_LIB)(floblk.o) \
-	$(MODEL_LIB)(flodom.o) \
-	$(MODEL_LIB)(flo_oce.o) \
-	$(MODEL_LIB)(flowri.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(IOIPSL_LIB) \
-	KEY_CPP \
-	floats.F90
-$(MODEL_LIB)(floblk.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	flo_oce.F90 \
-	in_out_manager.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(flo_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	oce.F90 \
-	phycst.F90 \
-	domzgr_substitute.h90 \
-	KEY_CPP \
-	floblk.F90
-$(MODEL_LIB)(flodom.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	flo_oce.F90 \
-	in_out_manager.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(flo_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	oce.F90 \
-	domzgr_substitute.h90 \
-	KEY_CPP \
-	flodom.F90
-$(MODEL_LIB)(flo_oce.o) :	\
-	$(MODEL_LIB)(par_kind.o) \
-	par_kind.F90 \
-	$(MODEL_LIB)(par_oce.o) \
-	par_oce.F90 \
-	KEY_CPP \
-	flo_oce.F90
-$(MODEL_LIB)(flowri.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbcnfd.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	flo_oce.F90 \
-	in_out_manager.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(flo_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	oce.F90 \
-	domzgr_substitute.h90 \
-	KEY_CPP \
-	flowri.F90
-$(MODEL_LIB)(geo2ocean.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(phycst.o) \
-	phycst.F90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	geo2ocean.F90
-$(MODEL_LIB)(ice_2.o) :	\
-	$(MODEL_LIB)(par_oce.o) \
-	par_oce.F90 \
-	$(MODEL_LIB)(par_ice_2.o) \
-	par_ice_2.F90 \
-	KEY_CPP \
-	ice_2.F90
-$(MODEL_LIB)(iceini_2.o) :	\
-	daymod.F90 \
-	dom_ice_2.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	sbc_ice.F90 \
-	sbc_oce.F90 \
-	dom_ice_2.F90 \
-	dom_oce.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
-	limistate_2.F90 \
-	limmsh_2.F90 \
-	limrst_2.F90 \
-	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(limistate_2.o) \
-	$(MODEL_LIB)(limmsh_2.o) \
-	$(MODEL_LIB)(limrst_2.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	phycst.F90 \
-	sbc_ice.F90 \
-	sbc_oce.F90 \
-	KEY_CPP \
-	iceini_2.F90
-$(MODEL_LIB)(in_out_manager.o) :	\
-	$(MODEL_LIB)(par_kind.o) \
-	par_kind.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	in_out_manager.F90
-$(MODEL_LIB)(iom_def.o) :	\
-	$(MODEL_LIB)(par_kind.o) \
-	par_kind.F90 \
-	$(IOIPSL_LIB) \
-	KEY_CPP \
-	iom_def.F90
-$(MODEL_LIB)(iom.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
 	iom_ioipsl.F90 \
@@ -4250,4 +3946,296 @@
 	iom_rstdimg.F90 \
 	lbclnk.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(geo2ocean.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	geo2ocean.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	oce.F90 \
+	phycst.F90 \
+	$(AGRIF_LIB) \
+	KEY_CPP \
+	fldread.F90
+$(MODEL_LIB)(flo4rk.o) :	\
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flo_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	dom_oce.F90 \
+	flo_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	KEY_CPP \
+	flo4rk.F90
+$(MODEL_LIB)(flo_oce.o) :	\
+	$(MODEL_LIB)(par_kind.o) \
+	par_kind.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	par_oce.F90 \
+	KEY_CPP \
+	flo_oce.F90
+$(MODEL_LIB)(floats.o) :	\
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flo_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	flo_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(flo4rk.o) \
+	$(MODEL_LIB)(flo_oce.o) \
+	$(MODEL_LIB)(floblk.o) \
+	$(MODEL_LIB)(flodom.o) \
+	$(MODEL_LIB)(flowri.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	flo4rk.F90 \
+	flo_oce.F90 \
+	floblk.F90 \
+	flodom.F90 \
+	flowri.F90 \
+	lib_mpp.F90 \
+	$(IOIPSL_LIB) \
+	KEY_CPP \
+	floats.F90
+$(MODEL_LIB)(floblk.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flo_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	flo_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	phycst.F90 \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	floblk.F90
+$(MODEL_LIB)(flodom.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flo_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	dom_oce.F90 \
+	flo_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	flodom.F90
+$(MODEL_LIB)(flowri.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbcnfd.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flo_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	flo_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	flowri.F90
+$(MODEL_LIB)(geo2ocean.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	phycst.F90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	geo2ocean.F90
+$(MODEL_LIB)(ice_2.o) :	\
+	$(MODEL_LIB)(par_oce.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_ice_2.o) \
+	par_ice_2.F90 \
+	KEY_CPP \
+	ice_2.F90
+$(MODEL_LIB)(iceini_2.o) :	\
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	daymod.F90 \
+	dom_ice_2.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
+	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(limistate_2.o) \
+	$(MODEL_LIB)(limmsh_2.o) \
+	$(MODEL_LIB)(limrst_2.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	dom_ice_2.F90 \
+	dom_oce.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	limistate_2.F90 \
+	limmsh_2.F90 \
+	limrst_2.F90 \
+	phycst.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
+	KEY_CPP \
+	iceini_2.F90
+$(MODEL_LIB)(in_out_manager.o) :	\
+	$(MODEL_LIB)(par_kind.o) \
+	par_kind.F90 \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	in_out_manager.F90
+$(MODEL_LIB)(iom.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom_def.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -4257,79 +4245,145 @@
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	KEY_CPP \
 	iom.F90
+$(MODEL_LIB)(iom_def.o) :	\
+	$(MODEL_LIB)(par_kind.o) \
+	par_kind.F90 \
+	$(IOIPSL_LIB) \
+	KEY_CPP \
+	iom_def.F90
 $(MODEL_LIB)(iom_ioipsl.o) :	\
-	lib_print.f90 \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom_def.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
 	iom_def.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
 	$(IOIPSL_LIB) \
 	iom_ioipsl.F90
 $(MODEL_LIB)(iom_nf90.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
 	iom_def.F90 \
 	lbclnk.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(lbclnk.o) \
 	iom_nf90.F90
 $(MODEL_LIB)(iom_rstdimg.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
 	iom_def.F90 \
 	lbclnk.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(lbclnk.o) \
 	iom_rstdimg.F90
 $(MODEL_LIB)(istate.o) :	\
+	$(MODEL_LIB)(agrif_opa_interp.o) \
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(bdydta.o) \
+	$(MODEL_LIB)(bdydyn.o) \
+	$(MODEL_LIB)(bdytides.o) \
+	$(MODEL_LIB)(bdyvol.o) \
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(cla_dynspg.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(domvvl.o) \
+	$(MODEL_LIB)(dynspg_exp.o) \
+	$(MODEL_LIB)(dynspg_flt.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(dynspg_ts.o) \
+	$(MODEL_LIB)(dynvor.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(obcdta.o) \
+	$(MODEL_LIB)(obcdyn.o) \
+	$(MODEL_LIB)(obcfla.o) \
+	$(MODEL_LIB)(obcvol.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(solmat.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(solver.o) \
+	$(MODEL_LIB)(trdmld_oce.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zpshde.o) \
 	agrif_opa_interp.F90 \
+	bdy_oce.F90 \
+	bdy_par.F90 \
 	bdydta.F90 \
 	bdydyn.F90 \
-	bdy_oce.F90 \
-	bdy_par.F90 \
 	bdytides.F90 \
 	bdyvol.F90 \
@@ -4346,6 +4400,6 @@
 	eosbn2.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -4354,64 +4408,10 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(agrif_opa_interp.o) \
-	$(MODEL_LIB)(bdydta.o) \
-	$(MODEL_LIB)(bdydyn.o) \
-	$(MODEL_LIB)(bdy_oce.o) \
-	$(MODEL_LIB)(bdy_par.o) \
-	$(MODEL_LIB)(bdytides.o) \
-	$(MODEL_LIB)(bdyvol.o) \
-	$(MODEL_LIB)(c1d.o) \
-	$(MODEL_LIB)(cla_dynspg.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(domvvl.o) \
-	$(MODEL_LIB)(dynspg_exp.o) \
-	$(MODEL_LIB)(dynspg_flt.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(dynspg_ts.o) \
-	$(MODEL_LIB)(dynvor.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(obcdta.o) \
-	$(MODEL_LIB)(obcdyn.o) \
-	$(MODEL_LIB)(obcfla.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(obcvol.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(solfet.o) \
-	$(MODEL_LIB)(solmat.o) \
-	$(MODEL_LIB)(sol_oce.o) \
-	$(MODEL_LIB)(solpcg.o) \
-	$(MODEL_LIB)(solsor.o) \
-	$(MODEL_LIB)(solver.o) \
-	$(MODEL_LIB)(trdmld_oce.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	$(MODEL_LIB)(zpshde.o) \
+	lib_print.F90 \
+	obc_oce.F90 \
+	obc_par.F90 \
 	obcdta.F90 \
 	obcdyn.F90 \
 	obcfla.F90 \
-	obc_oce.F90 \
-	obc_par.F90 \
 	obcvol.F90 \
 	oce.F90 \
@@ -4422,7 +4422,6 @@
 	restart.F90 \
 	sbc_oce.F90 \
-	solfet.F90 \
+	sol_oce.F90 \
 	solmat.F90 \
-	sol_oce.F90 \
 	solpcg.F90 \
 	solsor.F90 \
@@ -4431,8 +4430,31 @@
 	trdmod.F90 \
 	trdmod_oce.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
 	zpshde.F90 \
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(divcur.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(domvvl.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(dynspg.o) \
+	$(MODEL_LIB)(dynspg_exp.o) \
+	$(MODEL_LIB)(dynspg_flt.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(dynspg_ts.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(wzvmod.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zpshde.o) \
 	c1d.F90 \
 	daymod.F90 \
@@ -4442,6 +4464,6 @@
 	dtasal.F90 \
 	dtatem.F90 \
+	dynspg.F90 \
 	dynspg_exp.F90 \
-	dynspg.F90 \
 	dynspg_flt.F90 \
 	dynspg_oce.F90 \
@@ -4452,27 +4474,4 @@
 	lbclnk.F90 \
 	ldftra_oce.F90 \
-	$(MODEL_LIB)(c1d.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(divcur.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(domvvl.o) \
-	$(MODEL_LIB)(dtasal.o) \
-	$(MODEL_LIB)(dtatem.o) \
-	$(MODEL_LIB)(dynspg_exp.o) \
-	$(MODEL_LIB)(dynspg_flt.o) \
-	$(MODEL_LIB)(dynspg.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(dynspg_ts.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(wzvmod.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	$(MODEL_LIB)(zpshde.o) \
 	oce.F90 \
 	phycst.F90 \
@@ -4486,45 +4485,59 @@
 	istate.F90
 $(MODEL_LIB)(lbclnk.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
 	oce.F90 \
 	KEY_CPP \
 	lbclnk.F90
 $(MODEL_LIB)(lbcnfd.o) :	\
-	lib_print.f90 \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
 	oce.F90 \
 	lbcnfd.F90
 $(MODEL_LIB)(ldfdyn.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -4534,25 +4547,19 @@
 	ldftra_oce.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	zdfmxl.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	zdfmxl.F90 \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -4561,16 +4568,8 @@
 	ldfslp.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(ldfslp.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	oce.F90 \
-	phycst.F90 \
+	oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(ldftra_oce.o) \
 	ldftra_oce.F90 \
-	$(MODEL_LIB)(ldftra_oce.o) \
 	domzgr_substitute.h90 \
 	ldfdyn_antarctic.h90 \
@@ -4590,4 +4589,27 @@
 	ldfdyn_oce.F90
 $(MODEL_LIB)(ldfeiv.o) :	\
+	$(MODEL_LIB)(closea.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(fldread.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
 	closea.F90 \
 	daymod.F90 \
@@ -4595,6 +4617,6 @@
 	fldread.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -4605,28 +4627,5 @@
 	ldftra_oce.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(closea.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(fldread.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -4636,4 +4635,15 @@
 	sbc_oce.F90 \
 	zdfmxl.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcrnf.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -4642,15 +4652,4 @@
 	ldfslp.F90 \
 	ldftra_oce.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldfslp.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(sbcrnf.o) \
 	oce.F90 \
 	phycst.F90 \
@@ -4663,10 +4662,4 @@
 	ldfeiv.F90
 $(MODEL_LIB)(ldfslp.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -4680,4 +4673,10 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -4685,4 +4684,13 @@
 	prtctl.F90 \
 	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -4690,13 +4698,4 @@
 	ldfdyn_oce.F90 \
 	ldftra_oce.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
 	oce.F90 \
 	phycst.F90 \
@@ -4708,4 +4707,18 @@
 	ldfslp.F90
 $(MODEL_LIB)(ldftra.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -4715,25 +4728,19 @@
 	ldftra_oce.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	zdfmxl.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfslp.o) \
 	$(MODEL_LIB)(ldftra_oce.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	zdfmxl.F90 \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -4742,12 +4749,4 @@
 	ldftra_oce.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldfslp.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
 	oce.F90 \
 	phycst.F90 \
@@ -4769,36 +4768,25 @@
 $(MODEL_LIB)(lib_cray.o) :	\
 	lib_cray.f90
-$(MODEL_LIB)(lib_feti.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(lib_mpp.o) \
-	KEY_CPP \
-	lib_feti.F90
 $(MODEL_LIB)(lib_isml.o) :	\
 	lib_isml.f90
 $(MODEL_LIB)(lib_mpp.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
 	$(AGRIF_LIB) \
 	KEY_CPP \
@@ -4809,9 +4797,4 @@
 	lib_print.f90
 $(MODEL_LIB)(limadv_2.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -4823,8 +4806,19 @@
 	$(MODEL_LIB)(par_kind.o) \
 	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_ice_2.F90 \
 	par_kind.F90 \
 	par_oce.F90 \
+	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(prtctl.o) \
 	dom_ice_2.F90 \
 	dom_oce.F90 \
@@ -4832,10 +4826,4 @@
 	in_out_manager.F90 \
 	lbclnk.F90 \
-	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(prtctl.o) \
 	prtctl.F90 \
 	vectopt_loop_substitute.h90 \
@@ -4843,4 +4831,19 @@
 	limadv_2.F90
 $(MODEL_LIB)(limdia_2.o) :	\
+	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
 	dom_ice_2.F90 \
 	dom_oce.F90 \
@@ -4850,27 +4853,20 @@
 	iom.F90 \
 	lbclnk.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
 	$(MODEL_LIB)(ice_2.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(limistate_2.o) \
 	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
 	daymod.F90 \
 	dom_ice_2.F90 \
@@ -4878,12 +4874,4 @@
 	in_out_manager.F90 \
 	limistate_2.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(limistate_2.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
 	par_ice_2.F90 \
 	phycst.F90 \
@@ -4893,24 +4881,12 @@
 	limdia_2.F90
 $(MODEL_LIB)(limdmp_2.o) :	\
-	dom_oce.F90 \
-	dtasal.F90 \
-	dtatem.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(dtasal.o) \
 	$(MODEL_LIB)(dtatem.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
@@ -4926,133 +4902,11 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	trdmod.F90 \
-	trdmod_oce.F90 \
-	zdfmxl.F90 \
-	zdf_oce.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(tradmp.o) \
-	oce.F90 \
-	phycst.F90 \
-	tradmp.F90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	limdmp_2.F90
-$(MODEL_LIB)(limdyn_2.o) :	\
-	dom_ice_2.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	sbc_ice.F90 \
-	dom_ice_2.F90 \
-	dom_oce.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	limistate_2.F90 \
-	limrhg_2.F90 \
-	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(limistate_2.o) \
-	$(MODEL_LIB)(limrhg_2.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	phycst.F90 \
-	prtctl.F90 \
-	sbc_oce.F90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	limdyn_2.F90
-$(MODEL_LIB)(limhdf_2.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	prtctl.F90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	limhdf_2.F90
-$(MODEL_LIB)(limistate_2.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtatem.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
 	iom_ioipsl.F90 \
@@ -5060,7 +4914,131 @@
 	iom_rstdimg.F90 \
 	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	trdmod.F90 \
+	trdmod_oce.F90 \
+	zdf_oce.F90 \
+	zdfmxl.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	oce.F90 \
+	phycst.F90 \
+	tradmp.F90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	limdmp_2.F90
+$(MODEL_LIB)(limdyn_2.o) :	\
+	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	dom_ice_2.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	sbc_ice.F90 \
+	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(limistate_2.o) \
+	$(MODEL_LIB)(limrhg_2.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	dom_ice_2.F90 \
+	dom_oce.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	limistate_2.F90 \
+	limrhg_2.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	sbc_oce.F90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	limdyn_2.F90
+$(MODEL_LIB)(limhdf_2.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	dom_oce.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	prtctl.F90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	limhdf_2.F90
+$(MODEL_LIB)(limistate_2.o) :	\
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -5080,148 +5058,4 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(zdfddm.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	zdfddm.F90 \
-	dom_ice_2.F90 \
-	eosbn2.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(phycst.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	phycst.F90 \
-	KEY_CPP \
-	limistate_2.F90
-$(MODEL_LIB)(limmsh_2.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_ice_2.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(phycst.o) \
-	phycst.F90 \
-	KEY_CPP \
-	limmsh_2.F90
-$(MODEL_LIB)(limrhg_2.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_ice_2.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	sbc_ice.F90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	limrhg_2.F90
-$(MODEL_LIB)(limrst_2.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	daymod.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	sbc_ice.F90 \
-	sbc_oce.F90 \
-	KEY_CPP \
-	limrst_2.F90
-$(MODEL_LIB)(limsbc_2.o) :	\
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -5233,7 +5067,107 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
+	lib_print.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	zdfddm.F90 \
+	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_ice_2.F90 \
+	eosbn2.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	phycst.F90 \
+	KEY_CPP \
+	limistate_2.F90
+$(MODEL_LIB)(limmsh_2.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_ice_2.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	phycst.F90 \
+	KEY_CPP \
+	limmsh_2.F90
+$(MODEL_LIB)(limrhg_2.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	dom_ice_2.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	sbc_ice.F90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	limrhg_2.F90
+$(MODEL_LIB)(limrst_2.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
@@ -5241,54 +5175,14 @@
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(par_ice_2.o) \
 	$(MODEL_LIB)(par_kind.o) \
 	$(MODEL_LIB)(par_oce.o) \
 	$(MODEL_LIB)(phycst.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	albedo.F90 \
-	cpl_oasis3.F90 \
-	dom_oce.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(albedo.o) \
-	$(MODEL_LIB)(cpl_oasis3.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	sbc_ice.F90 \
-	sbc_oce.F90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	limsbc_2.F90
-$(MODEL_LIB)(limtab_2.o) :	\
-	$(MODEL_LIB)(par_kind.o) \
-	par_kind.F90 \
-	KEY_CPP \
-	limtab_2.F90
-$(MODEL_LIB)(limthd_2.o) :	\
-	cpl_oasis3.F90 \
-	dom_oce.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
 	iom_ioipsl.F90 \
@@ -5296,11 +5190,27 @@
 	iom_rstdimg.F90 \
 	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	limistate_2.F90 \
-	$(MODEL_LIB)(cpl_oasis3.o) \
-	$(MODEL_LIB)(dom_oce.o) \
+	lib_print.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	daymod.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
+	KEY_CPP \
+	limrst_2.F90
+$(MODEL_LIB)(limsbc_2.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
 	$(MODEL_LIB)(iom_def.o) \
@@ -5312,4 +5222,69 @@
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(albedo.o) \
+	$(MODEL_LIB)(cpl_oasis3.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	albedo.F90 \
+	cpl_oasis3.F90 \
+	dom_oce.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	limsbc_2.F90
+$(MODEL_LIB)(limtab_2.o) :	\
+	$(MODEL_LIB)(par_kind.o) \
+	par_kind.F90 \
+	KEY_CPP \
+	limtab_2.F90
+$(MODEL_LIB)(limthd_2.o) :	\
+	$(MODEL_LIB)(cpl_oasis3.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(limistate_2.o) \
 	$(MODEL_LIB)(oce.o) \
@@ -5319,4 +5294,17 @@
 	$(MODEL_LIB)(phycst.o) \
 	$(MODEL_LIB)(thd_ice_2.o) \
+	cpl_oasis3.F90 \
+	dom_oce.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	limistate_2.F90 \
 	oce.F90 \
 	par_ice_2.F90 \
@@ -5325,4 +5313,19 @@
 	phycst.F90 \
 	thd_ice_2.F90 \
+	$(MODEL_LIB)(cpl_oasis3.o) \
+	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(limtab_2.o) \
+	$(MODEL_LIB)(limthd_lac_2.o) \
+	$(MODEL_LIB)(limthd_zdf_2.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(thd_ice_2.o) \
 	cpl_oasis3.F90 \
 	dom_ice_2.F90 \
@@ -5335,19 +5338,4 @@
 	limthd_lac_2.F90 \
 	limthd_zdf_2.F90 \
-	$(MODEL_LIB)(cpl_oasis3.o) \
-	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(limtab_2.o) \
-	$(MODEL_LIB)(limthd_lac_2.o) \
-	$(MODEL_LIB)(limthd_zdf_2.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(thd_ice_2.o) \
 	phycst.F90 \
 	prtctl.F90 \
@@ -5360,4 +5348,15 @@
 	limthd_2.F90
 $(MODEL_LIB)(limthd_lac_2.o) :	\
+	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
 	dom_ice_2.F90 \
 	eosbn2.F90 \
@@ -5366,5 +5365,24 @@
 	iom.F90 \
 	lbclnk.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(limistate_2.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(thd_ice_2.o) \
+	ice_2.F90 \
+	limistate_2.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	thd_ice_2.F90 \
+	KEY_CPP \
+	limthd_lac_2.F90
+$(MODEL_LIB)(limthd_zdf_2.o) :	\
 	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(eosbn2.o) \
 	$(MODEL_LIB)(ice_2.o) \
@@ -5372,4 +5390,5 @@
 	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(oce.o) \
 	$(MODEL_LIB)(par_ice_2.o) \
@@ -5377,22 +5396,4 @@
 	$(MODEL_LIB)(par_oce.o) \
 	$(MODEL_LIB)(phycst.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	ice_2.F90 \
-	limistate_2.F90 \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(limistate_2.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(thd_ice_2.o) \
-	par_oce.F90 \
-	phycst.F90 \
-	thd_ice_2.F90 \
-	KEY_CPP \
-	limthd_lac_2.F90
-$(MODEL_LIB)(limthd_zdf_2.o) :	\
 	dom_ice_2.F90 \
 	dom_oce.F90 \
@@ -5402,5 +5403,27 @@
 	iom.F90 \
 	lbclnk.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(cpl_oasis3.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(limistate_2.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(thd_ice_2.o) \
+	cpl_oasis3.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	limistate_2.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	thd_ice_2.F90 \
+	KEY_CPP \
+	limthd_zdf_2.F90
+$(MODEL_LIB)(limtrp_2.o) :	\
 	$(MODEL_LIB)(dom_ice_2.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -5410,4 +5433,6 @@
 	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(oce.o) \
@@ -5416,26 +5441,6 @@
 	$(MODEL_LIB)(par_oce.o) \
 	$(MODEL_LIB)(phycst.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	cpl_oasis3.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
-	limistate_2.F90 \
-	$(MODEL_LIB)(cpl_oasis3.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(limistate_2.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(thd_ice_2.o) \
-	par_oce.F90 \
-	phycst.F90 \
-	thd_ice_2.F90 \
-	KEY_CPP \
-	limthd_zdf_2.F90
-$(MODEL_LIB)(limtrp_2.o) :	\
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
 	dom_ice_2.F90 \
 	dom_oce.F90 \
@@ -5447,29 +5452,23 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dom_ice_2.o) \
 	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
 	$(MODEL_LIB)(ice_2.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(limadv_2.o) \
+	$(MODEL_LIB)(limhdf_2.o) \
+	$(MODEL_LIB)(limistate_2.o) \
+	$(MODEL_LIB)(phycst.o) \
 	daymod.F90 \
 	dom_ice_2.F90 \
@@ -5482,15 +5481,4 @@
 	limhdf_2.F90 \
 	limistate_2.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(limadv_2.o) \
-	$(MODEL_LIB)(limhdf_2.o) \
-	$(MODEL_LIB)(limistate_2.o) \
-	$(MODEL_LIB)(phycst.o) \
 	phycst.F90 \
 	vectopt_loop_substitute.h90 \
@@ -5498,9 +5486,28 @@
 	limtrp_2.F90
 $(MODEL_LIB)(limwri_2.o) :	\
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
 	daymod.F90 \
 	dom_oce.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -5509,31 +5516,23 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
 	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
 	daymod.F90 \
 	dianam.F90 \
@@ -5544,20 +5543,9 @@
 	iom.F90 \
 	lbclnk.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dianam.o) \
-	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
 	phycst.F90 \
 	sbc_ice.F90 \
 	sbc_oce.F90 \
+	$(MODEL_LIB)(diadimg.o) \
 	diadimg.F90 \
-	$(MODEL_LIB)(diadimg.o) \
 	limwri_dimg_2.h90 \
 	vectopt_loop_substitute.h90 \
@@ -5566,6 +5554,41 @@
 	limwri_2.F90
 $(MODEL_LIB)(model.o) :	\
+	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(bdyini.o) \
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(cpl_oasis3.o) \
+	$(MODEL_LIB)(cpl_oasis4.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(diaptr.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(domain.o) \
+	$(MODEL_LIB)(domcfg.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(dyncor_c1d.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(istate.o) \
+	$(MODEL_LIB)(ldfdyn.o) \
+	$(MODEL_LIB)(ldftra.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(mppini.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(obcini.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(step.o) \
+	$(MODEL_LIB)(step_c1d.o) \
+	$(MODEL_LIB)(trcini.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdfini.o) \
+	$(MODEL_LIB)(zpshde.o) \
+	bdy_par.F90 \
 	bdyini.F90 \
-	bdy_par.F90 \
 	c1d.F90 \
 	cpl_oasis3.F90 \
@@ -5573,7 +5596,7 @@
 	daymod.F90 \
 	diaptr.F90 \
+	dom_oce.F90 \
 	domain.F90 \
 	domcfg.F90 \
-	dom_oce.F90 \
 	dtasal.F90 \
 	dtatem.F90 \
@@ -5587,48 +5610,13 @@
 	ldftra.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(bdyini.o) \
-	$(MODEL_LIB)(bdy_par.o) \
-	$(MODEL_LIB)(c1d.o) \
-	$(MODEL_LIB)(cpl_oasis3.o) \
-	$(MODEL_LIB)(cpl_oasis4.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(diaptr.o) \
-	$(MODEL_LIB)(domain.o) \
-	$(MODEL_LIB)(domcfg.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dtasal.o) \
-	$(MODEL_LIB)(dtatem.o) \
-	$(MODEL_LIB)(dyncor_c1d.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(istate.o) \
-	$(MODEL_LIB)(ldfdyn.o) \
-	$(MODEL_LIB)(ldftra.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(mppini.o) \
-	$(MODEL_LIB)(obcini.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(step_c1d.o) \
-	$(MODEL_LIB)(step.o) \
-	$(MODEL_LIB)(trcini.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(zdfini.o) \
-	$(MODEL_LIB)(zpshde.o) \
 	mppini.F90 \
+	obc_par.F90 \
 	obcini.F90 \
-	obc_par.F90 \
 	oce.F90 \
 	phycst.F90 \
 	prtctl.F90 \
 	sbc_oce.F90 \
+	step.F90 \
 	step_c1d.F90 \
-	step.F90 \
 	trcini.F90 \
 	trdmod.F90 \
@@ -5640,26 +5628,24 @@
 	model.f90
 $(MODEL_LIB)(mppini.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(sol_oce.o) \
-	sol_oce.F90 \
-	iom.F90 \
-	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	$(MODEL_LIB)(iom.o) \
+	iom.F90 \
 	domzgr_substitute.h90 \
 	mppini_2.h90 \
@@ -5670,9 +5656,46 @@
 	KEY_CPP \
 	oasis4_date.F90
+$(MODEL_LIB)(obc_oce.o) :	\
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	obc_par.F90 \
+	par_oce.F90 \
+	KEY_CPP \
+	obc_oce.F90
+$(MODEL_LIB)(obc_par.o) :	\
+	$(MODEL_LIB)(par_kind.o) \
+	par_kind.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	par_oce.F90 \
+	obc_par_EEL_R5.h90 \
+	KEY_CPP \
+	obc_par.F90
 $(MODEL_LIB)(obcdta.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -5681,23 +5704,5 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
+	lib_print.F90 \
 	obc_par.F90 \
 	oce.F90 \
@@ -5707,4 +5712,14 @@
 	prtctl.F90 \
 	restart.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
 	daymod.F90 \
 	dom_oce.F90 \
@@ -5714,14 +5729,4 @@
 	lbclnk.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
 	obc_oce.F90 \
 	oce.F90 \
@@ -5731,10 +5736,42 @@
 	KEY_CPP \
 	obcdta.F90
+$(MODEL_LIB)(obcdyn.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	obc_par.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	dynspg_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	phycst.F90 \
+	KEY_CPP \
+	obcdyn.F90
 $(MODEL_LIB)(obcdyn_bt.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -5746,8 +5783,21 @@
 	$(MODEL_LIB)(par_kind.o) \
 	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	obc_par.F90 \
 	oce.F90 \
 	par_kind.F90 \
 	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
 	dom_oce.F90 \
 	dynspg_oce.F90 \
@@ -5755,12 +5805,4 @@
 	lbclnk.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
 	obc_oce.F90 \
 	oce.F90 \
@@ -5768,49 +5810,5 @@
 	KEY_CPP \
 	obcdyn_bt.F90
-$(MODEL_LIB)(obcdyn.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	obc_par.F90 \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	dynspg_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	obc_oce.F90 \
-	oce.F90 \
-	phycst.F90 \
-	KEY_CPP \
-	obcdyn.F90
 $(MODEL_LIB)(obcfla.o) :	\
-	daymod.F90 \
-	dom_oce.F90 \
-	dynspg_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -5825,4 +5823,11 @@
 	$(MODEL_LIB)(par_oce.o) \
 	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	dynspg_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	obc_oce.F90 \
 	obc_par.F90 \
@@ -5830,14 +5835,14 @@
 	par_oce.F90 \
 	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(obcdta.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
 	dom_oce.F90 \
 	dynspg_oce.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(obcdta.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
+	obc_oce.F90 \
 	obcdta.F90 \
-	obc_oce.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -5845,11 +5850,4 @@
 	obcfla.F90
 $(MODEL_LIB)(obcini.o) :	\
-	daymod.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -5865,4 +5863,11 @@
 	$(MODEL_LIB)(par_oce.o) \
 	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	obc_oce.F90 \
 	obc_par.F90 \
@@ -5871,9 +5876,4 @@
 	par_oce.F90 \
 	phycst.F90 \
-	dom_oce.F90 \
-	dynspg_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(dynspg_oce.o) \
@@ -5885,4 +5885,9 @@
 	$(MODEL_LIB)(oce.o) \
 	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	dynspg_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	obc_oce.F90 \
 	obcrst.F90 \
@@ -5892,46 +5897,23 @@
 	KEY_CPP \
 	obcini.F90
-$(MODEL_LIB)(obc_oce.o) :	\
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
+$(MODEL_LIB)(obcrad.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	obc_par.F90 \
-	par_oce.F90 \
-	KEY_CPP \
-	obc_oce.F90
-$(MODEL_LIB)(obc_par.o) :	\
-	$(MODEL_LIB)(par_kind.o) \
-	par_kind.F90 \
-	$(MODEL_LIB)(par_oce.o) \
-	par_oce.F90 \
-	obc_par_EEL_R5.h90 \
-	KEY_CPP \
-	obc_par.F90
-$(MODEL_LIB)(obcrad.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	obc_par.F90 \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -5941,4 +5923,8 @@
 	$(MODEL_LIB)(oce.o) \
 	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	obc_oce.F90 \
 	oce.F90 \
@@ -5948,10 +5934,4 @@
 	obcrad.F90
 $(MODEL_LIB)(obcrst.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -5967,4 +5947,10 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(restart.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	obc_par.F90 \
 	oce.F90 \
@@ -5974,4 +5960,12 @@
 	prtctl.F90 \
 	restart.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
 	daymod.F90 \
 	dom_oce.F90 \
@@ -5979,12 +5973,4 @@
 	lbclnk.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
 	obc_oce.F90 \
 	oce.F90 \
@@ -5993,9 +5979,4 @@
 	obcrst.F90
 $(MODEL_LIB)(obctra.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -6007,12 +5988,13 @@
 	$(MODEL_LIB)(par_kind.o) \
 	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	obc_par.F90 \
 	oce.F90 \
 	par_kind.F90 \
 	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -6022,4 +6004,8 @@
 	$(MODEL_LIB)(oce.o) \
 	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	obc_oce.F90 \
 	oce.F90 \
@@ -6029,9 +6015,4 @@
 	obctra.F90
 $(MODEL_LIB)(obcvol.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -6042,10 +6023,12 @@
 	$(MODEL_LIB)(par_kind.o) \
 	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_print.F90 \
 	obc_par.F90 \
 	par_kind.F90 \
 	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lib_mpp.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -6055,4 +6038,7 @@
 	$(MODEL_LIB)(phycst.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
 	obc_oce.F90 \
 	oce.F90 \
@@ -6070,71 +6056,12 @@
 	oce.F90
 $(MODEL_LIB)(opa.o) :	\
-	agrif_opa_sponge.F90 \
-	bdydta.F90 \
-	bdy_oce.F90 \
-	bdy_par.F90 \
-	bdytides.F90 \
-	c1d.F90 \
-	cla_div.F90 \
-	cla.F90 \
-	closea.F90 \
-	cpl_oasis3.F90 \
-	daymod.F90 \
-	diafwb.F90 \
-	diagap.F90 \
-	diahdy.F90 \
-	diahth.F90 \
-	dianam.F90 \
-	diaptr.F90 \
-	diawri_c1d.F90 \
-	diawri.F90 \
-	divcur.F90 \
-	domhgr.F90 \
-	dommsk.F90 \
-	dom_oce.F90 \
-	domstp.F90 \
-	domvvl.F90 \
-	domwri.F90 \
-	domzgr.F90 \
-	dtasal.F90 \
-	dtatem.F90 \
-	dynadv.F90 \
-	dyncor_c1d.F90 \
-	dynhpg.F90 \
-	dynldf.F90 \
-	dynnxt_c1d.F90 \
-	dynnxt.F90 \
-	dynspg_exp.F90 \
-	dynspg.F90 \
-	dynspg_flt.F90 \
-	dynspg_oce.F90 \
-	dynspg_ts.F90 \
-	dynvor.F90 \
-	dynzdf.F90 \
-	eosbn2.F90 \
-	floats.F90 \
-	flo_oce.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldfdyn_oce.F90 \
-	ldfeiv.F90 \
-	ldfslp.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(agrif_opa_sponge.o) \
-	$(MODEL_LIB)(bdydta.o) \
 	$(MODEL_LIB)(bdy_oce.o) \
 	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(bdydta.o) \
 	$(MODEL_LIB)(bdytides.o) \
 	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(cla.o) \
 	$(MODEL_LIB)(cla_div.o) \
-	$(MODEL_LIB)(cla.o) \
 	$(MODEL_LIB)(closea.o) \
 	$(MODEL_LIB)(cpl_oasis3.o) \
@@ -6146,10 +6073,10 @@
 	$(MODEL_LIB)(dianam.o) \
 	$(MODEL_LIB)(diaptr.o) \
+	$(MODEL_LIB)(diawri.o) \
 	$(MODEL_LIB)(diawri_c1d.o) \
-	$(MODEL_LIB)(diawri.o) \
 	$(MODEL_LIB)(divcur.o) \
+	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(domhgr.o) \
 	$(MODEL_LIB)(dommsk.o) \
-	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(domstp.o) \
 	$(MODEL_LIB)(domvvl.o) \
@@ -6162,9 +6089,9 @@
 	$(MODEL_LIB)(dynhpg.o) \
 	$(MODEL_LIB)(dynldf.o) \
+	$(MODEL_LIB)(dynnxt.o) \
 	$(MODEL_LIB)(dynnxt_c1d.o) \
-	$(MODEL_LIB)(dynnxt.o) \
+	$(MODEL_LIB)(dynspg.o) \
 	$(MODEL_LIB)(dynspg_exp.o) \
 	$(MODEL_LIB)(dynspg_flt.o) \
-	$(MODEL_LIB)(dynspg.o) \
 	$(MODEL_LIB)(dynspg_oce.o) \
 	$(MODEL_LIB)(dynspg_ts.o) \
@@ -6172,11 +6099,11 @@
 	$(MODEL_LIB)(dynzdf.o) \
 	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(flo_oce.o) \
 	$(MODEL_LIB)(floats.o) \
-	$(MODEL_LIB)(flo_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
@@ -6189,7 +6116,7 @@
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(oasis4_date.o) \
-	$(MODEL_LIB)(obcdta.o) \
 	$(MODEL_LIB)(obc_oce.o) \
 	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(obcdta.o) \
 	$(MODEL_LIB)(obcrad.o) \
 	$(MODEL_LIB)(obcrst.o) \
@@ -6200,9 +6127,8 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(sbccpl.o) \
 	$(MODEL_LIB)(sbcmod.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(sbcrnf.o) \
-	$(MODEL_LIB)(sol_oce.o) \
 	$(MODEL_LIB)(stpctl.o) \
 	$(MODEL_LIB)(traadv.o) \
@@ -6226,4 +6152,5 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(wzvmod.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfbfr.o) \
 	$(MODEL_LIB)(zdfddm.o) \
@@ -6231,5 +6158,4 @@
 	$(MODEL_LIB)(zdfkpp.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfric.o) \
 	$(MODEL_LIB)(zdftke.o) \
@@ -6237,8 +6163,67 @@
 	$(MODEL_LIB)(zdftmx.o) \
 	$(MODEL_LIB)(zpshde.o) \
+	agrif_opa_sponge.F90 \
+	bdy_oce.F90 \
+	bdy_par.F90 \
+	bdydta.F90 \
+	bdytides.F90 \
+	c1d.F90 \
+	cla.F90 \
+	cla_div.F90 \
+	closea.F90 \
+	cpl_oasis3.F90 \
+	daymod.F90 \
+	diafwb.F90 \
+	diagap.F90 \
+	diahdy.F90 \
+	diahth.F90 \
+	dianam.F90 \
+	diaptr.F90 \
+	diawri.F90 \
+	diawri_c1d.F90 \
+	divcur.F90 \
+	dom_oce.F90 \
+	domhgr.F90 \
+	dommsk.F90 \
+	domstp.F90 \
+	domvvl.F90 \
+	domwri.F90 \
+	domzgr.F90 \
+	dtasal.F90 \
+	dtatem.F90 \
+	dynadv.F90 \
+	dyncor_c1d.F90 \
+	dynhpg.F90 \
+	dynldf.F90 \
+	dynnxt.F90 \
+	dynnxt_c1d.F90 \
+	dynspg.F90 \
+	dynspg_exp.F90 \
+	dynspg_flt.F90 \
+	dynspg_oce.F90 \
+	dynspg_ts.F90 \
+	dynvor.F90 \
+	dynzdf.F90 \
+	eosbn2.F90 \
+	flo_oce.F90 \
+	floats.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldfdyn_oce.F90 \
+	ldfeiv.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oasis4_date.F90 \
-	obcdta.F90 \
 	obc_oce.F90 \
 	obc_par.F90 \
+	obcdta.F90 \
 	obcrad.F90 \
 	obcrst.F90 \
@@ -6249,9 +6234,8 @@
 	prtctl.F90 \
 	restart.F90 \
+	sbc_oce.F90 \
 	sbccpl.F90 \
 	sbcmod.F90 \
-	sbc_oce.F90 \
 	sbcrnf.F90 \
-	sol_oce.F90 \
 	stpctl.F90 \
 	traadv.F90 \
@@ -6275,4 +6259,5 @@
 	trdvor_oce.F90 \
 	wzvmod.F90 \
+	zdf_oce.F90 \
 	zdfbfr.F90 \
 	zdfddm.F90 \
@@ -6280,5 +6265,4 @@
 	zdfkpp.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
 	zdfric.F90 \
 	zdftke.F90 \
@@ -6286,6 +6270,41 @@
 	zdftmx.F90 \
 	zpshde.F90 \
+	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(bdyini.o) \
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(cpl_oasis3.o) \
+	$(MODEL_LIB)(cpl_oasis4.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(diaptr.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(domain.o) \
+	$(MODEL_LIB)(domcfg.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(dyncor_c1d.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(istate.o) \
+	$(MODEL_LIB)(ldfdyn.o) \
+	$(MODEL_LIB)(ldftra.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(mppini.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(obcini.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(step.o) \
+	$(MODEL_LIB)(step_c1d.o) \
+	$(MODEL_LIB)(trcini.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdfini.o) \
+	$(MODEL_LIB)(zpshde.o) \
+	bdy_par.F90 \
 	bdyini.F90 \
-	bdy_par.F90 \
 	c1d.F90 \
 	cpl_oasis3.F90 \
@@ -6293,7 +6312,7 @@
 	daymod.F90 \
 	diaptr.F90 \
+	dom_oce.F90 \
 	domain.F90 \
 	domcfg.F90 \
-	dom_oce.F90 \
 	dtasal.F90 \
 	dtatem.F90 \
@@ -6307,48 +6326,13 @@
 	ldftra.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(bdyini.o) \
-	$(MODEL_LIB)(bdy_par.o) \
-	$(MODEL_LIB)(c1d.o) \
-	$(MODEL_LIB)(cpl_oasis3.o) \
-	$(MODEL_LIB)(cpl_oasis4.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(diaptr.o) \
-	$(MODEL_LIB)(domain.o) \
-	$(MODEL_LIB)(domcfg.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dtasal.o) \
-	$(MODEL_LIB)(dtatem.o) \
-	$(MODEL_LIB)(dyncor_c1d.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(istate.o) \
-	$(MODEL_LIB)(ldfdyn.o) \
-	$(MODEL_LIB)(ldftra.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(mppini.o) \
-	$(MODEL_LIB)(obcini.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(step_c1d.o) \
-	$(MODEL_LIB)(step.o) \
-	$(MODEL_LIB)(trcini.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(zdfini.o) \
-	$(MODEL_LIB)(zpshde.o) \
 	mppini.F90 \
+	obc_par.F90 \
 	obcini.F90 \
-	obc_par.F90 \
 	oce.F90 \
 	phycst.F90 \
 	prtctl.F90 \
 	sbc_oce.F90 \
+	step.F90 \
 	step_c1d.F90 \
-	step.F90 \
 	trcini.F90 \
 	trdmod.F90 \
@@ -6381,76 +6365,71 @@
 	par_oce.F90
 $(MODEL_LIB)(phycst.o) :	\
-	lib_print.f90 \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	in_out_manager.F90 \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	in_out_manager.F90 \
 	par_oce.F90 \
 	KEY_CPP \
 	phycst.F90
 $(MODEL_LIB)(prtctl.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
 	prtctl.F90
 $(MODEL_LIB)(restart.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
 	dom_oce.F90 \
 	eosbn2.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
 	lbclnk.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
-	zdf_oce.F90 \
-	c1d.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
 	$(MODEL_LIB)(c1d.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -6464,4 +6443,9 @@
 	$(MODEL_LIB)(zdfmxl.o) \
 	$(MODEL_LIB)(zpshde.o) \
+	c1d.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -6473,12 +6457,40 @@
 	KEY_CPP \
 	restart.F90
+$(MODEL_LIB)(sbc_ice.o) :	\
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_ice_2.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	par_ice_2.F90 \
+	par_oce.F90 \
+	KEY_CPP \
+	sbc_ice.F90
+$(MODEL_LIB)(sbc_oce.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	lbclnk.F90 \
+	par_oce.F90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	sbc_oce.F90
 $(MODEL_LIB)(sbcana.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -6494,4 +6506,11 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(restart.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -6500,4 +6519,12 @@
 	prtctl.F90 \
 	restart.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
 	daymod.F90 \
 	dom_oce.F90 \
@@ -6505,12 +6532,4 @@
 	lbclnk.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
 	oce.F90 \
 	phycst.F90 \
@@ -6521,10 +6540,30 @@
 	sbcana.F90
 $(MODEL_LIB)(sbcblk_clio.o) :	\
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(geo2ocean.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
 	daymod.F90 \
 	dom_oce.F90 \
 	geo2ocean.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -6533,13 +6572,52 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	$(MODEL_LIB)(albedo.o) \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(fldread.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	albedo.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	fldread.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	sbcblk_clio.F90
+$(MODEL_LIB)(sbcblk_core.o) :	\
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(geo2ocean.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
@@ -6554,49 +6632,10 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(restart.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	albedo.F90 \
 	daymod.F90 \
 	dom_oce.F90 \
-	fldread.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(albedo.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(fldread.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	sbc_ice.F90 \
-	sbc_oce.F90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	sbcblk_clio.F90
-$(MODEL_LIB)(sbcblk_core.o) :	\
-	daymod.F90 \
-	dom_oce.F90 \
 	geo2ocean.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -6605,25 +6644,5 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(geo2ocean.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
+	lib_print.F90 \
 	oce.F90 \
 	par_ice_2.F90 \
@@ -6633,11 +6652,4 @@
 	prtctl.F90 \
 	restart.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	fldread.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -6652,4 +6664,11 @@
 	$(MODEL_LIB)(sbc_ice.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	fldread.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -6662,25 +6681,12 @@
 	sbcblk_core.F90
 $(MODEL_LIB)(sbccpl.o) :	\
-	c1d.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(c1d.o) \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(eosbn2.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
@@ -6697,4 +6703,17 @@
 	$(MODEL_LIB)(zdfmxl.o) \
 	$(MODEL_LIB)(zpshde.o) \
+	c1d.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_ice_2.F90 \
@@ -6706,13 +6725,4 @@
 	zdfmxl.F90 \
 	zpshde.F90 \
-	albedo.F90 \
-	cpl_oasis3.F90 \
-	dom_oce.F90 \
-	geo2ocean.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
 	$(MODEL_LIB)(albedo.o) \
 	$(MODEL_LIB)(cpl_oasis3.o) \
@@ -6731,4 +6741,13 @@
 	$(MODEL_LIB)(sbc_ice.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
+	albedo.F90 \
+	cpl_oasis3.F90 \
+	dom_oce.F90 \
+	geo2ocean.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	oce.F90 \
 	par_ice_2.F90 \
@@ -6742,10 +6761,29 @@
 	sbccpl.F90
 $(MODEL_LIB)(sbcflx.o) :	\
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(geo2ocean.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
 	daymod.F90 \
 	dom_oce.F90 \
 	geo2ocean.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -6754,171 +6792,278 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(fldread.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	fldread.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	phycst.F90 \
+	sbc_oce.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	sbcflx.F90
+$(MODEL_LIB)(sbcfwb.o) :	\
+	$(MODEL_LIB)(closea.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(fldread.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcrnf.o) \
+	closea.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	fldread.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	sbc_oce.F90 \
+	sbcrnf.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcrnf.o) \
+	$(MODEL_LIB)(sbcssr.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	phycst.F90 \
+	sbc_oce.F90 \
+	sbcrnf.F90 \
+	sbcssr.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	sbcfwb.F90
+$(MODEL_LIB)(sbcice_if.o) :	\
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(geo2ocean.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(zdfddm.o) \
 	daymod.F90 \
 	dom_oce.F90 \
-	fldread.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(fldread.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	oce.F90 \
-	phycst.F90 \
-	sbc_oce.F90 \
-	domzgr_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	sbcflx.F90
-$(MODEL_LIB)(sbcfwb.o) :	\
-	closea.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	fldread.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(closea.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(fldread.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	sbc_oce.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(sbcrnf.o) \
-	oce.F90 \
-	phycst.F90 \
-	sbc_oce.F90 \
-	sbcrnf.F90 \
-	domzgr_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	sbcfwb.F90
-$(MODEL_LIB)(sbc_ice.o) :	\
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_ice_2.F90 \
-	par_oce.F90 \
-	KEY_CPP \
-	sbc_ice.F90
-$(MODEL_LIB)(sbcice_if.o) :	\
-	daymod.F90 \
-	dom_oce.F90 \
 	geo2ocean.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
 	lbclnk.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	zdfddm.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(fldread.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	fldread.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	oce.F90 \
+	phycst.F90 \
+	sbc_oce.F90 \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	sbcice_if.F90
+$(MODEL_LIB)(sbcice_lim.o) :	\
+	$(MODEL_LIB)(albedo.o) \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(geo2ocean.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(fldread.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(zdfddm.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
+	albedo.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	fldread.F90 \
+	ice_2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
 	zdfddm.F90 \
+	$(MODEL_LIB)(albedo.o) \
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcblk_clio.o) \
+	$(MODEL_LIB)(sbcblk_core.o) \
+	albedo.F90 \
+	c1d.F90 \
+	daymod.F90 \
 	dom_oce.F90 \
 	eosbn2.F90 \
-	fldread.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
+	sbcblk_clio.F90 \
+	sbcblk_core.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	sbcice_lim.F90
+$(MODEL_LIB)(sbcice_lim_2.o) :	\
+	$(MODEL_LIB)(albedo.o) \
+	$(MODEL_LIB)(cpl_oasis3.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(fldread.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(geo2ocean.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(limadv_2.o) \
+	$(MODEL_LIB)(limhdf_2.o) \
+	$(MODEL_LIB)(limistate_2.o) \
+	$(MODEL_LIB)(limmsh_2.o) \
+	$(MODEL_LIB)(limrhg_2.o) \
+	$(MODEL_LIB)(limrst_2.o) \
+	$(MODEL_LIB)(limtab_2.o) \
+	$(MODEL_LIB)(limthd_lac_2.o) \
+	$(MODEL_LIB)(limthd_zdf_2.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
-	oce.F90 \
-	phycst.F90 \
-	sbc_oce.F90 \
-	domzgr_substitute.h90 \
-	KEY_CPP \
-	sbcice_if.F90
-$(MODEL_LIB)(sbcice_lim_2.o) :	\
+	$(MODEL_LIB)(thd_ice_2.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	$(MODEL_LIB)(zdfddm.o) \
 	albedo.F90 \
 	cpl_oasis3.F90 \
@@ -6931,6 +7076,6 @@
 	ice_2.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -6939,5 +7084,5 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
 	limadv_2.F90 \
 	limhdf_2.F90 \
@@ -6949,44 +7094,4 @@
 	limthd_lac_2.F90 \
 	limthd_zdf_2.F90 \
-	$(MODEL_LIB)(albedo.o) \
-	$(MODEL_LIB)(cpl_oasis3.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dianam.o) \
-	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(fldread.o) \
-	$(MODEL_LIB)(geo2ocean.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(limadv_2.o) \
-	$(MODEL_LIB)(limhdf_2.o) \
-	$(MODEL_LIB)(limistate_2.o) \
-	$(MODEL_LIB)(limmsh_2.o) \
-	$(MODEL_LIB)(limrhg_2.o) \
-	$(MODEL_LIB)(limrst_2.o) \
-	$(MODEL_LIB)(limtab_2.o) \
-	$(MODEL_LIB)(limthd_lac_2.o) \
-	$(MODEL_LIB)(limthd_zdf_2.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(thd_ice_2.o) \
-	$(MODEL_LIB)(tradmp.o) \
-	$(MODEL_LIB)(zdfddm.o) \
 	oce.F90 \
 	par_ice_2.F90 \
@@ -7001,4 +7106,33 @@
 	tradmp.F90 \
 	zdfddm.F90 \
+	$(MODEL_LIB)(albedo.o) \
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_ice_2.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(iceini_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(limdia_2.o) \
+	$(MODEL_LIB)(limdmp_2.o) \
+	$(MODEL_LIB)(limdyn_2.o) \
+	$(MODEL_LIB)(limrst_2.o) \
+	$(MODEL_LIB)(limsbc_2.o) \
+	$(MODEL_LIB)(limthd_2.o) \
+	$(MODEL_LIB)(limtrp_2.o) \
+	$(MODEL_LIB)(limwri_2.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcblk_clio.o) \
+	$(MODEL_LIB)(sbcblk_core.o) \
+	$(MODEL_LIB)(sbccpl.o) \
 	albedo.F90 \
 	c1d.F90 \
@@ -7021,16 +7155,39 @@
 	limtrp_2.F90 \
 	limwri_2.F90 \
+	oce.F90 \
+	par_ice_2.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
+	sbcblk_clio.F90 \
+	sbcblk_core.F90 \
+	sbccpl.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	sbcice_lim_2.F90
+$(MODEL_LIB)(sbcmod.o) :	\
 	$(MODEL_LIB)(albedo.o) \
 	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(closea.o) \
+	$(MODEL_LIB)(cpl_oasis3.o) \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dom_ice_2.o) \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(fldread.o) \
+	$(MODEL_LIB)(geo2ocean.o) \
 	$(MODEL_LIB)(ice_2.o) \
 	$(MODEL_LIB)(iceini_2.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
 	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(limdia_2.o) \
 	$(MODEL_LIB)(limdmp_2.o) \
@@ -7043,112 +7200,20 @@
 	$(MODEL_LIB)(oce.o) \
 	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(sbcblk_clio.o) \
 	$(MODEL_LIB)(sbcblk_core.o) \
 	$(MODEL_LIB)(sbccpl.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	sbcblk_clio.F90 \
-	sbcblk_core.F90 \
-	sbccpl.F90 \
-	sbc_ice.F90 \
-	sbc_oce.F90 \
-	domzgr_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	sbcice_lim_2.F90
-$(MODEL_LIB)(sbcice_lim.o) :	\
-	albedo.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	fldread.F90 \
-	ice_2.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(albedo.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(fldread.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcrnf.o) \
+	$(MODEL_LIB)(sbcssr.o) \
+	$(MODEL_LIB)(trdmld_oce.o) \
 	$(MODEL_LIB)(zdfddm.o) \
-	oce.F90 \
-	par_ice_2.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	sbc_ice.F90 \
-	sbc_oce.F90 \
-	zdfddm.F90 \
-	albedo.F90 \
-	c1d.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(albedo.o) \
-	$(MODEL_LIB)(c1d.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbcblk_clio.o) \
-	$(MODEL_LIB)(sbcblk_core.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	sbcblk_clio.F90 \
-	sbcblk_core.F90 \
-	sbc_ice.F90 \
-	sbc_oce.F90 \
-	domzgr_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	sbcice_lim.F90
-$(MODEL_LIB)(sbcmod.o) :	\
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zpshde.o) \
 	albedo.F90 \
 	c1d.F90 \
@@ -7164,6 +7229,6 @@
 	iceini_2.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -7171,5 +7236,5 @@
 	lbclnk.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
 	limdia_2.F90 \
 	limdmp_2.F90 \
@@ -7180,50 +7245,4 @@
 	limtrp_2.F90 \
 	limwri_2.F90 \
-	$(MODEL_LIB)(albedo.o) \
-	$(MODEL_LIB)(c1d.o) \
-	$(MODEL_LIB)(closea.o) \
-	$(MODEL_LIB)(cpl_oasis3.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_ice_2.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(fldread.o) \
-	$(MODEL_LIB)(geo2ocean.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(iceini_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(limdia_2.o) \
-	$(MODEL_LIB)(limdmp_2.o) \
-	$(MODEL_LIB)(limdyn_2.o) \
-	$(MODEL_LIB)(limrst_2.o) \
-	$(MODEL_LIB)(limsbc_2.o) \
-	$(MODEL_LIB)(limthd_2.o) \
-	$(MODEL_LIB)(limtrp_2.o) \
-	$(MODEL_LIB)(limwri_2.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(sbcblk_clio.o) \
-	$(MODEL_LIB)(sbcblk_core.o) \
-	$(MODEL_LIB)(sbccpl.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(sbcrnf.o) \
-	$(MODEL_LIB)(trdmld_oce.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zpshde.o) \
 	oce.F90 \
 	par_ice_2.F90 \
@@ -7233,20 +7252,15 @@
 	prtctl.F90 \
 	restart.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
 	sbcblk_clio.F90 \
 	sbcblk_core.F90 \
 	sbccpl.F90 \
-	sbc_ice.F90 \
-	sbc_oce.F90 \
 	sbcrnf.F90 \
+	sbcssr.F90 \
 	trdmld_oce.F90 \
 	zdfddm.F90 \
 	zdfmxl.F90 \
 	zpshde.F90 \
-	closea.F90 \
-	cpl_oasis3.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
 	$(MODEL_LIB)(closea.o) \
 	$(MODEL_LIB)(cpl_oasis3.o) \
@@ -7259,4 +7273,6 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(sbcana.o) \
 	$(MODEL_LIB)(sbcblk_clio.o) \
@@ -7266,15 +7282,21 @@
 	$(MODEL_LIB)(sbcfwb.o) \
 	$(MODEL_LIB)(sbcice_if.o) \
+	$(MODEL_LIB)(sbcice_lim.o) \
 	$(MODEL_LIB)(sbcice_lim_2.o) \
-	$(MODEL_LIB)(sbcice_lim.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(sbcrnf.o) \
 	$(MODEL_LIB)(sbcssm.o) \
 	$(MODEL_LIB)(sbcssr.o) \
+	closea.F90 \
+	cpl_oasis3.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
 	oce.F90 \
 	phycst.F90 \
 	prtctl.F90 \
 	restart.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
 	sbcana.F90 \
 	sbcblk_clio.F90 \
@@ -7283,9 +7305,7 @@
 	sbcflx.F90 \
 	sbcfwb.F90 \
-	sbc_ice.F90 \
 	sbcice_if.F90 \
+	sbcice_lim.F90 \
 	sbcice_lim_2.F90 \
-	sbcice_lim.F90 \
-	sbc_oce.F90 \
 	sbcrnf.F90 \
 	sbcssm.F90 \
@@ -7294,35 +7314,30 @@
 	KEY_CPP \
 	sbcmod.F90
-$(MODEL_LIB)(sbc_oce.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_oce.F90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	sbc_oce.F90
 $(MODEL_LIB)(sbcrnf.o) :	\
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(geo2ocean.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
 	daymod.F90 \
 	dom_oce.F90 \
 	geo2ocean.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -7330,69 +7345,38 @@
 	lbclnk.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	sbc_oce.F90 \
+	$(MODEL_LIB)(closea.o) \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(geo2ocean.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(fldread.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	closea.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	fldread.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	phycst.F90 \
+	sbc_oce.F90 \
+	sbcrnf.F90
+$(MODEL_LIB)(sbcssm.o) :	\
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	sbc_oce.F90 \
-	closea.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	fldread.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	$(MODEL_LIB)(closea.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(fldread.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	phycst.F90 \
-	sbc_oce.F90 \
-	sbcrnf.F90
-$(MODEL_LIB)(sbcssm.o) :	\
-	c1d.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(c1d.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
@@ -7409,4 +7393,16 @@
 	$(MODEL_LIB)(zdfmxl.o) \
 	$(MODEL_LIB)(zpshde.o) \
+	c1d.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -7419,8 +7415,4 @@
 	zdfmxl.F90 \
 	zpshde.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -7431,4 +7423,8 @@
 	$(MODEL_LIB)(restart.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
 	oce.F90 \
 	prtctl.F90 \
@@ -7439,4 +7435,26 @@
 	sbcssm.F90
 $(MODEL_LIB)(sbcssr.o) :	\
+	$(MODEL_LIB)(closea.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(fldread.o) \
+	$(MODEL_LIB)(geo2ocean.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
 	closea.F90 \
 	daymod.F90 \
@@ -7445,6 +7463,6 @@
 	geo2ocean.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -7453,27 +7471,5 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(closea.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(fldread.o) \
-	$(MODEL_LIB)(geo2ocean.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -7483,11 +7479,4 @@
 	restart.F90 \
 	sbc_oce.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	fldread.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -7501,4 +7490,11 @@
 	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(sbcrnf.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	fldread.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -7510,102 +7506,75 @@
 $(MODEL_LIB)(sms.o) :	\
 	sms.F90
-$(MODEL_LIB)(solfet.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
+$(MODEL_LIB)(sol_oce.o) :	\
+	$(MODEL_LIB)(par_kind.o) \
+	par_kind.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	par_oce.F90 \
+	KEY_CPP \
+	sol_oce.F90
+$(MODEL_LIB)(solmat.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	obc_par.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
 	$(MODEL_LIB)(sol_oce.o) \
-	oce.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	phycst.F90 \
 	sol_oce.F90 \
 	KEY_CPP \
-	solfet.F90
-$(MODEL_LIB)(solmat.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	obc_par.F90 \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_feti.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_feti.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
+	solmat.F90
+$(MODEL_LIB)(solpcg.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
 	$(MODEL_LIB)(sol_oce.o) \
-	obc_oce.F90 \
-	oce.F90 \
-	phycst.F90 \
-	sol_oce.F90 \
-	KEY_CPP \
-	solmat.F90
-$(MODEL_LIB)(sol_oce.o) :	\
-	$(MODEL_LIB)(par_kind.o) \
-	par_kind.F90 \
-	$(MODEL_LIB)(par_oce.o) \
-	par_oce.F90 \
-	KEY_CPP \
-	sol_oce.F90
-$(MODEL_LIB)(solpcg.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(sol_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	oce.F90 \
 	sol_oce.F90 \
@@ -7614,24 +7583,20 @@
 	solpcg.F90
 $(MODEL_LIB)(solsor.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -7641,4 +7606,8 @@
 	$(MODEL_LIB)(sol_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	oce.F90 \
 	sol_oce.F90 \
@@ -7646,16 +7615,8 @@
 	solsor.F90
 $(MODEL_LIB)(solver.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_feti.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_feti.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
@@ -7667,4 +7628,10 @@
 	$(MODEL_LIB)(phycst.o) \
 	$(MODEL_LIB)(sol_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	obc_oce.F90 \
 	obc_par.F90 \
@@ -7674,4 +7641,14 @@
 	phycst.F90 \
 	sol_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(solmat.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	dom_oce.F90 \
 	dynspg_oce.F90 \
@@ -7679,55 +7656,19 @@
 	lbclnk.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(solmat.o) \
-	$(MODEL_LIB)(sol_oce.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
 	obc_oce.F90 \
 	oce.F90 \
+	sol_oce.F90 \
 	solmat.F90 \
-	sol_oce.F90 \
 	zdf_oce.F90 \
-	KEY_CPP \
 	solver.F90
-$(MODEL_LIB)(step_c1d.o) :	\
-	agrif_opa_interp.F90 \
-	agrif_opa_update.F90 \
-	bdytra.F90 \
-	c1d.F90 \
-	closea.F90 \
-	cpl_oasis3.F90 \
-	daymod.F90 \
-	diadimg.F90 \
-	diahth.F90 \
-	dianam.F90 \
-	diawri.F90 \
-	dom_oce.F90 \
-	domvvl.F90 \
-	dynspg_oce.F90 \
-	dynzdf_exp.F90 \
-	dynzdf_imp.F90 \
-	eosbn2.F90 \
-	fldread.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldfdyn_oce.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	limwri_2.F90 \
+$(MODEL_LIB)(step.o) :	\
+	$(MODEL_LIB)(agrif_oce.o) \
 	$(MODEL_LIB)(agrif_opa_interp.o) \
 	$(MODEL_LIB)(agrif_opa_update.o) \
+	$(MODEL_LIB)(albedo.o) \
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(bdydta.o) \
+	$(MODEL_LIB)(bdydyn.o) \
+	$(MODEL_LIB)(bdytides.o) \
 	$(MODEL_LIB)(bdytra.o) \
 	$(MODEL_LIB)(c1d.o) \
@@ -7741,24 +7682,52 @@
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(domvvl.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(dynadv.o) \
+	$(MODEL_LIB)(dynadv_cen2.o) \
+	$(MODEL_LIB)(dynadv_ubs.o) \
+	$(MODEL_LIB)(dynkeg.o) \
+	$(MODEL_LIB)(dynldf_bilap.o) \
+	$(MODEL_LIB)(dynldf_bilapg.o) \
+	$(MODEL_LIB)(dynldf_iso.o) \
+	$(MODEL_LIB)(dynldf_lap.o) \
+	$(MODEL_LIB)(dynspg_exp.o) \
+	$(MODEL_LIB)(dynspg_flt.o) \
 	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(dynspg_ts.o) \
+	$(MODEL_LIB)(dynzad.o) \
 	$(MODEL_LIB)(dynzdf_exp.o) \
 	$(MODEL_LIB)(dynzdf_imp.o) \
 	$(MODEL_LIB)(eosbn2.o) \
 	$(MODEL_LIB)(fldread.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(flo4rk.o) \
+	$(MODEL_LIB)(flo_oce.o) \
+	$(MODEL_LIB)(floblk.o) \
+	$(MODEL_LIB)(flodom.o) \
+	$(MODEL_LIB)(flowri.o) \
+	$(MODEL_LIB)(geo2ocean.o) \
+	$(MODEL_LIB)(ice_2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lbcnfd.o) \
 	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldfslp.o) \
 	$(MODEL_LIB)(ldftra_oce.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(limwri_2.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(obcdyn.o) \
+	$(MODEL_LIB)(obcdyn_bt.o) \
 	$(MODEL_LIB)(obctra.o) \
-	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(obcvol.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice_2.o) \
 	$(MODEL_LIB)(par_kind.o) \
 	$(MODEL_LIB)(par_oce.o) \
@@ -7766,4 +7735,6 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(sbcana.o) \
 	$(MODEL_LIB)(sbcblk_clio.o) \
@@ -7773,142 +7744,47 @@
 	$(MODEL_LIB)(sbcfwb.o) \
 	$(MODEL_LIB)(sbcice_if.o) \
+	$(MODEL_LIB)(sbcice_lim.o) \
 	$(MODEL_LIB)(sbcice_lim_2.o) \
-	$(MODEL_LIB)(sbcice_lim.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbcmod.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(sbcrnf.o) \
 	$(MODEL_LIB)(sbcssm.o) \
 	$(MODEL_LIB)(sbcssr.o) \
 	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(traadv_cen2.o) \
+	$(MODEL_LIB)(traadv_eiv.o) \
+	$(MODEL_LIB)(traadv_muscl.o) \
+	$(MODEL_LIB)(traadv_muscl2.o) \
+	$(MODEL_LIB)(traadv_qck.o) \
+	$(MODEL_LIB)(traadv_tvd.o) \
+	$(MODEL_LIB)(traadv_ubs.o) \
+	$(MODEL_LIB)(trabbl.o) \
+	$(MODEL_LIB)(traldf_bilap.o) \
+	$(MODEL_LIB)(traldf_bilapg.o) \
+	$(MODEL_LIB)(traldf_iso.o) \
+	$(MODEL_LIB)(traldf_lap.o) \
 	$(MODEL_LIB)(traqsr.o) \
+	$(MODEL_LIB)(trazdf.o) \
 	$(MODEL_LIB)(trazdf_exp.o) \
 	$(MODEL_LIB)(trazdf_imp.o) \
 	$(MODEL_LIB)(trc_oce.o) \
+	$(MODEL_LIB)(trdicp_oce.o) \
 	$(MODEL_LIB)(trdmld_oce.o) \
+	$(MODEL_LIB)(trdmld_rst.o) \
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(trdvor_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfddm.o) \
 	$(MODEL_LIB)(zdfkpp.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdftke.o) \
 	$(MODEL_LIB)(zdftke_old.o) \
 	$(MODEL_LIB)(zpshde.o) \
-	obctra.F90 \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	sbcana.F90 \
-	sbcblk_clio.F90 \
-	sbcblk_core.F90 \
-	sbccpl.F90 \
-	sbcflx.F90 \
-	sbcfwb.F90 \
-	sbc_ice.F90 \
-	sbcice_if.F90 \
-	sbcice_lim_2.F90 \
-	sbcice_lim.F90 \
-	sbcmod.F90 \
-	sbc_oce.F90 \
-	sbcrnf.F90 \
-	sbcssm.F90 \
-	sbcssr.F90 \
-	sol_oce.F90 \
-	traqsr.F90 \
-	trazdf_exp.F90 \
-	trazdf_imp.F90 \
-	trc_oce.F90 \
-	trdmld_oce.F90 \
-	trdmod.F90 \
-	trdmod_oce.F90 \
-	zdfddm.F90 \
-	zdfkpp.F90 \
-	zdfmxl.F90 \
-	zdf_oce.F90 \
-	zdftke.F90 \
-	zdftke_old.F90 \
-	zpshde.F90 \
-	daymod.F90 \
-	diawri_c1d.F90 \
-	diawri.F90 \
-	dom_oce.F90 \
-	dtasal.F90 \
-	dtatem.F90 \
-	dyncor_c1d.F90 \
-	dynnxt_c1d.F90 \
-	dynzdf.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(diawri_c1d.o) \
-	$(MODEL_LIB)(diawri.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dtasal.o) \
-	$(MODEL_LIB)(dtatem.o) \
-	$(MODEL_LIB)(dyncor_c1d.o) \
-	$(MODEL_LIB)(dynnxt_c1d.o) \
-	$(MODEL_LIB)(dynzdf.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(sbcmod.o) \
-	$(MODEL_LIB)(sbcrnf.o) \
-	$(MODEL_LIB)(stpctl.o) \
-	$(MODEL_LIB)(tranpc.o) \
-	$(MODEL_LIB)(tranxt.o) \
-	$(MODEL_LIB)(traqsr.o) \
-	$(MODEL_LIB)(trasbc.o) \
-	$(MODEL_LIB)(trazdf.o) \
-	$(MODEL_LIB)(trcstp.o) \
-	$(MODEL_LIB)(zdfbfr.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdfevd.o) \
-	$(MODEL_LIB)(zdfkpp.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	$(MODEL_LIB)(zdfric.o) \
-	$(MODEL_LIB)(zdftke.o) \
-	oce.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	sbcmod.F90 \
-	sbcrnf.F90 \
-	stpctl.F90 \
-	tranpc.F90 \
-	tranxt.F90 \
-	traqsr.F90 \
-	trasbc.F90 \
-	trazdf.F90 \
-	trcstp.F90 \
-	zdfbfr.F90 \
-	zdfddm.F90 \
-	zdfevd.F90 \
-	zdfkpp.F90 \
-	zdfmxl.F90 \
-	zdf_oce.F90 \
-	zdfric.F90 \
-	zdftke.F90 \
-	domzgr_substitute.h90 \
-	zdfddm_substitute.h90 \
-	KEY_CPP \
-	step_c1d.F90
-$(MODEL_LIB)(step.o) :	\
 	agrif_oce.F90 \
 	agrif_opa_interp.F90 \
 	agrif_opa_update.F90 \
 	albedo.F90 \
+	bdy_oce.F90 \
 	bdydta.F90 \
 	bdydyn.F90 \
-	bdy_oce.F90 \
 	bdytides.F90 \
 	bdytra.F90 \
@@ -7925,6 +7801,6 @@
 	dtasal.F90 \
 	dtatem.F90 \
+	dynadv.F90 \
 	dynadv_cen2.F90 \
-	dynadv.F90 \
 	dynadv_ubs.F90 \
 	dynkeg.F90 \
@@ -7943,13 +7819,13 @@
 	fldread.F90 \
 	flo4rk.F90 \
+	flo_oce.F90 \
 	floblk.F90 \
 	flodom.F90 \
-	flo_oce.F90 \
 	flowri.F90 \
 	geo2ocean.F90 \
 	ice_2.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -7961,127 +7837,10 @@
 	ldftra_oce.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
 	limwri_2.F90 \
-	$(MODEL_LIB)(agrif_oce.o) \
-	$(MODEL_LIB)(agrif_opa_interp.o) \
-	$(MODEL_LIB)(agrif_opa_update.o) \
-	$(MODEL_LIB)(albedo.o) \
-	$(MODEL_LIB)(bdydta.o) \
-	$(MODEL_LIB)(bdydyn.o) \
-	$(MODEL_LIB)(bdy_oce.o) \
-	$(MODEL_LIB)(bdytides.o) \
-	$(MODEL_LIB)(bdytra.o) \
-	$(MODEL_LIB)(c1d.o) \
-	$(MODEL_LIB)(closea.o) \
-	$(MODEL_LIB)(cpl_oasis3.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(diadimg.o) \
-	$(MODEL_LIB)(diahth.o) \
-	$(MODEL_LIB)(dianam.o) \
-	$(MODEL_LIB)(diawri.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(domvvl.o) \
-	$(MODEL_LIB)(dtasal.o) \
-	$(MODEL_LIB)(dtatem.o) \
-	$(MODEL_LIB)(dynadv_cen2.o) \
-	$(MODEL_LIB)(dynadv.o) \
-	$(MODEL_LIB)(dynadv_ubs.o) \
-	$(MODEL_LIB)(dynkeg.o) \
-	$(MODEL_LIB)(dynldf_bilapg.o) \
-	$(MODEL_LIB)(dynldf_bilap.o) \
-	$(MODEL_LIB)(dynldf_iso.o) \
-	$(MODEL_LIB)(dynldf_lap.o) \
-	$(MODEL_LIB)(dynspg_exp.o) \
-	$(MODEL_LIB)(dynspg_flt.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(dynspg_ts.o) \
-	$(MODEL_LIB)(dynzad.o) \
-	$(MODEL_LIB)(dynzdf_exp.o) \
-	$(MODEL_LIB)(dynzdf_imp.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(fldread.o) \
-	$(MODEL_LIB)(flo4rk.o) \
-	$(MODEL_LIB)(floblk.o) \
-	$(MODEL_LIB)(flodom.o) \
-	$(MODEL_LIB)(flo_oce.o) \
-	$(MODEL_LIB)(flowri.o) \
-	$(MODEL_LIB)(geo2ocean.o) \
-	$(MODEL_LIB)(ice_2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(ldfslp.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(limwri_2.o) \
-	$(MODEL_LIB)(obcdyn_bt.o) \
-	$(MODEL_LIB)(obcdyn.o) \
-	$(MODEL_LIB)(obc_oce.o) \
-	$(MODEL_LIB)(obc_par.o) \
-	$(MODEL_LIB)(obctra.o) \
-	$(MODEL_LIB)(obcvol.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_ice_2.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(sbcana.o) \
-	$(MODEL_LIB)(sbcblk_clio.o) \
-	$(MODEL_LIB)(sbcblk_core.o) \
-	$(MODEL_LIB)(sbccpl.o) \
-	$(MODEL_LIB)(sbcflx.o) \
-	$(MODEL_LIB)(sbcfwb.o) \
-	$(MODEL_LIB)(sbcice_if.o) \
-	$(MODEL_LIB)(sbcice_lim_2.o) \
-	$(MODEL_LIB)(sbcice_lim.o) \
-	$(MODEL_LIB)(sbc_ice.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(sbcrnf.o) \
-	$(MODEL_LIB)(sbcssm.o) \
-	$(MODEL_LIB)(sbcssr.o) \
-	$(MODEL_LIB)(sol_oce.o) \
-	$(MODEL_LIB)(traadv_cen2.o) \
-	$(MODEL_LIB)(traadv_eiv.o) \
-	$(MODEL_LIB)(traadv_muscl2.o) \
-	$(MODEL_LIB)(traadv_muscl.o) \
-	$(MODEL_LIB)(traadv_qck.o) \
-	$(MODEL_LIB)(traadv_tvd.o) \
-	$(MODEL_LIB)(traadv_ubs.o) \
-	$(MODEL_LIB)(trabbl.o) \
-	$(MODEL_LIB)(traldf_bilapg.o) \
-	$(MODEL_LIB)(traldf_bilap.o) \
-	$(MODEL_LIB)(traldf_iso.o) \
-	$(MODEL_LIB)(traldf_lap.o) \
-	$(MODEL_LIB)(traqsr.o) \
-	$(MODEL_LIB)(trazdf_exp.o) \
-	$(MODEL_LIB)(trazdf_imp.o) \
-	$(MODEL_LIB)(trazdf.o) \
-	$(MODEL_LIB)(trc_oce.o) \
-	$(MODEL_LIB)(trdicp_oce.o) \
-	$(MODEL_LIB)(trdmld_oce.o) \
-	$(MODEL_LIB)(trdmld_rst.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(trdvor_oce.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdfkpp.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	$(MODEL_LIB)(zdftke.o) \
-	$(MODEL_LIB)(zdftke_old.o) \
-	$(MODEL_LIB)(zpshde.o) \
-	obcdyn_bt.F90 \
-	obcdyn.F90 \
 	obc_oce.F90 \
 	obc_par.F90 \
+	obcdyn.F90 \
+	obcdyn_bt.F90 \
 	obctra.F90 \
 	obcvol.F90 \
@@ -8093,4 +7852,6 @@
 	prtctl.F90 \
 	restart.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
 	sbcana.F90 \
 	sbcblk_clio.F90 \
@@ -8099,9 +7860,7 @@
 	sbcflx.F90 \
 	sbcfwb.F90 \
-	sbc_ice.F90 \
 	sbcice_if.F90 \
+	sbcice_lim.F90 \
 	sbcice_lim_2.F90 \
-	sbcice_lim.F90 \
-	sbc_oce.F90 \
 	sbcrnf.F90 \
 	sbcssm.F90 \
@@ -8110,6 +7869,6 @@
 	traadv_cen2.F90 \
 	traadv_eiv.F90 \
+	traadv_muscl.F90 \
 	traadv_muscl2.F90 \
-	traadv_muscl.F90 \
 	traadv_qck.F90 \
 	traadv_tvd.F90 \
@@ -8121,6 +7880,6 @@
 	traldf_lap.F90 \
 	traqsr.F90 \
+	trazdf.F90 \
 	trazdf_exp.F90 \
-	trazdf.F90 \
 	trazdf_imp.F90 \
 	trc_oce.F90 \
@@ -8131,51 +7890,16 @@
 	trdmod_oce.F90 \
 	trdvor_oce.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
 	zdfkpp.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
 	zdftke.F90 \
 	zdftke_old.F90 \
 	zpshde.F90 \
-	agrif_opa_sponge.F90 \
-	bdydta.F90 \
-	bdy_par.F90 \
-	cla_div.F90 \
-	cla.F90 \
-	cpl_oasis3.F90 \
-	daymod.F90 \
-	diafwb.F90 \
-	diagap.F90 \
-	diahdy.F90 \
-	diahth.F90 \
-	diaptr.F90 \
-	diawri.F90 \
-	divcur.F90 \
-	dom_oce.F90 \
-	dtasal.F90 \
-	dtatem.F90 \
-	dynadv.F90 \
-	dynhpg.F90 \
-	dynldf.F90 \
-	dynnxt.F90 \
-	dynspg.F90 \
-	dynspg_oce.F90 \
-	dynvor.F90 \
-	dynzdf.F90 \
-	eosbn2.F90 \
-	floats.F90 \
-	flo_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	ldfdyn_oce.F90 \
-	ldfeiv.F90 \
-	ldfslp.F90 \
-	ldftra_oce.F90 \
 	$(MODEL_LIB)(agrif_opa_sponge.o) \
+	$(MODEL_LIB)(bdy_par.o) \
 	$(MODEL_LIB)(bdydta.o) \
-	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(cla.o) \
 	$(MODEL_LIB)(cla_div.o) \
-	$(MODEL_LIB)(cla.o) \
 	$(MODEL_LIB)(cpl_oasis3.o) \
 	$(MODEL_LIB)(daymod.o) \
@@ -8199,6 +7923,6 @@
 	$(MODEL_LIB)(dynzdf.o) \
 	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(flo_oce.o) \
 	$(MODEL_LIB)(floats.o) \
-	$(MODEL_LIB)(flo_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
 	$(MODEL_LIB)(iom.o) \
@@ -8208,6 +7932,6 @@
 	$(MODEL_LIB)(ldfslp.o) \
 	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(obc_par.o) \
 	$(MODEL_LIB)(obcdta.o) \
-	$(MODEL_LIB)(obc_par.o) \
 	$(MODEL_LIB)(obcrad.o) \
 	$(MODEL_LIB)(obcrst.o) \
@@ -8236,4 +7960,5 @@
 	$(MODEL_LIB)(trdvor.o) \
 	$(MODEL_LIB)(wzvmod.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfbfr.o) \
 	$(MODEL_LIB)(zdfddm.o) \
@@ -8241,5 +7966,4 @@
 	$(MODEL_LIB)(zdfkpp.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfric.o) \
 	$(MODEL_LIB)(zdftke.o) \
@@ -8247,6 +7971,41 @@
 	$(MODEL_LIB)(zdftmx.o) \
 	$(MODEL_LIB)(zpshde.o) \
+	agrif_opa_sponge.F90 \
+	bdy_par.F90 \
+	bdydta.F90 \
+	cla.F90 \
+	cla_div.F90 \
+	cpl_oasis3.F90 \
+	daymod.F90 \
+	diafwb.F90 \
+	diagap.F90 \
+	diahdy.F90 \
+	diahth.F90 \
+	diaptr.F90 \
+	diawri.F90 \
+	divcur.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtatem.F90 \
+	dynadv.F90 \
+	dynhpg.F90 \
+	dynldf.F90 \
+	dynnxt.F90 \
+	dynspg.F90 \
+	dynspg_oce.F90 \
+	dynvor.F90 \
+	dynzdf.F90 \
+	eosbn2.F90 \
+	flo_oce.F90 \
+	floats.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldfeiv.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	obc_par.F90 \
 	obcdta.F90 \
-	obc_par.F90 \
 	obcrad.F90 \
 	obcrst.F90 \
@@ -8275,4 +8034,5 @@
 	trdvor.F90 \
 	wzvmod.F90 \
+	zdf_oce.F90 \
 	zdfbfr.F90 \
 	zdfddm.F90 \
@@ -8280,5 +8040,4 @@
 	zdfkpp.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
 	zdfric.F90 \
 	zdftke.F90 \
@@ -8291,26 +8050,29 @@
 	KEY_CPP \
 	step.F90
-$(MODEL_LIB)(stpctl.o) :	\
-	daymod.F90 \
-	diadimg.F90 \
-	diahth.F90 \
-	dianam.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldfdyn_oce.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	limwri_2.F90 \
+$(MODEL_LIB)(step_c1d.o) :	\
+	$(MODEL_LIB)(agrif_opa_interp.o) \
+	$(MODEL_LIB)(agrif_opa_update.o) \
+	$(MODEL_LIB)(bdytra.o) \
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(closea.o) \
+	$(MODEL_LIB)(cpl_oasis3.o) \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(diadimg.o) \
 	$(MODEL_LIB)(diahth.o) \
 	$(MODEL_LIB)(dianam.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(diawri.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(domvvl.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(dynzdf_exp.o) \
+	$(MODEL_LIB)(dynzdf_imp.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(fldread.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lbcnfd.o) \
@@ -8320,85 +8082,13 @@
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(limwri_2.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(obctra.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
 	$(MODEL_LIB)(sbc_ice.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(sbcssr.o) \
-	$(MODEL_LIB)(sol_oce.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	sbc_ice.F90 \
-	sbc_oce.F90 \
-	sbcssr.F90 \
-	sol_oce.F90 \
-	zdfddm.F90 \
-	zdfmxl.F90 \
-	zdf_oce.F90 \
-	diawri.F90 \
-	dom_oce.F90 \
-	dynspg_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(diawri.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(sol_oce.o) \
-	oce.F90 \
-	sol_oce.F90 \
-	stpctl.F90
-$(MODEL_LIB)(thd_ice_2.o) :	\
-	$(MODEL_LIB)(par_oce.o) \
-	par_oce.F90 \
-	$(MODEL_LIB)(par_ice_2.o) \
-	par_ice_2.F90 \
-	KEY_CPP \
-	thd_ice_2.F90
-$(MODEL_LIB)(traadv_cen2.o) :	\
-	closea.F90 \
-	cpl_oasis3.F90 \
-	daymod.F90 \
-	dianam.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	fldread.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(closea.o) \
-	$(MODEL_LIB)(cpl_oasis3.o) \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dianam.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(fldread.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
 	$(MODEL_LIB)(sbcana.o) \
 	$(MODEL_LIB)(sbcblk_clio.o) \
@@ -8408,8 +8098,364 @@
 	$(MODEL_LIB)(sbcfwb.o) \
 	$(MODEL_LIB)(sbcice_if.o) \
+	$(MODEL_LIB)(sbcice_lim.o) \
 	$(MODEL_LIB)(sbcice_lim_2.o) \
-	$(MODEL_LIB)(sbcice_lim.o) \
+	$(MODEL_LIB)(sbcmod.o) \
+	$(MODEL_LIB)(sbcrnf.o) \
+	$(MODEL_LIB)(sbcssm.o) \
+	$(MODEL_LIB)(sbcssr.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(traqsr.o) \
+	$(MODEL_LIB)(trazdf_exp.o) \
+	$(MODEL_LIB)(trazdf_imp.o) \
+	$(MODEL_LIB)(trc_oce.o) \
+	$(MODEL_LIB)(trdmld_oce.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfkpp.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdftke.o) \
+	$(MODEL_LIB)(zdftke_old.o) \
+	$(MODEL_LIB)(zpshde.o) \
+	agrif_opa_interp.F90 \
+	agrif_opa_update.F90 \
+	bdytra.F90 \
+	c1d.F90 \
+	closea.F90 \
+	cpl_oasis3.F90 \
+	daymod.F90 \
+	diadimg.F90 \
+	diahth.F90 \
+	dianam.F90 \
+	diawri.F90 \
+	dom_oce.F90 \
+	domvvl.F90 \
+	dynspg_oce.F90 \
+	dynzdf_exp.F90 \
+	dynzdf_imp.F90 \
+	eosbn2.F90 \
+	fldread.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	limwri_2.F90 \
+	obctra.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
+	sbcana.F90 \
+	sbcblk_clio.F90 \
+	sbcblk_core.F90 \
+	sbccpl.F90 \
+	sbcflx.F90 \
+	sbcfwb.F90 \
+	sbcice_if.F90 \
+	sbcice_lim.F90 \
+	sbcice_lim_2.F90 \
+	sbcmod.F90 \
+	sbcrnf.F90 \
+	sbcssm.F90 \
+	sbcssr.F90 \
+	sol_oce.F90 \
+	traqsr.F90 \
+	trazdf_exp.F90 \
+	trazdf_imp.F90 \
+	trc_oce.F90 \
+	trdmld_oce.F90 \
+	trdmod.F90 \
+	trdmod_oce.F90 \
+	zdf_oce.F90 \
+	zdfddm.F90 \
+	zdfkpp.F90 \
+	zdfmxl.F90 \
+	zdftke.F90 \
+	zdftke_old.F90 \
+	zpshde.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(diawri.o) \
+	$(MODEL_LIB)(diawri_c1d.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(dyncor_c1d.o) \
+	$(MODEL_LIB)(dynnxt_c1d.o) \
+	$(MODEL_LIB)(dynzdf.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbcmod.o) \
+	$(MODEL_LIB)(sbcrnf.o) \
+	$(MODEL_LIB)(stpctl.o) \
+	$(MODEL_LIB)(tranpc.o) \
+	$(MODEL_LIB)(tranxt.o) \
+	$(MODEL_LIB)(traqsr.o) \
+	$(MODEL_LIB)(trasbc.o) \
+	$(MODEL_LIB)(trazdf.o) \
+	$(MODEL_LIB)(trcstp.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfbfr.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfevd.o) \
+	$(MODEL_LIB)(zdfkpp.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdfric.o) \
+	$(MODEL_LIB)(zdftke.o) \
+	daymod.F90 \
+	diawri.F90 \
+	diawri_c1d.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtatem.F90 \
+	dyncor_c1d.F90 \
+	dynnxt_c1d.F90 \
+	dynzdf.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	oce.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	sbcmod.F90 \
+	sbcrnf.F90 \
+	stpctl.F90 \
+	tranpc.F90 \
+	tranxt.F90 \
+	traqsr.F90 \
+	trasbc.F90 \
+	trazdf.F90 \
+	trcstp.F90 \
+	zdf_oce.F90 \
+	zdfbfr.F90 \
+	zdfddm.F90 \
+	zdfevd.F90 \
+	zdfkpp.F90 \
+	zdfmxl.F90 \
+	zdfric.F90 \
+	zdftke.F90 \
+	domzgr_substitute.h90 \
+	zdfddm_substitute.h90 \
+	KEY_CPP \
+	step_c1d.F90
+$(MODEL_LIB)(stpctl.o) :	\
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(diadimg.o) \
+	$(MODEL_LIB)(diahth.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(limwri_2.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
 	$(MODEL_LIB)(sbc_ice.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcssr.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	daymod.F90 \
+	diadimg.F90 \
+	diahth.F90 \
+	dianam.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	limwri_2.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
+	sbcssr.F90 \
+	sol_oce.F90 \
+	zdf_oce.F90 \
+	zdfddm.F90 \
+	zdfmxl.F90 \
+	$(MODEL_LIB)(diawri.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	diawri.F90 \
+	dom_oce.F90 \
+	dynspg_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	sol_oce.F90 \
+	stpctl.F90
+$(MODEL_LIB)(thd_ice_2.o) :	\
+	$(MODEL_LIB)(par_oce.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_ice_2.o) \
+	par_ice_2.F90 \
+	KEY_CPP \
+	thd_ice_2.F90
+$(MODEL_LIB)(traadv.o) :	\
+	$(MODEL_LIB)(closea.o) \
+	$(MODEL_LIB)(diaptr.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcmod.o) \
+	$(MODEL_LIB)(sbcrnf.o) \
+	$(MODEL_LIB)(trabbl.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	closea.F90 \
+	diaptr.F90 \
+	dom_oce.F90 \
+	dynspg_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	sbc_oce.F90 \
+	sbcmod.F90 \
+	sbcrnf.F90 \
+	trabbl.F90 \
+	trdmod.F90 \
+	trdmod_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(traadv_cen2.o) \
+	$(MODEL_LIB)(traadv_eiv.o) \
+	$(MODEL_LIB)(traadv_muscl.o) \
+	$(MODEL_LIB)(traadv_muscl2.o) \
+	$(MODEL_LIB)(traadv_qck.o) \
+	$(MODEL_LIB)(traadv_tvd.o) \
+	$(MODEL_LIB)(traadv_ubs.o) \
+	$(MODEL_LIB)(trabbl.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	prtctl.F90 \
+	traadv_cen2.F90 \
+	traadv_eiv.F90 \
+	traadv_muscl.F90 \
+	traadv_muscl2.F90 \
+	traadv_qck.F90 \
+	traadv_tvd.F90 \
+	traadv_ubs.F90 \
+	trabbl.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	traadv.F90
+$(MODEL_LIB)(traadv_cen2.o) :	\
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(closea.o) \
+	$(MODEL_LIB)(cpl_oasis3.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(fldread.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_ice.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcana.o) \
+	$(MODEL_LIB)(sbcblk_clio.o) \
+	$(MODEL_LIB)(sbcblk_core.o) \
+	$(MODEL_LIB)(sbccpl.o) \
+	$(MODEL_LIB)(sbcflx.o) \
+	$(MODEL_LIB)(sbcfwb.o) \
+	$(MODEL_LIB)(sbcice_if.o) \
+	$(MODEL_LIB)(sbcice_lim.o) \
+	$(MODEL_LIB)(sbcice_lim_2.o) \
 	$(MODEL_LIB)(sbcrnf.o) \
 	$(MODEL_LIB)(sbcssm.o) \
@@ -8423,6 +8469,27 @@
 	$(MODEL_LIB)(trdvor.o) \
 	$(MODEL_LIB)(trdvor_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zpshde.o) \
+	c1d.F90 \
+	closea.F90 \
+	cpl_oasis3.F90 \
+	daymod.F90 \
+	dianam.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	fldread.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -8431,4 +8498,6 @@
 	prtctl.F90 \
 	restart.F90 \
+	sbc_ice.F90 \
+	sbc_oce.F90 \
 	sbcana.F90 \
 	sbcblk_clio.F90 \
@@ -8437,9 +8506,7 @@
 	sbcflx.F90 \
 	sbcfwb.F90 \
-	sbc_ice.F90 \
 	sbcice_if.F90 \
+	sbcice_lim.F90 \
 	sbcice_lim_2.F90 \
-	sbcice_lim.F90 \
-	sbc_oce.F90 \
 	sbcrnf.F90 \
 	sbcssm.F90 \
@@ -8453,14 +8520,8 @@
 	trdvor.F90 \
 	trdvor_oce.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
-	zdf_oce.F90 \
-	closea.F90 \
-	diaptr.F90 \
-	dom_oce.F90 \
-	dynspg_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
+	zdfmxl.F90 \
+	zpshde.F90 \
 	$(MODEL_LIB)(closea.o) \
 	$(MODEL_LIB)(diaptr.o) \
@@ -8469,10 +8530,12 @@
 	$(MODEL_LIB)(eosbn2.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(sbcmod.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(sbcrnf.o) \
 	$(MODEL_LIB)(trabbl.o) \
@@ -8480,8 +8543,18 @@
 	$(MODEL_LIB)(trdmod_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	prtctl.F90 \
+	closea.F90 \
+	diaptr.F90 \
+	dom_oce.F90 \
+	dynspg_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	sbc_oce.F90 \
 	sbcmod.F90 \
-	sbc_oce.F90 \
 	sbcrnf.F90 \
 	trabbl.F90 \
@@ -8494,4 +8567,20 @@
 	traadv_cen2.F90
 $(MODEL_LIB)(traadv_eiv.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -8503,27 +8592,17 @@
 	ldfdyn_oce.F90 \
 	ldftra_oce.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	zdfmxl.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(ldfslp.o) \
 	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	zdfmxl.F90 \
+	$(MODEL_LIB)(oce.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -8531,10 +8610,4 @@
 	ldfslp.F90 \
 	ldftra_oce.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(ldfslp.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(oce.o) \
 	oce.F90 \
 	domzgr_substitute.h90 \
@@ -8544,103 +8617,5 @@
 	KEY_CPP \
 	traadv_eiv.F90
-$(MODEL_LIB)(traadv.o) :	\
-	closea.F90 \
-	diaptr.F90 \
-	dom_oce.F90 \
-	dynspg_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	ldfslp.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(closea.o) \
-	$(MODEL_LIB)(diaptr.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldfslp.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbcmod.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(sbcrnf.o) \
-	$(MODEL_LIB)(trabbl.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	prtctl.F90 \
-	sbcmod.F90 \
-	sbc_oce.F90 \
-	sbcrnf.F90 \
-	trabbl.F90 \
-	trdmod.F90 \
-	trdmod_oce.F90 \
-	zdf_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	ldftra_oce.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(traadv_cen2.o) \
-	$(MODEL_LIB)(traadv_eiv.o) \
-	$(MODEL_LIB)(traadv_muscl2.o) \
-	$(MODEL_LIB)(traadv_muscl.o) \
-	$(MODEL_LIB)(traadv_qck.o) \
-	$(MODEL_LIB)(traadv_tvd.o) \
-	$(MODEL_LIB)(traadv_ubs.o) \
-	$(MODEL_LIB)(trabbl.o) \
-	oce.F90 \
-	prtctl.F90 \
-	traadv_cen2.F90 \
-	traadv_eiv.F90 \
-	traadv_muscl2.F90 \
-	traadv_muscl.F90 \
-	traadv_qck.F90 \
-	traadv_tvd.F90 \
-	traadv_ubs.F90 \
-	trabbl.F90 \
-	domzgr_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	traadv.F90
-$(MODEL_LIB)(traadv_muscl2.o) :	\
-	daymod.F90 \
-	dianam.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
+$(MODEL_LIB)(traadv_muscl.o) :	\
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dianam.o) \
@@ -8669,4 +8644,15 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	daymod.F90 \
+	dianam.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -8684,10 +8670,4 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	diaptr.F90 \
-	dom_oce.F90 \
-	dynspg_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
 	$(MODEL_LIB)(diaptr.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -8701,4 +8681,10 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	diaptr.F90 \
+	dom_oce.F90 \
+	dynspg_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	oce.F90 \
 	prtctl.F90 \
@@ -8709,17 +8695,6 @@
 	vectopt_loop_substitute.h90 \
 	KEY_CPP \
-	traadv_muscl2.F90
-$(MODEL_LIB)(traadv_muscl.o) :	\
-	daymod.F90 \
-	dianam.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
+	traadv_muscl.F90
+$(MODEL_LIB)(traadv_muscl2.o) :	\
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dianam.o) \
@@ -8748,4 +8723,15 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	daymod.F90 \
+	dianam.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -8763,10 +8749,4 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	diaptr.F90 \
-	dom_oce.F90 \
-	dynspg_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
 	$(MODEL_LIB)(diaptr.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -8780,4 +8760,10 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	diaptr.F90 \
+	dom_oce.F90 \
+	dynspg_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	oce.F90 \
 	prtctl.F90 \
@@ -8788,17 +8774,6 @@
 	vectopt_loop_substitute.h90 \
 	KEY_CPP \
-	traadv_muscl.F90
+	traadv_muscl2.F90
 $(MODEL_LIB)(traadv_qck.o) :	\
-	daymod.F90 \
-	dianam.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dianam.o) \
@@ -8827,4 +8802,15 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	daymod.F90 \
+	dianam.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -8842,10 +8828,4 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	diaptr.F90 \
-	dom_oce.F90 \
-	dynspg_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
 	$(MODEL_LIB)(diaptr.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -8859,4 +8839,10 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	diaptr.F90 \
+	dom_oce.F90 \
+	dynspg_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	oce.F90 \
 	prtctl.F90 \
@@ -8869,15 +8855,4 @@
 	traadv_qck.F90
 $(MODEL_LIB)(traadv_tvd.o) :	\
-	daymod.F90 \
-	dianam.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dianam.o) \
@@ -8906,4 +8881,15 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	daymod.F90 \
+	dianam.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -8921,10 +8907,4 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	diaptr.F90 \
-	dom_oce.F90 \
-	dynspg_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
 	$(MODEL_LIB)(diaptr.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -8938,4 +8918,10 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	diaptr.F90 \
+	dom_oce.F90 \
+	dynspg_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	oce.F90 \
 	prtctl.F90 \
@@ -8948,13 +8934,4 @@
 	traadv_tvd.F90
 $(MODEL_LIB)(traadv_ubs.o) :	\
-	daymod.F90 \
-	dianam.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbcnfd.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dianam.o) \
@@ -8979,4 +8956,13 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	daymod.F90 \
+	dianam.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbcnfd.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -8992,10 +8978,4 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	diaptr.F90 \
-	dom_oce.F90 \
-	dynspg_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lib_mpp.F90 \
 	$(MODEL_LIB)(diaptr.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -9008,4 +8988,10 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	diaptr.F90 \
+	dom_oce.F90 \
+	dynspg_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
 	oce.F90 \
 	prtctl.F90 \
@@ -9017,14 +9003,4 @@
 	traadv_ubs.F90
 $(MODEL_LIB)(trabbc.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -9050,4 +9026,14 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -9063,7 +9049,4 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -9074,4 +9057,7 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -9083,96 +9069,6 @@
 	trabbc.F90
 $(MODEL_LIB)(trabbl.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(trdicp.o) \
-	$(MODEL_LIB)(trdicp_oce.o) \
-	$(MODEL_LIB)(trdmld.o) \
-	$(MODEL_LIB)(trdmld_oce.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(trdvor.o) \
-	$(MODEL_LIB)(trdvor_oce.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	sbc_oce.F90 \
-	trdicp.F90 \
-	trdicp_oce.F90 \
-	trdmld.F90 \
-	trdmld_oce.F90 \
-	trdmod_oce.F90 \
-	trdvor.F90 \
-	trdvor_oce.F90 \
-	zdfddm.F90 \
-	zdf_oce.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	oce.F90 \
-	prtctl.F90 \
-	trdmod.F90 \
-	trdmod_oce.F90 \
-	eosbn2.F90 \
-	iom.F90 \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(oce.o) \
-	oce.F90 \
-	domzgr_substitute.h90 \
-	trabbl_adv.h90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	trabbl.F90
-$(MODEL_LIB)(tradmp.o) :	\
-	daymod.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
 	$(MODEL_LIB)(lbcnfd.o) \
 	$(MODEL_LIB)(ldftra_oce.o) \
@@ -9193,4 +9089,11 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -9207,55 +9110,43 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	dom_oce.F90 \
-	dtasal.F90 \
-	dtatem.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(dtasal.o) \
-	$(MODEL_LIB)(dtatem.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
+	zdfddm.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	phycst.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	oce.F90 \
 	prtctl.F90 \
 	trdmod.F90 \
 	trdmod_oce.F90 \
-	zdfmxl.F90 \
-	zdf_oce.F90 \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(oce.o) \
+	eosbn2.F90 \
+	iom.F90 \
+	oce.F90 \
 	domzgr_substitute.h90 \
+	trabbl_adv.h90 \
 	vectopt_loop_substitute.h90 \
-	$(IOIPSL_LIB) \
-	KEY_CPP \
-	tradmp.F90
-$(MODEL_LIB)(traldf_bilap.o) :	\
-	daymod.F90 \
-	dianam.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldfdyn_oce.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
+	KEY_CPP \
+	trabbl.F90
+$(MODEL_LIB)(tradmp.o) :	\
 	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dianam.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
 	$(MODEL_LIB)(ldftra_oce.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
@@ -9274,6 +9165,18 @@
 	$(MODEL_LIB)(trdvor.o) \
 	$(MODEL_LIB)(trdvor_oce.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -9289,123 +9192,37 @@
 	trdvor.F90 \
 	trdvor_oce.F90 \
-	zdfmxl.F90 \
 	zdf_oce.F90 \
-	diaptr.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	ldfslp.F90 \
-	ldftra_oce.F90 \
-	$(MODEL_LIB)(diaptr.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldfslp.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
-	oce.F90 \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtatem.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	phycst.F90 \
 	prtctl.F90 \
 	trdmod.F90 \
 	trdmod_oce.F90 \
+	zdf_oce.F90 \
+	zdfmxl.F90 \
 	domzgr_substitute.h90 \
-	ldfeiv_substitute.h90 \
-	ldftra_substitute.h90 \
 	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	traldf_bilap.F90
-$(MODEL_LIB)(traldf_bilapg.o) :	\
-	daymod.F90 \
-	dianam.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldfdyn_oce.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dianam.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(trdicp.o) \
-	$(MODEL_LIB)(trdicp_oce.o) \
-	$(MODEL_LIB)(trdmld.o) \
-	$(MODEL_LIB)(trdmld_oce.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(trdvor.o) \
-	$(MODEL_LIB)(trdvor_oce.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	sbc_oce.F90 \
-	trdicp.F90 \
-	trdicp_oce.F90 \
-	trdmld.F90 \
-	trdmld_oce.F90 \
-	trdmod_oce.F90 \
-	trdvor.F90 \
-	trdvor_oce.F90 \
-	zdfmxl.F90 \
-	zdf_oce.F90 \
-	diaptr.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	ldfslp.F90 \
-	ldftra_oce.F90 \
-	$(MODEL_LIB)(diaptr.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldfslp.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	oce.F90 \
-	prtctl.F90 \
-	trdmod.F90 \
-	trdmod_oce.F90 \
-	domzgr_substitute.h90 \
-	ldfeiv_substitute.h90 \
-	ldftra_substitute.h90 \
-	KEY_CPP \
-	traldf_bilapg.F90
+	$(IOIPSL_LIB) \
+	KEY_CPP \
+	tradmp.F90
 $(MODEL_LIB)(traldf.o) :	\
-	diaptr.F90 \
-	dom_oce.F90 \
-	domvvl.F90 \
-	dynspg_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldfdyn_oce.F90 \
-	ldfslp.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(diaptr.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -9436,9 +9253,21 @@
 	$(MODEL_LIB)(trdvor.o) \
 	$(MODEL_LIB)(trdvor_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfkpp.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdftke.o) \
 	$(MODEL_LIB)(zdftke_old.o) \
+	diaptr.F90 \
+	dom_oce.F90 \
+	domvvl.F90 \
+	dynspg_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldfdyn_oce.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -9457,15 +9286,9 @@
 	trdvor.F90 \
 	trdvor_oce.F90 \
+	zdf_oce.F90 \
 	zdfkpp.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
 	zdftke.F90 \
 	zdftke_old.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	ldfslp.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -9477,6 +9300,6 @@
 	$(MODEL_LIB)(phycst.o) \
 	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(traldf_bilap.o) \
 	$(MODEL_LIB)(traldf_bilapg.o) \
-	$(MODEL_LIB)(traldf_bilap.o) \
 	$(MODEL_LIB)(traldf_iso.o) \
 	$(MODEL_LIB)(traldf_lap.o) \
@@ -9484,6 +9307,12 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -9496,21 +9325,11 @@
 	trdmod.F90 \
 	trdmod_oce.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
-	zdf_oce.F90 \
 	domzgr_substitute.h90 \
 	vectopt_loop_substitute.h90 \
 	KEY_CPP \
 	traldf.F90
-$(MODEL_LIB)(traldf_iso.o) :	\
-	daymod.F90 \
-	dianam.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	ldfdyn_oce.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
+$(MODEL_LIB)(traldf_bilap.o) :	\
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dianam.o) \
@@ -9519,4 +9338,5 @@
 	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
 	$(MODEL_LIB)(ldfdyn_oce.o) \
 	$(MODEL_LIB)(ldftra_oce.o) \
@@ -9528,75 +9348,4 @@
 	$(MODEL_LIB)(phycst.o) \
 	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(trdicp.o) \
-	$(MODEL_LIB)(trdicp_oce.o) \
-	$(MODEL_LIB)(trdmld.o) \
-	$(MODEL_LIB)(trdmld_oce.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(trdvor.o) \
-	$(MODEL_LIB)(trdvor_oce.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	sbc_oce.F90 \
-	trdicp.F90 \
-	trdicp_oce.F90 \
-	trdmld.F90 \
-	trdmld_oce.F90 \
-	trdmod_oce.F90 \
-	trdvor.F90 \
-	trdvor_oce.F90 \
-	zdfmxl.F90 \
-	zdf_oce.F90 \
-	diaptr.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	ldfslp.F90 \
-	ldftra_oce.F90 \
-	$(MODEL_LIB)(diaptr.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(ldfslp.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	prtctl.F90 \
-	trdmod.F90 \
-	trdmod_oce.F90 \
-	zdf_oce.F90 \
-	domzgr_substitute.h90 \
-	ldftra_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	traldf_iso.F90
-$(MODEL_LIB)(traldf_lap.o) :	\
-	daymod.F90 \
-	dianam.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dianam.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(trdicp.o) \
@@ -9608,8 +9357,21 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
+	$(MODEL_LIB)(zdfmxl.o) \
+	daymod.F90 \
+	dianam.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
 	sbc_oce.F90 \
 	trdicp.F90 \
@@ -9621,11 +9383,10 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	diaptr.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	ldftra_oce.F90 \
+	zdfmxl.F90 \
 	$(MODEL_LIB)(diaptr.o) \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfslp.o) \
 	$(MODEL_LIB)(ldftra_oce.o) \
 	$(MODEL_LIB)(oce.o) \
@@ -9633,4 +9394,10 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	diaptr.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
 	oce.F90 \
 	prtctl.F90 \
@@ -9638,18 +9405,18 @@
 	trdmod_oce.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
 	ldftra_substitute.h90 \
 	vectopt_loop_substitute.h90 \
 	KEY_CPP \
-	traldf_lap.F90
-$(MODEL_LIB)(tranpc.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
+	traldf_bilap.F90
+$(MODEL_LIB)(traldf_bilapg.o) :	\
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
 	$(MODEL_LIB)(ldftra_oce.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
@@ -9668,6 +9435,17 @@
 	$(MODEL_LIB)(trdvor.o) \
 	$(MODEL_LIB)(trdvor_oce.o) \
-	$(MODEL_LIB)(zdfddm.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	daymod.F90 \
+	dianam.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -9683,35 +9461,234 @@
 	trdvor.F90 \
 	trdvor_oce.F90 \
-	zdfddm.F90 \
 	zdf_oce.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
+	zdfmxl.F90 \
+	$(MODEL_LIB)(diaptr.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
-	oce.F90 \
+	diaptr.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	prtctl.F90 \
 	trdmod.F90 \
 	trdmod_oce.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	KEY_CPP \
+	traldf_bilapg.F90
+$(MODEL_LIB)(traldf_iso.o) :	\
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(trdicp.o) \
+	$(MODEL_LIB)(trdicp_oce.o) \
+	$(MODEL_LIB)(trdmld.o) \
+	$(MODEL_LIB)(trdmld_oce.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(trdvor.o) \
+	$(MODEL_LIB)(trdvor_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	daymod.F90 \
+	dianam.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	sbc_oce.F90 \
+	trdicp.F90 \
+	trdicp_oce.F90 \
+	trdmld.F90 \
+	trdmld_oce.F90 \
+	trdmod_oce.F90 \
+	trdvor.F90 \
+	trdvor_oce.F90 \
+	zdf_oce.F90 \
+	zdfmxl.F90 \
+	$(MODEL_LIB)(diaptr.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	diaptr.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	prtctl.F90 \
+	trdmod.F90 \
+	trdmod_oce.F90 \
+	zdf_oce.F90 \
+	domzgr_substitute.h90 \
+	ldftra_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	traldf_iso.F90
+$(MODEL_LIB)(traldf_lap.o) :	\
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(trdicp.o) \
+	$(MODEL_LIB)(trdicp_oce.o) \
+	$(MODEL_LIB)(trdmld.o) \
+	$(MODEL_LIB)(trdmld_oce.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(trdvor.o) \
+	$(MODEL_LIB)(trdvor_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	daymod.F90 \
+	dianam.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	sbc_oce.F90 \
+	trdicp.F90 \
+	trdicp_oce.F90 \
+	trdmld.F90 \
+	trdmld_oce.F90 \
+	trdmod_oce.F90 \
+	trdvor.F90 \
+	trdvor_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(diaptr.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	diaptr.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	prtctl.F90 \
+	trdmod.F90 \
+	trdmod_oce.F90 \
+	domzgr_substitute.h90 \
+	ldftra_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	traldf_lap.F90
+$(MODEL_LIB)(tranpc.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(trdicp.o) \
+	$(MODEL_LIB)(trdicp_oce.o) \
+	$(MODEL_LIB)(trdmld.o) \
+	$(MODEL_LIB)(trdmld_oce.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(trdvor.o) \
+	$(MODEL_LIB)(trdvor_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	sbc_oce.F90 \
+	trdicp.F90 \
+	trdicp_oce.F90 \
+	trdmld.F90 \
+	trdmld_oce.F90 \
+	trdmod_oce.F90 \
+	trdvor.F90 \
+	trdvor_oce.F90 \
+	zdf_oce.F90 \
+	zdfddm.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	oce.F90 \
+	trdmod.F90 \
+	trdmod_oce.F90 \
+	zdf_oce.F90 \
+	domzgr_substitute.h90 \
 	KEY_CPP \
 	tranpc.F90
 $(MODEL_LIB)(tranxt.o) :	\
-	agrif_oce.F90 \
-	bdy_oce.F90 \
-	cla_div.F90 \
-	divcur.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(agrif_oce.o) \
 	$(MODEL_LIB)(bdy_oce.o) \
@@ -9741,4 +9718,15 @@
 	$(MODEL_LIB)(wzvmod.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	agrif_oce.F90 \
+	bdy_oce.F90 \
+	cla_div.F90 \
+	divcur.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	obc_oce.F90 \
 	oce.F90 \
@@ -9757,4 +9745,19 @@
 	wzvmod.F90 \
 	zdf_oce.F90 \
+	$(MODEL_LIB)(agrif_opa_interp.o) \
+	$(MODEL_LIB)(agrif_opa_update.o) \
+	$(MODEL_LIB)(bdytra.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(domvvl.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(obctra.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	agrif_opa_interp.F90 \
 	agrif_opa_update.F90 \
@@ -9765,19 +9768,4 @@
 	in_out_manager.F90 \
 	lbclnk.F90 \
-	$(MODEL_LIB)(agrif_opa_interp.o) \
-	$(MODEL_LIB)(agrif_opa_update.o) \
-	$(MODEL_LIB)(bdytra.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(domvvl.o) \
-	$(MODEL_LIB)(dynspg_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(obctra.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
 	obctra.F90 \
 	oce.F90 \
@@ -9792,25 +9780,12 @@
 	tranxt.F90
 $(MODEL_LIB)(traqsr.o) :	\
-	daymod.F90 \
-	dom_oce.F90 \
-	geo2ocean.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(geo2ocean.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
@@ -9831,4 +9806,17 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	geo2ocean.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -9844,8 +9832,4 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	dom_oce.F90 \
-	fldread.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(fldread.o) \
@@ -9859,4 +9843,8 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	dom_oce.F90 \
+	fldread.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -9871,12 +9859,4 @@
 	traqsr.F90
 $(MODEL_LIB)(trasbc.o) :	\
-	dom_oce.F90 \
-	fldread.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(fldread.o) \
@@ -9903,4 +9883,12 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	fldread.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -9919,6 +9907,4 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -9930,4 +9916,6 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -9941,82 +9929,5 @@
 	KEY_CPP \
 	trasbc.F90
-$(MODEL_LIB)(trazdf_exp.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(trdicp.o) \
-	$(MODEL_LIB)(trdicp_oce.o) \
-	$(MODEL_LIB)(trdmld.o) \
-	$(MODEL_LIB)(trdmld_oce.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(trdvor.o) \
-	$(MODEL_LIB)(trdvor_oce.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	sbc_oce.F90 \
-	trdicp.F90 \
-	trdicp_oce.F90 \
-	trdmld.F90 \
-	trdmld_oce.F90 \
-	trdmod_oce.F90 \
-	trdvor.F90 \
-	trdvor_oce.F90 \
-	zdf_oce.F90 \
-	dom_oce.F90 \
-	domvvl.F90 \
-	in_out_manager.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(domvvl.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	prtctl.F90 \
-	trdmod.F90 \
-	trdmod_oce.F90 \
-	zdfddm.F90 \
-	zdf_oce.F90 \
-	domzgr_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	zdfddm_substitute.h90 \
-	KEY_CPP \
-	trazdf_exp.F90
 $(MODEL_LIB)(trazdf.o) :	\
-	dom_oce.F90 \
-	domvvl.F90 \
-	dynzdf_exp.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldfslp.F90 \
-	ldftra.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(domvvl.o) \
@@ -10048,7 +9959,20 @@
 	$(MODEL_LIB)(trdvor.o) \
 	$(MODEL_LIB)(trdvor_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfddm.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	domvvl.F90 \
+	dynzdf_exp.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldfslp.F90 \
+	ldftra.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -10067,13 +9991,7 @@
 	trdvor.F90 \
 	trdvor_oce.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
-	dom_oce.F90 \
-	domvvl.F90 \
-	dynspg_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	ldftra_oce.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(domvvl.o) \
@@ -10090,8 +10008,14 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfkpp.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdftke.o) \
 	$(MODEL_LIB)(zdftke_old.o) \
+	dom_oce.F90 \
+	domvvl.F90 \
+	dynspg_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldftra_oce.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -10102,6 +10026,6 @@
 	trdmod.F90 \
 	trdmod_oce.F90 \
+	zdf_oce.F90 \
 	zdfkpp.F90 \
-	zdf_oce.F90 \
 	zdftke.F90 \
 	zdftke_old.F90 \
@@ -10111,20 +10035,8 @@
 	KEY_CPP \
 	trazdf.F90
-$(MODEL_LIB)(trazdf_imp.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldfdyn_oce.F90 \
-	ldfslp.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(ldfslp.o) \
+$(MODEL_LIB)(trazdf_exp.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(ldftra_oce.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
@@ -10143,6 +10055,11 @@
 	$(MODEL_LIB)(trdvor.o) \
 	$(MODEL_LIB)(trdvor_oce.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -10158,6 +10075,90 @@
 	trdvor.F90 \
 	trdvor_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(domvvl.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	dom_oce.F90 \
+	domvvl.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	prtctl.F90 \
+	trdmod.F90 \
+	trdmod_oce.F90 \
+	zdf_oce.F90 \
+	zdfddm.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	zdfddm_substitute.h90 \
+	KEY_CPP \
+	trazdf_exp.F90
+$(MODEL_LIB)(trazdf_imp.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(trdicp.o) \
+	$(MODEL_LIB)(trdicp_oce.o) \
+	$(MODEL_LIB)(trdmld.o) \
+	$(MODEL_LIB)(trdmld_oce.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(trdvor.o) \
+	$(MODEL_LIB)(trdvor_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldfdyn_oce.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	sbc_oce.F90 \
+	trdicp.F90 \
+	trdicp_oce.F90 \
+	trdmld.F90 \
+	trdmld_oce.F90 \
+	trdmod_oce.F90 \
+	trdvor.F90 \
+	trdvor_oce.F90 \
+	zdf_oce.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(domvvl.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
 	dom_oce.F90 \
 	domvvl.F90 \
@@ -10167,23 +10168,10 @@
 	ldftra.F90 \
 	ldftra_oce.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(domvvl.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldfslp.o) \
-	$(MODEL_LIB)(ldftra.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
 	oce.F90 \
 	prtctl.F90 \
 	trdmod.F90 \
 	trdmod_oce.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
-	zdf_oce.F90 \
 	domzgr_substitute.h90 \
 	ldftra_substitute.h90 \
@@ -10192,29 +10180,25 @@
 	KEY_CPP \
 	trazdf_imp.F90
+$(MODEL_LIB)(trc_oce.o) :	\
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	par_oce.F90 \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	trc_oce.F90
 $(MODEL_LIB)(trcini.o) :	\
 	trcini.F90
-$(MODEL_LIB)(trc_oce.o) :	\
-	lib_print.f90 \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_oce.F90 \
-	domzgr_substitute.h90 \
-	KEY_CPP \
-	trc_oce.F90
 $(MODEL_LIB)(trcstp.o) :	\
 	trcstp.F90
 $(MODEL_LIB)(trdicp.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -10229,4 +10213,8 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdfddm.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_print.F90 \
 	par_kind.F90 \
 	par_oce.F90 \
@@ -10237,4 +10225,14 @@
 	trdvor_oce.F90 \
 	zdfddm.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	dom_oce.F90 \
 	eosbn2.F90 \
@@ -10243,14 +10241,4 @@
 	ldftra_oce.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
 	oce.F90 \
 	phycst.F90 \
@@ -10269,16 +10257,4 @@
 	trdicp_oce.F90
 $(MODEL_LIB)(trdmld.o) :	\
-	c1d.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldfdyn_oce.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(c1d.o) \
 	$(MODEL_LIB)(daymod.o) \
@@ -10303,8 +10279,20 @@
 	$(MODEL_LIB)(trdmod_oce.o) \
 	$(MODEL_LIB)(trdvor_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfddm.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zpshde.o) \
+	c1d.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -10317,8 +10305,25 @@
 	trdmod_oce.F90 \
 	trdvor_oce.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
 	zpshde.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(diadimg.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(trdmld_rst.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
 	daymod.F90 \
 	diadimg.F90 \
@@ -10329,21 +10334,4 @@
 	ldfslp.F90 \
 	ldftra_oce.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(diadimg.o) \
-	$(MODEL_LIB)(dianam.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldfslp.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(trdmld_rst.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
 	oce.F90 \
 	phycst.F90 \
@@ -10352,7 +10340,7 @@
 	trdmld_rst.F90 \
 	trdmod_oce.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
 	domzgr_substitute.h90 \
 	ldftra_substitute.h90 \
@@ -10369,23 +10357,12 @@
 	trdmld_oce.F90
 $(MODEL_LIB)(trdmld_rst.o) :	\
-	c1d.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(c1d.o) \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(eosbn2.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
@@ -10403,4 +10380,15 @@
 	$(MODEL_LIB)(zdfmxl.o) \
 	$(MODEL_LIB)(zpshde.o) \
+	c1d.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -10415,8 +10403,4 @@
 	zdfmxl.F90 \
 	zpshde.F90 \
-	daymod.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -10425,4 +10409,8 @@
 	$(MODEL_LIB)(restart.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
 	restart.F90 \
 	trdmod_oce.F90 \
@@ -10430,16 +10418,4 @@
 	trdmld_rst.F90
 $(MODEL_LIB)(trdmod.o) :	\
-	daymod.F90 \
-	diadimg.F90 \
-	dianam.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	ldfdyn_oce.F90 \
-	ldfslp.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(diadimg.o) \
@@ -10465,7 +10441,19 @@
 	$(MODEL_LIB)(trdmod_oce.o) \
 	$(MODEL_LIB)(trdvor_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfddm.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
+	daymod.F90 \
+	diadimg.F90 \
+	dianam.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -10479,10 +10467,7 @@
 	trdmod_oce.F90 \
 	trdvor_oce.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	ldftra_oce.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -10496,4 +10481,7 @@
 	$(MODEL_LIB)(trdvor.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	ldftra_oce.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -10520,11 +10508,4 @@
 	trdmod_oce.F90
 $(MODEL_LIB)(trdvor.o) :	\
-	daymod.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(daymod.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -10544,4 +10525,11 @@
 	$(MODEL_LIB)(trdvor_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -10554,4 +10542,15 @@
 	trdvor_oce.F90 \
 	zdf_oce.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
 	daymod.F90 \
 	dianam.F90 \
@@ -10560,20 +10559,9 @@
 	lbclnk.F90 \
 	ldfdyn_oce.F90 \
-	$(MODEL_LIB)(daymod.o) \
-	$(MODEL_LIB)(dianam.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
 	oce.F90 \
 	phycst.F90 \
 	trdmod_oce.F90 \
+	zdf_oce.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
 	domzgr_substitute.h90 \
 	ldfdyn_substitute.h90 \
@@ -10590,25 +10578,12 @@
 	trdvor_oce.F90
 $(MODEL_LIB)(wzvmod.o) :	\
-	c1d.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(c1d.o) \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(eosbn2.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
@@ -10626,4 +10601,17 @@
 	$(MODEL_LIB)(zdfmxl.o) \
 	$(MODEL_LIB)(zpshde.o) \
+	c1d.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	obc_par.F90 \
 	oce.F90 \
@@ -10636,9 +10624,4 @@
 	zdfmxl.F90 \
 	zpshde.F90 \
-	dom_oce.F90 \
-	domvvl.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(domvvl.o) \
@@ -10653,4 +10636,9 @@
 	$(MODEL_LIB)(restart.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
+	dom_oce.F90 \
+	domvvl.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
 	obc_oce.F90 \
 	obc_par.F90 \
@@ -10664,24 +10652,28 @@
 	KEY_CPP \
 	wzvmod.F90
+$(MODEL_LIB)(zdf_oce.o) :	\
+	$(MODEL_LIB)(par_kind.o) \
+	par_kind.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	par_oce.F90 \
+	KEY_CPP \
+	zdf_oce.F90
 $(MODEL_LIB)(zdfbfr.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -10690,4 +10682,7 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
 	oce.F90 \
 	prtctl.F90 \
@@ -10697,23 +10692,20 @@
 	zdfbfr.F90
 $(MODEL_LIB)(zdfddm.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -10722,4 +10714,7 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
 	oce.F90 \
 	prtctl.F90 \
@@ -10729,4 +10724,24 @@
 	zdfddm.F90
 $(MODEL_LIB)(zdfevd.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
 	dom_oce.F90 \
 	eosbn2.F90 \
@@ -10739,8 +10754,39 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	sbc_oce.F90 \
+	trdmod.F90 \
+	zdf_oce.F90 \
+	zdfddm.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfkpp.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	oce.F90 \
+	zdf_oce.F90 \
+	zdfkpp.F90 \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	zdfevd.F90
+$(MODEL_LIB)(zdfini.o) :	\
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(domvvl.o) \
+	$(MODEL_LIB)(dynzdf_exp.o) \
 	$(MODEL_LIB)(eosbn2.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
@@ -10749,42 +10795,24 @@
 	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(trazdf_exp.o) \
+	$(MODEL_LIB)(trdmld_oce.o) \
 	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	sbc_oce.F90 \
-	trdmod.F90 \
-	zdfddm.F90 \
-	zdf_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
 	$(MODEL_LIB)(zdfkpp.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	zdfkpp.F90 \
-	zdf_oce.F90 \
-	domzgr_substitute.h90 \
-	KEY_CPP \
-	zdfevd.F90
-$(MODEL_LIB)(zdfini.o) :	\
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zpshde.o) \
+	c1d.F90 \
 	dom_oce.F90 \
 	domvvl.F90 \
@@ -10793,34 +10821,13 @@
 	in_out_manager.F90 \
 	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
 	lbclnk.F90 \
 	lbcnfd.F90 \
 	ldfdyn_oce.F90 \
 	ldftra_oce.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(domvvl.o) \
-	$(MODEL_LIB)(dynzdf_exp.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(trazdf_exp.o) \
-	$(MODEL_LIB)(trdmod.o) \
-	$(MODEL_LIB)(trdmod_oce.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdfkpp.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -10831,35 +10838,41 @@
 	sbc_oce.F90 \
 	trazdf_exp.F90 \
+	trdmld_oce.F90 \
 	trdmod.F90 \
 	trdmod_oce.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
 	zdfkpp.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
-	in_out_manager.F90 \
+	zpshde.F90 \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(tranpc.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfevd.o) \
+	$(MODEL_LIB)(zdfkpp.o) \
+	$(MODEL_LIB)(zdfric.o) \
+	$(MODEL_LIB)(zdftke.o) \
+	$(MODEL_LIB)(zdftke_old.o) \
+	in_out_manager.F90 \
+	iom.F90 \
 	ldfdyn_oce.F90 \
 	ldfslp.F90 \
 	ldftra_oce.F90 \
 	lib_mpp.F90 \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(ldfdyn_oce.o) \
-	$(MODEL_LIB)(ldfslp.o) \
-	$(MODEL_LIB)(ldftra_oce.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(tranpc.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdfevd.o) \
-	$(MODEL_LIB)(zdfkpp.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	$(MODEL_LIB)(zdfric.o) \
-	$(MODEL_LIB)(zdftke.o) \
-	$(MODEL_LIB)(zdftke_old.o) \
-	par_oce.F90 \
+	par_oce.F90 \
+	restart.F90 \
 	tranpc.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
 	zdfevd.F90 \
 	zdfkpp.F90 \
-	zdf_oce.F90 \
 	zdfric.F90 \
 	zdftke.F90 \
@@ -10867,11 +10880,4 @@
 	zdfini.F90
 $(MODEL_LIB)(zdfkpp.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	ldftra_oce.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -10891,6 +10897,13 @@
 	$(MODEL_LIB)(trdmod_oce.o) \
 	$(MODEL_LIB)(trdvor.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -10903,10 +10916,6 @@
 	trdmod_oce.F90 \
 	trdvor.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
-	zdf_oce.F90 \
-	dom_oce.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(eosbn2.o) \
@@ -10918,6 +10927,10 @@
 	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -10925,6 +10938,6 @@
 	sbc_oce.F90 \
 	trdmod.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
-	zdf_oce.F90 \
 	domzgr_substitute.h90 \
 	vectopt_loop_substitute.h90 \
@@ -10933,4 +10946,15 @@
 	zdfkpp.F90
 $(MODEL_LIB)(zdfmxl.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -10941,7 +10965,58 @@
 	lbclnk.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
+	lib_print.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	oce.F90 \
+	prtctl.F90 \
+	zdf_oce.F90 \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	zdfmxl.F90
+$(MODEL_LIB)(zdfric.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	oce.F90 \
+	zdf_oce.F90 \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	zdfric.F90
+$(MODEL_LIB)(zdftke.o) :	\
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
@@ -10949,69 +11024,24 @@
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(trdmld_oce.o) \
 	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	prtctl.F90 \
-	zdf_oce.F90 \
-	domzgr_substitute.h90 \
-	KEY_CPP \
-	zdfmxl.F90
-$(MODEL_LIB)(zdf_oce.o) :	\
-	$(MODEL_LIB)(par_kind.o) \
-	par_kind.F90 \
-	$(MODEL_LIB)(par_oce.o) \
-	par_oce.F90 \
-	KEY_CPP \
-	zdf_oce.F90
-$(MODEL_LIB)(zdfric.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	zdf_oce.F90 \
-	domzgr_substitute.h90 \
-	KEY_CPP \
-	zdfric.F90
-$(MODEL_LIB)(zdftke.o) :	\
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zpshde.o) \
 	c1d.F90 \
 	dom_oce.F90 \
 	eosbn2.F90 \
 	in_out_manager.F90 \
+	iom.F90 \
 	iom_def.F90 \
-	iom.F90 \
 	iom_ioipsl.F90 \
 	iom_nf90.F90 \
@@ -11020,92 +11050,54 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
+	lib_print.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	sbc_oce.F90 \
+	trdmld_oce.F90 \
+	zdf_oce.F90 \
+	zdfddm.F90 \
+	zdfmxl.F90 \
+	zpshde.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(domvvl.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	dom_oce.F90 \
+	domvvl.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	sbc_oce.F90 \
+	zdf_oce.F90 \
+	zdfmxl.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	zdftke.F90
+$(MODEL_LIB)(zdftke_old.o) :	\
 	$(MODEL_LIB)(c1d.o) \
 	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(domvvl.o) \
 	$(MODEL_LIB)(eosbn2.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(iom_ioipsl.o) \
 	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(trdmld_oce.o) \
-	$(MODEL_LIB)(zdfddm.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	$(MODEL_LIB)(zpshde.o) \
-	oce.F90 \
-	par_kind.F90 \
-	par_oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	sbc_oce.F90 \
-	trdmld_oce.F90 \
-	zdfddm.F90 \
-	zdfmxl.F90 \
-	zdf_oce.F90 \
-	zpshde.F90 \
-	dom_oce.F90 \
-	domvvl.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(domvvl.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(restart.o) \
-	$(MODEL_LIB)(sbc_oce.o) \
-	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
-	oce.F90 \
-	phycst.F90 \
-	prtctl.F90 \
-	restart.F90 \
-	sbc_oce.F90 \
-	zdfmxl.F90 \
-	zdf_oce.F90 \
-	domzgr_substitute.h90 \
-	vectopt_loop_substitute.h90 \
-	KEY_CPP \
-	zdftke.F90
-$(MODEL_LIB)(zdftke_old.o) :	\
-	c1d.F90 \
-	dom_oce.F90 \
-	domvvl.F90 \
-	eosbn2.F90 \
-	in_out_manager.F90 \
-	iom_def.F90 \
-	iom.F90 \
-	iom_ioipsl.F90 \
-	iom_nf90.F90 \
-	iom_rstdimg.F90 \
-	lbclnk.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(c1d.o) \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(domvvl.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
@@ -11122,8 +11114,22 @@
 	$(MODEL_LIB)(trdmod.o) \
 	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfddm.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zpshde.o) \
+	c1d.F90 \
+	dom_oce.F90 \
+	domvvl.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -11135,13 +11141,8 @@
 	trdmod.F90 \
 	trdmod_oce.F90 \
+	zdf_oce.F90 \
 	zdfddm.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
 	zpshde.F90 \
-	dom_oce.F90 \
-	dynzdf_exp.F90 \
-	in_out_manager.F90 \
-	iom.F90 \
-	lbclnk.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(dynzdf_exp.o) \
@@ -11155,6 +11156,11 @@
 	$(MODEL_LIB)(sbc_oce.o) \
 	$(MODEL_LIB)(trazdf_exp.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	dynzdf_exp.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
 	oce.F90 \
 	phycst.F90 \
@@ -11163,6 +11169,6 @@
 	sbc_oce.F90 \
 	trazdf_exp.F90 \
+	zdf_oce.F90 \
 	zdfmxl.F90 \
-	zdf_oce.F90 \
 	domzgr_substitute.h90 \
 	vectopt_loop_substitute.h90 \
@@ -11170,4 +11176,20 @@
 	zdftke_old.F90
 $(MODEL_LIB)(zdftmx.o) :	\
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(zdfddm.o) \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -11179,21 +11201,5 @@
 	lbcnfd.F90 \
 	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(iom_ioipsl.o) \
-	$(MODEL_LIB)(iom_nf90.o) \
-	$(MODEL_LIB)(iom_rstdimg.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(zdfddm.o) \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -11202,4 +11208,13 @@
 	prtctl.F90 \
 	zdfddm.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
 	dom_oce.F90 \
 	eosbn2.F90 \
@@ -11207,13 +11222,4 @@
 	iom.F90 \
 	lbclnk.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(iom.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
-	$(MODEL_LIB)(prtctl.o) \
-	$(MODEL_LIB)(zdf_oce.o) \
 	oce.F90 \
 	phycst.F90 \
@@ -11225,9 +11231,4 @@
 	zdftmx.F90
 $(MODEL_LIB)(zpshde.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lbcnfd.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -11241,4 +11242,9 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(zdfddm.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbcnfd.F90 \
+	lib_mpp.F90 \
+	lib_print.F90 \
 	oce.F90 \
 	par_kind.F90 \
@@ -11247,14 +11253,14 @@
 	prtctl.F90 \
 	zdfddm.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
 	dom_oce.F90 \
 	eosbn2.F90 \
 	in_out_manager.F90 \
 	lbclnk.F90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(eosbn2.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(phycst.o) \
 	oce.F90 \
 	phycst.F90 \
