Index: /trunk/CONFIG/ORCA2_LIM/AA_make
===================================================================
--- /trunk/CONFIG/ORCA2_LIM/AA_make	(revision 8)
+++ /trunk/CONFIG/ORCA2_LIM/AA_make	(revision 8)
@@ -0,0 +1,13 @@
+all: ioipsl orca
+
+ioipsl:
+		(cd ../IOIPSL/src; gmake;)
+
+
+orca:
+#-Q- sxnec	(cd ../OPA/WORK;  gmake ;)
+#-Q- fjvpp	(cd ../OPA/WORK; gmake  L_C='-Wl,-P';)
+
+
+clean:
+		(cd ../OPA/WORK;  gmake clean ;)
Index: /trunk/CONFIG/ORCA2_LIM/AA_make.ldef
===================================================================
--- /trunk/CONFIG/ORCA2_LIM/AA_make.ldef	(revision 8)
+++ /trunk/CONFIG/ORCA2_LIM/AA_make.ldef	(revision 8)
@@ -0,0 +1,11 @@
+#---------------------------------------------------------------------
+#- Creation des elements relatifs a ORCA :
+#-      ORCA  (lib, executable : opa)
+#---------------------------------------------------------------------
+SHELL = /bin/sh
+#---------------------------------------------------------------------
+LIBDIR = ../../../../lib
+BINDIR = ../../../../bin
+MODDIR = $(LIBDIR)
+#---------------------------------------------------------------------
+#-
Index: /trunk/CONFIG/ORCA2_LIM/EXP00/AA_job
===================================================================
--- /trunk/CONFIG/ORCA2_LIM/EXP00/AA_job	(revision 8)
+++ /trunk/CONFIG/ORCA2_LIM/EXP00/AA_job	(revision 8)
@@ -0,0 +1,387 @@
+#@$-r F01.1                   # name of job
+#@$-me                        # sends a mail at the end of execution
+#@$-eo                        # merge standard error and output
+                              # in one file
+#@$-o sortie_F01.1            # name of the output file (listing)
+#@$-lT 2:00:00                # Max total CPU time
+#@$-lt 1:59:00                # Max CPU time per process
+#@$-lM 2Gb                    # Max memory
+#-Q- sxnec ## NEC
+#-Q- sxnec #@$-jo             # print a short performance analysis
+#-Q- sxnec                    # at the end of the listing
+## Temporary comments
+###-Q- sxnec #@$-c 4            # Max number of simultaneous procs used (here=4)
+###-Q- sxnec #@$-q multi        # Use more than 1 proc
+## End of Temporary comments
+#-Q- fjvpp ## VPP
+#-Q- fjvpp #@$-ko             # Keep the output listing on disk
+#-Q- fjvpp #@$-s /bin/ksh     # Name of the shell used for this script
+#-Q- fjvpp #@$-lP 3           # Number of procs (here=3)
+#
+#
+#
+########################################################################
+##
+##      Script to run a validation experiment when installing the
+##      ORCA model
+##
+##            Claire Levy
+##
+##      Original Script: 
+##           Coupled IPSL experiment Eric MAISONNAVE / Marie-Alice FOUJOLS
+##
+#########################################################################
+##-- print echo of commands before and after shell interpretation
+date
+set -vx
+##
+##
+##-- Name of the experiment
+##--
+CEXPER=F01
+# -  Directory for executables
+#
+# ! Attention ! The executables are to be copied from the modipsl/bin
+#               directory
+#
+R_EXE=$WORKDIR/${CEXPER}/Exe
+#
+#
+
+JOB=${CEXPER}
+##-- First day of the experiment
+JOUR_DEBUT_EXP=1  ; MOIS_DEBUT_EXP=1  ; AN_DEBUT_EXP=1
+##--
+##-- Last day of the experiment
+JOUR_FINAL_EXP=31  ; MOIS_FINAL_EXP=12 ; AN_FINAL_EXP=1
+##--
+##-- Duration of the experiment
+JOURS=0; MOIS=0 ; ANS=1
+##
+#########################################################################
+##
+##    1. Unix Variables definition
+##
+#########################################################################
+##
+##-- Get the submisson directory
+echo $QSUB_WORKDIR
+##-- Get the directory controlling the chaining of the jobs
+R_EXPER=${QSUB_WORKDIR}
+##
+##
+MKDIR="mkdir"
+#-Q- fjvpp MKDIR="/usr/X11R6/bin/mkdirhier"
+#
+##--- Variables used by the ocean model
+# ----------------- ORCA --------------
+#
+JOB=$( echo ${CEXPER} | tr '[a-z]' '[A-Z]' )
+#
+#
+#
+#########################################################################
+##
+##    2. Directories definition
+##
+#########################################################################
+# -  Data directory for input/output of the model
+#
+#-Q- sxnec R_DONNEES=${WORKDIR}/EXPER/${CEXPER}
+#-Q- fjvpp R_DONNEES=${WORKDIR}/EXPER/${CEXPER}
+#
+#
+# ----------------- ORCA --------------------
+#
+R_ENTREE_OCE=${R_DONNEES}/Entree/Oce
+R_SORTIE_OCE=${R_DONNEES}/Sortie/Oce
+#
+#
+if [ ! -d ${R_DONNEES} ]; then
+  mkdir -p ${R_ENTREE_OCE}
+  mkdir -p ${R_SORTIE_OCE}
+  mkdir -p ${R_DONNEES}/SortieTest/Oce
+fi
+#
+# -  Get the tarfile containing all the usefull files
+#
+#
+#-- Directory definition for the data storage computer (where the tarfile is)
+#-Q- sxnec R_STOCKAGE="gaya:/u/DODS/pub/reee055/ORCA2_LIM"
+#-Q- fjvpp R_STOCKAGE="/G/nymphea0/dmnfs/"
+#--
+#-- Test if the tarfile is already there before geting it from the data storage
+#--
+#-Q- sxnec Rapatrie () { [ -f $1/$3 ] || ( rcp ${R_STOCKAGE}/$2/$3 $1 ; cd $1; tar xvf $3 ;) }
+#-Q- fjvpp Rapatrie () { [ -f $1/$3 ] || ( cp ${R_STOCKAGE}/$2/$3 $1 ; cd $1; tar xvf $3 ;) }
+
+#
+Rapatrie ${R_ENTREE_OCE} ENTREE Entree_Oce.tar
+Rapatrie ${R_DONNEES}/SortieTest/Oce VERIF SortieTest_Oce.tar
+
+#
+# -  Temporary working directory
+#
+#-Q- sxnec TMP=${TMPDIR}/${CEXPER}
+#-Q- fjvpp TMP=${SCRATCHDIR}/${CEXPER}
+#
+#-- Create this directory if needed
+[ -d ${TMP} ] || ${MKDIR} ${TMP}
+#
+#
+#########################################################################
+##
+##    3. Pre-processing
+##
+#########################################################################
+#
+# =============================================================================
+# Time control
+# =============================================================================
+cd ${R_EXPER}
+##
+##- Create ${JOB}.suivi containing the date of the run going on or the date
+##- of the first waiting job, and ${JOB}.log containing execution log
+##
+if [ ! -f "${JOB}.suivi" ]
+then
+    JOUR_DEB_JOB=${JOUR_DEBUT_EXP} ; MOIS_DEB_JOB=${MOIS_DEBUT_EXP} ; AN_DEB_JOB=${AN_DEBUT_EXP}
+    NUMERO=1
+cat <<EOF >${JOB}.suivi
+$AN_DEB_JOB $MOIS_DEB_JOB $JOUR_DEB_JOB $NUMERO
+EOF
+echo `date` " Begining of Experience : " ${JOB} " in directory :" ${R_EXPER} > ${JOB}.log
+fi
+
+cat ${JOB}.suivi | read AN_DEB_JOB MOIS_DEB_JOB JOUR_DEB_JOB NUMERO
+echo $AN_DEB_JOB $MOIS_DEB_JOB $JOUR_DEB_JOB
+echo "`date` $AN_DEB_JOB $MOIS_DEB_JOB $JOUR_DEB_JOB begin" >> ${JOB}.log
+
+
+
+# ==============================================================================
+# Copy executables
+# ==============================================================================
+if [ -z ${TMP} ]; then
+  echo " The TMP variable is empty !!!" 
+  exit
+fi
+cd ${TMP} || exit
+#- Clear working directory
+rm -f *
+
+#- Get executables
+# ----------------- ORCA -----------------------
+cp ${R_EXE}/opa opa.xx
+#
+#
+#-Q- sxnec # ----------------- ORCA -----------------------
+#-Q- sxnec # Reminder for the cpp keys used
+#-Q- sxnec #
+#-Q- sxnec OPT_COMPIL_ORCA=` mcs -p opa.xx | grep key_orca | head -1 `
+#-Q- sxnec #
+#-Q- sxnec echo ${OPT_COMPIL_ORCA}
+#-Q- sxnec #
+#-Q- sxnec #-- Check ocean model resolution
+#-Q- sxnec RESOL_ORCA=` echo ${OPT_COMPIL_ORCA} | sed s/.*key_orca_r// | sed s/-Wp.*// `
+#-Q- sxnec if [ ${RESOL_ORCA} -ne "2" ] ; then
+#-Q- sxnec   echo " Resolution of the executable for the ocean model is not correct : " ${RESOL_ORCA}
+#-Q- sxnec fi
+#
+#-Q- sxnec #-- Ckeck for real and integer size
+#-Q- sxnec #-- in the ocean executable
+#-Q- sxnec IR_ORCA=` echo ${OPT_COMPIL_ORCA} | grep "-ew" `
+#-Q- sxnec if [ -n ${IR_ORCA} ]; then
+#-Q- sxnec   echo 'Taille des reels :   8 '
+#-Q- sxnec   echo 'Taille des entiers : 8 '
+#-Q- sxnec else
+#-Q- sxnec   echo ' ATTENTION: ocean executable has not been compiled in I8R8 '
+#-Q- sxnec   exit
+#-Q- sxnec fi
+
+# ==============================================================================
+# Update the namelist
+# ==============================================================================
+#
+# ----------------- ORCA ---------------------
+#
+#
+# change namelist from fortran 77 to fortran 90
+sed -e /:/d -e s/" \&END"/"\/"/ -e s/" \&"/"\&"/ ${R_ENTREE_OCE}/namelist > namelist
+#
+PAT_NO=$( grep 'no' namelist | grep -v off )
+PAT_CEXPER=$( grep 'cexper' namelist )
+PAT_RESTAR=$( grep 'lrstar' namelist )
+PAT_NRSTAR=$( grep 'nrstdt' namelist )
+PAT_NMSH=$( grep 'nmsh' namelist )
+PAT_NDATE0=$( grep 'ndate0' namelist )
+
+
+if [ ${NUMERO} -eq 1 ]
+then
+#- At the beginning of the experiment:
+#- No check of the date of restart (since there is no restart)
+#- Create the meshmask file (usefull for graphics) 
+sed    -e "s/$PAT_CEXPER/       cexper=\"$CEXPER\"/" \
+    -e "s/$PAT_NMSH/         nmsh=1/" \
+    namelist > nam.tmp
+else
+#- Check the date of restart for all the following job submission 
+sed    -e "s/$PAT_CEXPER/       cexper=\"$CEXPER\"/" \
+    -e "s/$PAT_RESTAR/       lrstar=.TRUE./" \
+    -e "s/$PAT_NMSH/         nmsh=0/" \
+    -e "s/$PAT_NRSTAR/       nrstdt=1/" \
+    -e "s/$PAT_NDATE0/       ndate0=$DATE_DEB_JOB/" \
+    namelist > nam.tmp
+fi
+
+mv nam.tmp namelist
+
+
+#
+# ==============================================================================
+# Copy input files
+# ==============================================================================
+#
+# ----------------- ORCA ---------------------
+#
+# -  Copy auxilliary files
+#
+# - Files for the ice
+#
+cp ${R_ENTREE_OCE}/dynami.param  .
+cp ${R_ENTREE_OCE}/geogra.param .
+cp ${R_ENTREE_OCE}/inice.param  .
+cp ${R_ENTREE_OCE}/output.param .
+cp ${R_ENTREE_OCE}/run.param.li .
+cp ${R_ENTREE_OCE}/thermo.param .
+cp ${R_ENTREE_OCE}/cpointj.dat .
+
+
+
+cp ${R_ENTREE_OCE}/coordinates.nc .
+cp ${R_ENTREE_OCE}/bathymetry .
+cp ${R_ENTREE_OCE}/LEVITUS_1m_Salinity_Ice_nomask.nc .
+cp ${R_ENTREE_OCE}/LEVITUS_1m_Temperature_Pot_Ice_nomask.nc .
+cp ${R_ENTREE_OCE}/runoff_1m_nomask.nc .
+cp ${R_ENTREE_OCE}/ahmcoef ahmcoef
+cp ${R_ENTREE_OCE}/MIX.Y93-98.STRESSX.GLOBAL.MON.nc .
+cp ${R_ENTREE_OCE}/MIX.Y93-98.STRESSY.GLOBAL.MON.nc .
+cp ${R_ENTREE_OCE}/CLIO_1m_0101_0112_flx.nc .
+cp ${R_ENTREE_OCE}/EMPave_old.dat .
+#
+# -  Copy of the restart file
+#
+
+if [ ${NUMERO} -ne 1 ]
+then
+  cp ${R_SORTIE_OCE}/${CEXPER}_${DATE_RESTART}_restart.nc orcaini.nc
+  cp ${R_SORTIE_OCE}/${CEXPER}_${DATE_RESTART}_res0.om rest.om
+  cp ${R_SORTIE_OCE}/${CEXPER}_${DATE_RESTART}_run.param.li .
+  cp ${R_SORTIE_OCE}/${CEXPER}_${DATE_RESTART}_EMPave_old.dat EMPave_old.dat
+fi
+
+#
+#
+ls -alF
+#
+#########################################################################
+##
+##    4. Launching the experiment
+##
+#########################################################################
+#
+##-Q- sxnec export F_PROGINF=detail F_FTRACE=yes F_ERRCNT=500
+##-Q- sxnec   mpirun -np 1 -max_np 3 opa.xx
+#-Q- sxnec  opa.xx
+
+#-Q- fjvpp opa.xx -np 1
+
+#-Q- fjvpp ##-- Accounting
+#-Q- fjvpp ja
+
+
+ls -alF
+
+NIT_FINAL=$( cat time.step )
+#
+#########################################################################
+##
+##    5. Post-processing 
+##
+#########################################################################
+#
+# ==============================================================================
+# Save output files
+# ==============================================================================#
+i_ERR_SAUV=0
+#
+#
+#
+# ----------------- ORCA ---------------------
+#
+if [ -f date.file ]
+then
+    DATE=$(cat date.file | sed 's/ //g' | sed 's/_output//g' )
+fi
+##  Print the last time step:
+cat time.step
+#
+##-Q- sxnec cp ftrace.out ${R_SORTIE_OCE}/${DATE}.ftrace.out
+##-Q- sxnec cp mon.out ${R_SORTIE_OCE}/${DATE}.mon.out
+#
+# Save ocean output files
+#
+if [ ${NUMERO} -eq 1 ]
+then
+  mv meshmask* ${R_SORTIE_OCE}
+fi
+mv ocean.output ${R_SORTIE_OCE}/${DATE}.oceout
+mv solver.stat ${R_SORTIE_OCE}/${DATE}.solver.stat
+#
+for file_netcdf in *_grid_[TUVW].nc
+   do
+     mv $file_netcdf ${R_SORTIE_OCE}/ || i_ERR_SAUV=1
+   done
+#
+# Save ocean restart file
+mv ${CEXPER}_*_restart.nc ${R_SORTIE_OCE}/${CEXPER}_${DATE_FIN_JOB}_restart.nc
+if [ ! -f ${R_SORTIE_OCE}/${CEXPER}_${DATE_FIN_JOB}_restart.nc ]; then
+  echo " Attention: The backup of the restart file was UNSUCCESSFULL"
+  i_ERR_SAUV=1
+fi
+
+#
+# Save ice output files
+for file_netcdf in *icemod.nc
+   do
+     mv $file_netcdf ${R_SORTIE_OCE}/${file_netcdf} || i_ERR_SAUV=1
+   done
+#
+mv ice_forcing ${R_SORTIE_OCE}/${CEXPER}_${DATE_FIN_JOB}.ice_forcing || i_ERR_SAUV=1
+mv ice_mouchard ${R_SORTIE_OCE}/${CEXPER}_${DATE_FIN_JOB}.ice_mouchard || i_ERR_SAUV=1
+mv ice_evolu ${R_SORTIE_OCE}/${CEXPER}_${DATE_FIN_JOB}.ice_evolu || i_ERR_SAUV=1
+#
+for restart_ice in res*om
+   do
+     cp $restart_ice  ${R_SORTIE_OCE}/${CEXPER}_${DATE_FIN_JOB}.${restart_ice} || i_ERR_SAUV=1
+   done
+#
+#-
+#- Test on backups
+#-
+if [ ${i_ERR_SAUV} -ne "0" ] ; then
+   echo "Error in at least one of the restarts backups!"
+   exit
+fi
+#
+# Tar all outputs in one tarfile
+cd ${R_SORTIE_OCE}
+ if [ ! -f ${R_DONNEES}/SortieTest/Oce/SortieTest_Oce.tar ]
+then
+    tar cvf ${R_DONNEES}/SortieTest/Oce/SortieTest_Oce.tar .
+else
+    tar rvf ${R_DONNEES}/SortieTest/Oce/SortieTest_Oce.tar .
+fi
+rcp ${R_DONNEES}/SortieTest/Oce/SortieTest_Oce.tar ${R_STOCKAGE}/VERIF/SortieTest_Oce.tar
+cd ${TMP}
Index: /trunk/CONFIG/ORCA2_LIM/EXP00/EMPave_old.dat
===================================================================
--- /trunk/CONFIG/ORCA2_LIM/EXP00/EMPave_old.dat	(revision 8)
+++ /trunk/CONFIG/ORCA2_LIM/EXP00/EMPave_old.dat	(revision 8)
@@ -0,0 +1,1 @@
+                               0  0.0000000000000000E+00  0.0000000000000000E+00
Index: /trunk/CONFIG/ORCA2_LIM/EXP00/namelist
===================================================================
--- /trunk/CONFIG/ORCA2_LIM/EXP00/namelist	(revision 8)
+++ /trunk/CONFIG/ORCA2_LIM/EXP00/namelist	(revision 8)
@@ -0,0 +1,531 @@
+!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+! OPA namelist :  model option and parameter input
+! -------------
+!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+!
+!-----------------------------------------------------------------------
+!       namrun   parameters of the run
+!-----------------------------------------------------------------------
+!  no         job number
+!  cexper     experience name for vairmer format
+!  ln_rstart  boolean term for restart (true or false)
+!  nrstdt     control of the restart timestep:
+!                = 0 ???
+!                = 1 ???
+!                = 2 ???
+!  nit000     number of the first time step
+!  nitend     number of the last time step
+!  ndate0     initial calendar date aammjj
+!  nleapy     Leap year calendar (0/1)
+!  nprint     level of print (0 no print)
+!  nstock     frequency of restart file
+!  nwrite     frequency of OUTPUT file
+!  nrunoff    = 0 no, 1 runoff, 2 runoff+river mouth ups adv
+!  ln_ctl     trend control print (expensive!)
+!
+!  CAUTION: for usual run scripts, logical value of
+!  *******  ln_rstart must be .true. or .false.
+!                     and NOT .TRUE. or .FALSE.
+&namrun
+   no         =       0
+   cexper     =  "DEV1"
+   ln_rstart  = .false.
+   nrstdt     =       0
+   nit000     =       1
+   nitend     =    5475
+   ndate0     =  010101
+   nleapy     =       0
+   nprint     =       0
+   nstock     =    5475 
+   nwrite     =    5475 
+   nrunoff    =       2
+   ln_ctl     =  .true.
+/
+!-----------------------------------------------------------------------
+!       nam_traadv   advection scheme for tracer (option not control by CPP keys)
+!-----------------------------------------------------------------------
+!  ln_traadv_cen2     2nd order centered scheme    (default T)
+!  ln_traadv_tvd      TVD scheme                   (default F)
+!  ln_traadv_muscl    MUSCL scheme                 (default F)
+!  ln_traadv_muscl2   MUSCL2 scheme                (default F)
+&nam_traadv
+   ln_traadv_cen2   =  .true.
+   ln_traadv_tvd    =  .false.
+   ln_traadv_muscl  =  .false.
+   ln_traadv_muscl2 =  .false.
+/
+!-----------------------------------------------------------------------
+!       nam_traldf   lateral diffusion scheme for tracer (option not control by CPP keys)
+!-----------------------------------------------------------------------
+!  Type of the operator : 
+!     ln_traldf_lap    laplacian operator          (default T)
+!     ln_traldf_bilap  bilaplacian operator        (default F)
+!  Direction of action  : 
+!     ln_traldf_level  iso-level                   (default F)
+!     ln_traldf_hor    horizontal (geopotential)   (default F)^**
+!     ln_traldf_iso    iso-neutral                 (default T)^*
+!  Coefficient
+!     aht0    horizontal eddy diffusivity for tracers (m2/s)
+!     ahtb0   background eddy diffusivity for isopycnal diffusion (m2/s)
+!     aeiv0   eddy induced velocity coefficient (m2/s)
+! ^* require key_ldfslp to compute the direction of the lateral diffusion
+! ^** require key_ldfslp in s-coordinate
+&nam_traldf
+   ln_traldf_lap    =  .true.
+   ln_traldf_bilap  =  .false.
+   ln_traldf_level  =  .false.
+   ln_traldf_hor    =  .false.
+   ln_traldf_iso    =  .true.
+   aht0    =  2000.
+   ahtb0   =     0.
+   aeiv0   =  2000.
+/
+!-----------------------------------------------------------------------
+!       nam_dynldf   lateral diffusion on momentum
+!-----------------------------------------------------------------------
+!  Type of the operator : 
+!     ln_dynldf_lap    laplacian operator          (default T)
+!     ln_dynldf_bilap  bilaplacian operator        (default F)
+!  Direction of action  : 
+!     ln_dynldf_level  iso-level                   (default F)
+!     ln_dynldf_hor    horizontal (geopotential)   (default F)^**
+!     ln_dynldf_iso    iso-neutral                 (default T)^*
+!  Coefficient
+!  ahm0    horizontal eddy viscosity for the dynamics (m2/s)
+!  ahmb0   background eddy viscosity for isopycnal diffusion (m2/s)
+&nam_dynldf
+   ln_dynldf_lap    =  .true.
+   ln_dynldf_bilap  =  .false.
+   ln_dynldf_level  =  .false.
+   ln_dynldf_hor    =  .true.
+   ln_dynldf_iso    =  .false.
+   ahm0    = 40000.
+   ahmb0   =     0.
+/
+!-----------------------------------------------------------------------
+!       namflg   algorithm flags (algorithm not control by CPP keys)
+!-----------------------------------------------------------------------
+!  ln_dynhpg_imp   hydrostatic pressure gradient: semi-implicit time scheme  (T)
+!                                                  centered      time scheme  (F)
+&namflg
+   ln_dynhpg_imp   =  .false.
+/
+!-----------------------------------------------------------------------
+!       nam_dynvor   option of physics/algorithm (not control by CPP keys)
+!-----------------------------------------------------------------------
+!  ln_dynvor_ens   vorticity trends: enstrophy conserving scheme (default T)
+!  ln_dynvor_ene      "         "  : energy conserving scheme    (default F)
+!  ln_dynvor_mix      "         "  : mixed scheme                (default F)
+&nam_dynvor
+/
+!-----------------------------------------------------------------------
+!       namtau   surface wind stress
+!-----------------------------------------------------------------------
+!  ntau000   gently increase the stress over the first ntau_rst time-steps
+!  tau0x     uniform value used as default surface heat flux
+!  tau0y     uniform value used as default solar radiation flux
+&namtau
+   ntau000 =      0
+   tau0x   =      0.e0
+   tau0y   =      0.e0
+/
+!-----------------------------------------------------------------------
+!       namflx   surface fluxes
+!-----------------------------------------------------------------------
+!  q0       uniform value used as default surface heat flux
+!  qsr0     uniform value used as default solar radiation flux
+!  emp0     uniform value used as default surface freswater budget (E-P)
+&namflx
+   q0      =      0.e0
+   qsr0    =      0.e0
+   emp0    =      0.e0
+/
+!-----------------------------------------------------------------------
+!       namdom   space and time domain (bathymetry, mesh, timestep)
+!-----------------------------------------------------------------------
+!  ntopo      = 0/1 ,compute/read the bathymetry file
+!               (mbathy, nb of T-ocean levels)
+!  e3zps_min  the thickness of the partial step is set larger than the
+!  e3zps_rat     the minimum of e3zps_min and e3zps_rat * e3t
+!                (N.B. 0<e3zps_rat<1)
+!  ngrid      = 0/1, compute/read the horizontal mesh
+!                  (coordinates, scale factors)
+!  nmsh       =1 create a mesh file (coordinates, scale factors, masks)
+!  nacc       the acceleration of convergence method
+!             = 0, no acceleration, rdt = rdttra
+!             = 1, acceleration used, rdt < rdttra(k)
+!  atfp       asselin time filter parameter
+!  rdt        time step for the dynamics (and tracer if nacc=0)
+!  rdtmin     minimum time step on tracers
+!  rdtmax     maximum time step on tracers
+!  rdth       depth variation of tracer time step
+!  nfice      frequency of ice model call
+!  nfbulk     frequency of bulk formulea call (not used if ice used)
+!  nclosea    = 0 no closed sea 
+!             = 1 closed sea (Black Sea, Caspian Sea, Great US Lakes...) 
+&namdom
+   ntopo     =     1
+   e3zps_min =     5.
+   e3zps_rat =     0.1
+   ngrid     =     1
+   nmsh      =     0
+   nacc      =     0
+   atfp      =     0.1
+   rdt       =  5760.
+   rdtmin    =  5760.
+   rdtmax    =  5760.
+   rdth      =   800.
+   nfice     =     5  
+   nfbulk    =     5  
+   nclosea   =     0
+/
+!-----------------------------------------------------------------------
+!       namfwb   freshwater budget correction
+!-----------------------------------------------------------------------
+!  ln_fwb     logical flag for freshwater budget correction (0 annual mean)
+&namfwb
+   ln_fwb    = .true.
+/
+!-----------------------------------------------------------------------
+!       namcro   cross land advection
+!-----------------------------------------------------------------------
+!  n_cla   advection between 2 ocean pts separates by land 
+&namcla
+   n_cla   = 1
+/
+!-----------------------------------------------------------------------
+!       namzdf   vertical physics
+!-----------------------------------------------------------------------
+!  ln_zdfevd  enhanced vertical diffusion         (default T)
+!  ln_zdfnpc  Non-Penetrative Convection          (default T)
+!  avm0       vertical eddy viscosity for the dynamic (m2/s)
+!  avt0       vertical eddy diffusivity for tracers (m2/s)
+!  avevd      vertical coefficient for enhanced diffusion scheme (m2/s)
+!  nevdm      = 0  apply enhanced mixing on tracer only
+!             = 1  apply enhanced mixing on both tracer and momentum
+!  ln_zdfexp   vertical physics: (=T)  time splitting (T)     (Default=F)
+!                               (=F)  euler backward (F)
+!  n_zdfexp   number of sub-timestep for time splitting scheme
+&namzdf
+   ln_zdfevd = .true.
+   ln_zdfnpc = .false.
+   avm0     = 1.2e-4
+   avt0     = 1.2e-5
+   avevd    =   100.
+   nevdm    =     1
+   ln_zdfexp =  .false.
+   n_zdfexp =      3
+/
+!-----------------------------------------------------------------------
+!       namnpc   vnon penetrative convection
+!-----------------------------------------------------------------------
+!  nnpc1   non penetrative convective scheme frequency
+!  nnpc2   non penetrative convective scheme print frequency
+&namnpc
+   nnpc1  =      1
+   nnpc2  =    365
+/
+!-----------------------------------------------------------------------
+!       nambbl   bottom boundary layer scheme
+!-----------------------------------------------------------------------
+!  atrbbl   lateral tracer coeff. for bottom boundary layer scheme(m2/s)
+&nambbl
+   atrbbl = 10000.
+/
+!-----------------------------------------------------------------------
+!       namric   richardson number dependent vertical diffusion
+!                ( #ifdef "key_zdfrichardson" )
+!-----------------------------------------------------------------------
+!  avmri   maximum value of the vertical viscosity
+!  alp     coefficient of the parameterization
+!  nric    coefficient of the parameterization
+&namwri
+   avmri = 100.e-4
+   alp   =      5.
+   nric  =       2
+/
+!-----------------------------------------------------------------------
+!       namtke   turbulent eddy kinetic dependent vertical diffusion
+!                ( #ifdef "key_zdftke" )
+!-----------------------------------------------------------------------
+!  ln_rstke flag to restart with tke from a run without tke (default F)
+!  ediff    coef. to compute vertical eddy coef. (avt=ediff*mxl*sqrt(e) )
+!  ediss    coef. of the Kolmogoroff dissipation  
+!  ebb      coef. of the surface input of tke
+!  efave    coef. to applied to the tke diffusion ( avtke=efave*avm )
+!  emin     minimum value of tke (m^2/s^2)
+!  emin0    surface minimum value of tke (m^2/s^2)
+!  nitke    number of restart iterative loops
+!  ri_c     critic richardson number
+!  nmxl     flag on mixing length used
+!           = 0 bounded by the distance to surface and bottom
+!           = 1 bounded by the local vertical scale factor
+!           = 2 first vertical derivative of mixing length bounded by 1
+!  npdl     flag on prandtl number
+!           = 0 no vertical prandtl number (avt=avm)
+!           = 1 prandtl number function of richarson number (avt=pdl*avm)
+!           = 2 same as = 1 but a shapiro filter is applied on pdl
+!  nave     =  horizontal averaged (=1) or not (=0) of avt  (default =1)
+!  navb     = 0 cst background avt0, avm0 / =1 profile used on avtb
+&namtke
+   ln_rstke = .false.
+   ediff =       0.1
+   ediss =       0.7
+   ebb   =      3.75
+   efave =        1.
+   emin  =     1.e-6
+   emin0 =     1.e-4
+   nitke =        50
+   nmxl  =         2
+   npdl  =         1
+   navb  =         0
+/
+!-----------------------------------------------------------------------
+!       namddm   double diffusive mixing parameterization
+!-----------------------------------------------------------------------
+!   avts    maximum avs for dd mixing 
+!   hsbfr   heat/salt buoyancy flux ratio
+&namddm
+      avts  = 1.e-4
+      hsbfr = 1.6
+/
+!-----------------------------------------------------------------------
+!       namlbc   lateral momentum boundary condition
+!-----------------------------------------------------------------------
+!  shlat   lateral boundary condition on velocity
+!                   shlat = 0 , free slip
+!               0 < shlat < 2 , partial slip
+!                   shlat = 2 , no slip
+!               2 < shlat     , strong slip
+&namlbc
+   shlat  =      2.
+/
+!-----------------------------------------------------------------------
+!       nambfr   bottom friction
+!-----------------------------------------------------------------------
+!  nbotfr  type of bottom friction 
+!                  nbotfr = 0 , no slip 
+!                  nbotfr = 1 , linear friction
+!                  nbotfr = 2 , nonlinear friction
+!                  nbotfr = 3 , free slip
+!  bfri1   bottom drag coefficient (linear case)
+!  bfri2   bottom drag coefficient (non linear case)
+!  bfeb2   bottom turbulent kinetic energy  (m^2/s^2)
+&nambfr
+   nbotfr =       1
+   bfri1  =   4.e-4
+   bfri2  =   1.e-3
+   bfeb2  =  2.5e-3
+/
+!-----------------------------------------------------------------------
+!       nambbc   bottom temperature boundary condition
+!-----------------------------------------------------------------------
+!  ngeo_flux  = 0 no geothermal heat flux
+!             = 1 constant geothermal heat flux
+!             = 2 variable geothermal heat flux (read in geothermal_heating.nc) 
+!                 ( C A U T I O N : flux in mW/m2 in the NetCDF file )
+!  ngeo_flux_const   Constant value of geothermal heat flux (W/m2) 
+&nambbc
+   ngeo_flux =  2
+   ngeo_flux_const = 86.4e-3
+/
+!-----------------------------------------------------------------------
+!       namqsr   penetrative solar radiation
+!-----------------------------------------------------------------------
+!  ln_traqsr : penetrative solar radiation (T) or not (F)     (Default=T)
+!  rabs       fraction of qsr associated with xsi1
+!  xsi1       first depth of extinction
+!  xsi2       second depth of extinction
+&namqsr
+   ln_traqsr = .true.
+   rabs     =   0.58
+   xsi1     =   0.35
+   xsi2     =   23.0
+/
+!-----------------------------------------------------------------------
+!       namtdp   tracer newtonian damping ('key_tradmp')
+!-----------------------------------------------------------------------
+!  ndmp    type of damping in temperature and salinity 
+!          (='latitude', damping poleward of 'ndmp' degrees and function 
+!             of the distance-to-coast. Red and Med Seas as ndmp=-1)
+!          (=-1 damping only in Med and Red Seas)
+!  ndmpf   =1 create a damping.coeff NetCDF file (the 3D damping array)
+!  nmldmp  type of damping in the mixed layer
+!          (=0 damping throughout the water column)
+!	   (=1 no damping in the mixed layer defined by avt >5cm2/s )
+!	   (=2 no damping in the mixed layer defined rho<rho(surf)+.01 )
+!  sdmp    surface time scale for internal damping (days)
+!  bdmp    bottom time scale for internal damping (days)
+!  hdmp    depth of transition between sdmp and bdmp (meters)
+&namtdp
+   ndmp   =   -1
+   ndmpf  =    1
+   nmldmp =    1
+   sdmp   =  50.
+   bdmp   = 360.
+   hdmp   = 800.
+/
+!-----------------------------------------------------------------------
+!       nameos   ocean physical parameters
+!-----------------------------------------------------------------------
+!  neos    type of equation of state and Brunt-Vaisala frequency
+!          = 0, UNESCO (formulation of Jackett and McDougall (1994)
+!                                         and of McDougall (1987) )
+!          = 1, linear: rho(T)   = rau0 * ( 1.028 - ralpha * T )
+!          = 2, linear: rho(T,S) = rau0 * ( rbeta * S - ralpha * T )
+!                               with rau0=1020 set in parcst routine
+!  ralpha  thermal expension coefficient (linear equation of state)
+!  rbeta   saline  expension coefficient (linear equation of state)
+&nameos
+   neos   =      0
+   ralpha =  2.e-4
+   rbeta  =  0.001
+/
+!-----------------------------------------------------------------------
+!       namsol   elliptic solver / island / free surface 
+!-----------------------------------------------------------------------
+!  nsolv  elliptic solver (=1 preconditioned conjugate gradient: pcg)
+!                         (=2 successive-over-relaxation: sor)
+!                         (=3 FETI: fet, all require "key_feti" defined)
+!  nmax   maximum of iterations for the solver
+!  eps    absolute precision of the solver
+!  sor    optimal coefficient for sor solver
+!  epsisl absolute precision on stream function solver
+!  nmisl  maximum pcg iterations for island
+!  rnu    strength of the additional force used in free surface b.c.
+&namsol
+   nsolv  =      1
+   nmax   =    800
+   eps    =  1.E-6
+   sor    =   1.76
+   epsisl = 1.e-10
+   nmisl  =   4000
+   rnu    =     1.
+/
+!=======================================================================
+!   Diagnostics namelists
+!       namtrd    dynamics and/or tracer trends
+!       namgap    level mean model-data gap
+!       namznl    zonal mean heat & freshwater fluxes computation
+!       namspr    surface pressure in rigid-lid
+!=======================================================================
+!-----------------------------------------------------------------------
+!       namtrd    diagnostics on dynamics and/or tracer trends
+!                         ('key_diatrdyn' and/or 'key_diatrtra')
+!                 or mixed-layer trends ('key_diatrdmld')
+!-----------------------------------------------------------------------
+!  ntrd    time step frequency dynamics and tracers trends
+!  nctls   control surface type in mixed-layer trends (0,1 or n<jpk)
+&namtrd
+   ntrd  = 365
+   nctls =   0
+/
+!-----------------------------------------------------------------------
+!       namgap    level mean model-data gap ('key_diagap')
+!-----------------------------------------------------------------------
+!  ngap    time-step frequency of model-data gap computation
+!  nprg    time-step frequency of gap print in model output
+&namgap
+   ngap =  15
+   nprg =  10
+/
+!-----------------------------------------------------------------------
+!       namznl    zonal mean heat & freshwater fluxes computation
+!                 (#ifdef "key_diaznl")
+!-----------------------------------------------------------------------
+!  nfznl   time-step frequency of zonal mean fluxes computation
+&namznl
+   nfznl =  15
+/
+!-----------------------------------------------------------------------
+!       namspr  surface pressure diagnostic
+!-----------------------------------------------------------------------
+!  nmaxp   maximum of iterations for the solver
+!  epsp    absolute precision of the solver
+!  niterp  number of iteration done by the solver
+&namspr
+   nmaxp   =   1000
+   epsp    =  1.e-3
+   niterp  =    400
+/
+!-----------------------------------------------------------------------
+!       namcpl    coupled ocean/atmosphere model  (#ifdef "key_coupled")
+!-----------------------------------------------------------------------
+!  nexco   coupling frequency in time steps
+!  cchan   coupling technique 'PIPE' or 'CLIM'
+&namcpl
+   nexco            =         24
+   cchan            =     'PIPE'
+   nmodcpl          =          2
+   cplmodnam        =   'opa.xx'
+   cploasis         =    'Oasis'
+   nfldo2c          =          2
+   nflxc2o          =          6
+   ntauc2o          =          4
+   cpl_writ(1)      = 'SOSSTSST'
+   cpl_f_writ(1)    =   'ocesst'
+   cpl_writ(2)      = 'SOICECOV'
+   cpl_f_writ(2)    =   'oceice'
+   cpl_readflx(1)   = 'SONSFLDO'
+   cpl_f_readflx(1) =   'oceflx'
+   cpl_readflx(2)   = 'SOSHFLDO'
+   cpl_f_readflx(2) =   'oceflx'
+   cpl_readflx(3)   = 'SOTOPRSU'
+   cpl_f_readflx(3) =   'oceflx'
+   cpl_readflx(4)   = 'SOTFSHSU'
+   cpl_f_readflx(4) =   'oceflx'
+   cpl_readflx(5)   = 'SORUNCOA'
+   cpl_f_readflx(5) =   'oceflx'
+   cpl_readflx(6)   = 'SORIVFLU'
+   cpl_f_readflx(6) =   'oceflx'
+   cpl_readtau(1)   = 'SOZOTAUX'
+   cpl_f_readtau(1) =   'ocetau'
+   cpl_readtau(2)   = 'SOZOTAU2'
+   cpl_f_readtau(2) =   'ocetau'
+   cpl_readtau(3)   = 'SOMETAUY'
+   cpl_f_readtau(3) =   'ocetau'
+   cpl_readtau(4)   = 'SOMETAU2'
+   cpl_f_readtau(4) =   'ocetau'
+/
+!-----------------------------------------------------------------------
+!       namobc    open boundaries parameters (#ifdef key_obc)
+!-----------------------------------------------------------------------
+!  nobc_dta   = 0 the obc data are equal to the initial state
+!             = 1 the obc data are read in 'obc   .dta' files
+!  rdpeob  time relaxation (days) for the east open boundary
+!  rdpwob  time relaxation (days) for the west open boundary
+!  rdpnob  time relaxation (days) for the north open boundary
+!  rdpsob  time relaxation (days) for the south open boundary
+!  zbsic1  barotropic stream function on isolated coastline 1
+!   zbsic2  barotropic stream function on isolated coastline 2
+!  zbsic3  barotropic stream function on isolated coastline 3
+&namobc
+    nobc_dta =    0
+    rdpein   =    1.
+    rdpwin   =    1.
+    rdpnin   =   30.
+    rdpsin   =    1.
+    rdpeob   = 1500.
+    rdpwob   =   15.
+    rdpnob   =  150.
+    rdpsob   =   15.
+    zbsic1   =  140.e+6
+    zbsic2   =    1.e+6
+    zbsic3   =    0.
+/
+!-----------------------------------------------------------------------
+!       namflo    float parameters (#ifdef key_float)
+!-----------------------------------------------------------------------
+!  ln_rstflo   boolean term for float restart (true or false)
+!  nwritefl   frequency of float output file 
+!  nstockfl   frequency of float restart file 
+!  ln_argo    Argo type floats (stay at the surface each 10 days)
+!  ln_flork4  = T trajectories computed with a 4th order Runge-Kutta
+!             = F  (default)   computed with Blanke' scheme
+&namflo
+    ln_rstflo = .false.
+    nwritefl  =      75
+    nstockfl  =    5475
+    ln_argo   = .false.
+    ln_flork4 = .false.
+/
Index: /trunk/CONFIG/ORCA2_LIM/EXP00/namelist_ice
===================================================================
--- /trunk/CONFIG/ORCA2_LIM/EXP00/namelist_ice	(revision 8)
+++ /trunk/CONFIG/ORCA2_LIM/EXP00/namelist_ice	(revision 8)
@@ -0,0 +1,186 @@
+!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+!
+! ICE namelist :  ice model option and parameter input
+! -------------
+!
+!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+!
+!'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+!       namicerun   Share parameters for dynamics/advection/thermo
+!,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
+!
+!  ldyn        : switch for ice dynamics (true) or not (false)
+!  acrit(1/2)  : minimum fraction for leads in the Northern (Southern) Hemisphere
+!  hnsdif      : computation of temperature in snow (=0.0) or not (=9999.0)
+!  hicdif      : computation of temperature in ice  (=0.0) or not (=9999.0)
+!
+&namicerun
+   ldyn    = .true. 
+   acrit   = 1.0e-06 , 1.0e-06
+   hsndif  = 0.0 
+   hicdif  = 0.0
+
+!'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+!       namiceini   parameters for ice initialisation
+!,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
+!
+!  ttest : threshold water temperature for initial sea ice
+!  hninn : initial snow thickness in the north
+!  hginn : initial ice thickness in the north
+!  alinn : initial leads area in the north
+!  hnins : initial snow thickness in the south
+!  hgins : initial ice thickness in the south
+!  alins : initial leads area in the south
+!
+&namiceini
+   ttest = 2.0
+   hninn = 0.5
+   hginn = 3.0
+   alinn = 0.05
+   hnins = 0.1
+   hgins = 1.0
+   alins = 0.1
+/
+!'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+!       namicedia   parameters for ice diagnostics
+!,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
+!
+!  fmtinf : format of the output values 
+!  nfrinf : number of variables written in one line
+!  ntmoy  : instantaneous values of ice evolution or averaging
+!  ninfo  : frequency of ouputs on file ice_evolu in case of averaging
+!
+&namicedia
+   fmtinf = '1PE13.5 '
+   nfrinf = 4
+   ntmoy  = 1
+   ninfo  = 1
+/
+!'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+!       namicedyn   parameters for ice dynamic
+!,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
+!
+!  epsd   : tolerance parameter
+!  nlminn : northern minimum index for ice drift old value = 38
+!  nlmaxs : southern minimum index for ice drift old value = 15
+!  alpha  : coefficient for semi-implicit coriolis
+!  bound  : boundary conditions (=0.0 no-slip, =1.0 free-slip)
+!  dm     : diffusion constant for dynamics.
+!  nbiter : number of sub-time steps for relaxation
+!  nbitdr : maximum number of iterations for relaxation
+!  om     : relaxation constant 
+!  resl   : maximum value for the residual of relaxation 
+!  cw     : drag coefficient for oceanic stress
+!  angvg  : turning angle for oceanic stress
+!  pstar  : first bulk-rheology parameter
+!  c_rhg  : second bulk-rhelogy parameter
+!  etamn  : minimun value for viscosity
+!  creepl : creep limit
+!  ecc    : eccentricity of the elliptical yield curve
+!  ahi0   : horizontal eddy diffusivity coefficient for sea-ice (m2/s)
+!
+&namicedyn 
+   epsd   = 1.0e-20
+   nlminn = 103
+   nlmaxs = 45
+   alpha  = 0.5
+   dm     = 0.6e+03
+   nbiter = 1
+   nbitdr = 100
+   om     = 0.5
+   resl   = 5.0e-05
+   cw     = 5.0e-03
+   angvg  = 0.0
+   pstar  = 1.0e+04 
+   c_rhg  = 20.0
+   etamn  = 0.0e+07
+   creepl = 2.0e-08
+   ecc    = 2.0
+   ahi0   = 350.e0
+/
+!
+!'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+!       namicetrp   parameters for ice advection
+!,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
+!  bound  : boundary conditions (=0.0 no-slip, =1.0 free-slip)
+&namicetrp 
+   bound  = 0.
+/
+
+!'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+!       namicethd   parameters for thermodynamic computation
+!,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
+!
+!  hmelt       : maximum melting at the bottom
+!  hiccrit(1/2): ice thickness for lateral accretion in the Northern (Southern) Hemisphere
+!                caution 1.0, 1.0 best value to be used!!! (gilles G.)
+!  hicmin      : ice thickness corr. to max. energy stored in brine pocket
+!  hiclim      : minimum ice thickness
+!  amax        : maximum lead fraction
+!  swiqst      : energy stored in brine pocket (=1) or not (=0)	
+!  sbeta       : numerical caracteritic of the scheme for diffusion in ice
+!               Cranck-Nicholson (=0.5), implicit (=1), explicit (=0)
+!  parlat      : percentage of energy used for lateral ablation
+!  hakspl      : slope of distr. for Hakkinen-Mellor's lateral melting
+!  hibspl      : slope of distribution for Hibler's lateral melting
+!  exld        : exponent for leads-closure rate
+!  hakdif      : coefficient for diffusions of ice and snow
+!  thth         : threshold thickness for comp. of eq. thermal conductivity
+!  hnzst       : thickness of the surf. layer in temp. computation
+!  parsub      : switch for snow sublimation or not
+!  alphs       : coefficient for snow density when snow ice formation
+! 
+&namicethd
+   hmelt   = -0.15
+   hiccrit = 0.3 , 0.3
+   hicmin  = 0.2
+   hiclim  = 0.05
+   amax    = 0.999 
+   swiqst  = 1.
+   sbeta   = 1.
+   parlat  = 0.0
+   hakspl  = 0.5
+   hibspl  = 0.5
+   exld    = 2.0
+   hakdif  = 1.0
+   thth    = 0.2
+   hnzst   = 0.1
+   parsub  = 1.0
+   alphs   = 1.0
+/
+!
+!'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+!       namiceout   parameters for outputs
+!,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
+!
+!   noumef      : number of fields
+!   field
+!        title  : title of the field
+!        name   : name of the field
+!        unit   : unit of the field
+!        nc     : switch for saving field ( = 1 ) or not ( = 0 )
+!        cmulti : multiplicative constant
+!        cadd   : additive constant
+!
+&namiceout
+   noumef   = 19
+   field_1  = 'Snow thickness                     ', 'isnowthi', 'm       ', 1, 1.0, 0.0
+   field_2  = 'Ice thickness                      ', 'iicethic', 'm       ', 1, 1.0, 0.0
+   field_3  = 'Ice produced                       ', 'iiceprod', 'm/kt    ', 1, 1.0, 0.0
+   field_4  = 'Ice concentration                  ', 'ileadfra', '%       ', 1, -1.0, 1.0
+   field_5  = 'Ice temperature                    ', 'iicetemp', 'C       ', 1, 1.0, -273.15
+   field_6  = 'Oceanic flux at the ice base       ', 'ioceflxb', 'w/m2    ', 1, 1.0, 0.0
+   field_7  = 'Ice velocity u                     ', 'iicevelu', 'm/s     ', 1, 1.0, 0.0
+   field_8  = 'Ice velocity v                     ', 'iicevelv', 'm/s     ', 1, 1.0, 0.0
+   field_9  = 'Sea surface temperature            ', 'isstempe', 'C       ', 1, 1.0, -273.15
+   field_10 = 'Sea surface salinity               ', 'isssalin', 'PSU     ', 1, 1.0, 0.0
+   field_11 = 'Total flux at ocean surface        ', 'iocetflx', 'w/m2    ', 1, 1.0, 0.0
+   field_12 = 'Solar flux at ocean surface        ', 'iocesflx', 'w/m2    ', 1, 1.0, 0.0
+   field_13 = 'Non-solar flux at ocean surface    ', 'iocwnsfl', 'w/m2    ', 1, 1.0, 0.0
+   field_14 = 'Salt flux at ocean surface         ', 'iocesafl', 'kg/m2/kt', 1, 1.0, 0.0
+   field_15 = 'Wind stress u                      ', 'iocestru', 'Pa      ', 1, 1.0, 0.0
+   field_16 = 'Wind stress v                      ', 'iocestrv', 'Pa      ', 1, 1.0, 0.0 
+   field_17 = 'Solar flux at ice/ocean surface    ', 'iicesflx', 'w/m2    ', 1, 1.0, 0.0
+   field_18 = 'Non-solar flux at ice/ocean surface', 'iicenflx', 'w/m2    ', 1, 1.0, 0.0
+   field_19 = 'Snow precipitation                 ', 'isnowpre', 'kg/day  ', 1, 1.0, 0.0
+/      
Index: /trunk/CONFIG/ORCA2_LIM/scripts/BB_make
===================================================================
--- /trunk/CONFIG/ORCA2_LIM/scripts/BB_make	(revision 8)
+++ /trunk/CONFIG/ORCA2_LIM/scripts/BB_make	(revision 8)
@@ -0,0 +1,6765 @@
+# $Header$
+# some variables
+TMP = ../../../tmp
+L_X = $(L_O) $(L_C) -ftrace
+#-Q- aix   L_X = $(L_O) $(L_C) 
+#-Q- sxnec  # Compiler options for the ORCA model   -   std
+#-Q- sxnec  F_O = -ew -sx5 -ftrace -C vopt -Wf"-init stack=nan" -Wl"-f nan" -Wf"-P nh" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce
+#-Q- sxnec  # Compiler options for the ORCA model   -   auto tasking
+#-Q- sxnec  #F_O = -ew -sx5 -ftrace -C vopt -Wf"-P nh" -P auto -Wf,-fopp par res=whole -Wf"-init stack=nan" -Wl"-f nan" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce
+#-Q- sxnec  #L_X = -ew -sx5 -P auto -ftrace
+#-Q- linux  # Compiler options for the ORCA model
+#-Q- linux  F_O = -Mlist -O2 -byteswapio -r8  -module $(MODDIR)
+#-Q- aix    # Compiler options for the ORCA model (aix version)
+#-Q- aix    F_O =  -qrealsize=8 -qsave -qsuffix=f=f90 -qsuffix=cpp=F90 -qsource -I$(MODDIR)/oce -I $(MODDIR) -I $(IOIPSL_MOD) -q64 -O4 -qlargepage -qmaxmem=-1 -brename:.flush,.flush_ -brename:.mpi_send,.mpi_bsend
+PREF=
+#-Q- sxnec	PREF=i.
+
+KEY_LIST = \
+     key_antarctic \
+     key_arctic \
+     key_autotasking \
+     key_coupled \
+     key_diaeiv \
+     key_diagap \
+     key_diahdy \
+     key_diahth \
+     key_diainstant \
+     key_diaptr \
+     key_diaspr \
+     key_dimgout \
+     key_dtasal \
+     key_dtasst \
+     key_dtatem \
+     key_dynldf_c1d \
+     key_dynldf_c2d \
+     key_dynldf_c3d \
+     key_dynspg_fsc \
+     key_dynspg_rl \
+     key_eel_r2 \
+     key_eel_r5 \
+     key_eel_r6 \
+     key_esopa \
+     key_fdir \
+     key_feti \
+     key_floats \
+     key_flx_bulk_daily \
+     key_flx_bulk_monthly \
+     key_flx_forced_daily \
+     key_ice_lim \
+     key_islands \
+     key_ldfslp \
+     key_lim_cp1 \
+     key_lim_cp2 \
+     key_lim_cp3 \
+     key_lim_fdd \
+     key_mpp \
+     key_mpp_mpi \
+     key_mpp_pvm \
+     key_mpp_shmem \
+     key_noslip_accurate \
+     key_obc \
+     key_orca_r025 \
+     key_orca_r05 \
+     key_orca_r2 \
+     key_orca_r4 \
+     key_partial_steps \
+     key_passivetrc \
+     key_s_coord \
+     key_tau_daily \
+     key_tau_monthly \
+     key_trabbc \
+     key_trabbl_adv \
+     key_trabbl_dif \
+     key_tradmp \
+     key_traldf_c1d \
+     key_traldf_c2d \
+     key_traldf_c3d \
+     key_traldf_eiv \
+     key_trddyn \
+     key_trddyn_new \
+     key_trdmld \
+     key_trdtra \
+     key_vectopt_loop \
+     key_vectopt_memory \
+     key_zdfcst \
+     key_zdfddm \
+     key_zdfric \
+     key_zdftke 
+# .o file list in the library
+LIB_OBJ = \
+		$(MODEL_LIB)(ctlopn.o)\
+		$(MODEL_LIB)(lib_cray.o)\
+		$(MODEL_LIB)(lib_isml.o)\
+		$(MODEL_LIB)(lib_print.o)\
+		$(MODEL_LIB)(blk_oce.o)\
+		$(MODEL_LIB)(bulk.o)\
+		$(MODEL_LIB)(cla.o)\
+		$(MODEL_LIB)(cla_div.o)\
+		$(MODEL_LIB)(cla_dynspg.o)\
+		$(MODEL_LIB)(closea.o)\
+		$(MODEL_LIB)(cpl.o)\
+		$(MODEL_LIB)(cpl_oce.o)\
+		$(MODEL_LIB)(daymod.o)\
+		$(MODEL_LIB)(diafwb.o)\
+		$(MODEL_LIB)(diagap.o)\
+		$(MODEL_LIB)(diahdy.o)\
+		$(MODEL_LIB)(diahth.o)\
+		$(MODEL_LIB)(dianam.o)\
+		$(MODEL_LIB)(diaspr.o)\
+		$(MODEL_LIB)(diawri.o)\
+		$(MODEL_LIB)(divcur.o)\
+		$(MODEL_LIB)(domain.o)\
+		$(MODEL_LIB)(domcfg.o)\
+		$(MODEL_LIB)(domhgr.o)\
+		$(MODEL_LIB)(dommsk.o)\
+		$(MODEL_LIB)(domstp.o)\
+		$(MODEL_LIB)(domwri.o)\
+		$(MODEL_LIB)(domzgr.o)\
+		$(MODEL_LIB)(dom_ice.o)\
+		$(MODEL_LIB)(dom_oce.o)\
+		$(MODEL_LIB)(dtasal.o)\
+		$(MODEL_LIB)(dtasst.o)\
+		$(MODEL_LIB)(dtatem.o)\
+		$(MODEL_LIB)(dynhpg.o)\
+		$(MODEL_LIB)(dynhpg_atsk.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)(dynnxt.o)\
+		$(MODEL_LIB)(dynspg_fsc.o)\
+		$(MODEL_LIB)(dynspg_fsc_atsk.o)\
+		$(MODEL_LIB)(dynspg_rl.o)\
+		$(MODEL_LIB)(dynvor.o)\
+		$(MODEL_LIB)(dynzad.o)\
+		$(MODEL_LIB)(dynzdf_exp.o)\
+		$(MODEL_LIB)(dynzdf_imp.o)\
+		$(MODEL_LIB)(dynzdf_imp_atsk.o)\
+		$(MODEL_LIB)(dynzdf_iso.o)\
+		$(MODEL_LIB)(eosbn2.o)\
+		$(MODEL_LIB)(flo4rk.o)\
+		$(MODEL_LIB)(floats.o)\
+		$(MODEL_LIB)(floblk.o)\
+		$(MODEL_LIB)(flodom.o)\
+		$(MODEL_LIB)(flowri.o)\
+		$(MODEL_LIB)(flo_oce.o)\
+		$(MODEL_LIB)(flxblk.o)\
+		$(MODEL_LIB)(flxfwb.o)\
+		$(MODEL_LIB)(flxmod.o)\
+		$(MODEL_LIB)(flxrnf.o)\
+		$(MODEL_LIB)(flx_oce.o)\
+		$(MODEL_LIB)(geo2ocean.o)\
+		$(MODEL_LIB)(iceini.o)\
+		$(MODEL_LIB)(icestp.o)\
+		$(MODEL_LIB)(ice.o)\
+		$(MODEL_LIB)(ice_oce.o)\
+		$(MODEL_LIB)(in_out_manager.o)\
+		$(MODEL_LIB)(istate.o)\
+		$(MODEL_LIB)(lbclnk.o)\
+		$(MODEL_LIB)(ldfdyn.o)\
+		$(MODEL_LIB)(ldfdyn_oce.o)\
+		$(MODEL_LIB)(ldfeiv.o)\
+		$(MODEL_LIB)(ldfslp.o)\
+		$(MODEL_LIB)(ldftra.o)\
+		$(MODEL_LIB)(ldftra_oce.o)\
+		$(MODEL_LIB)(lib_feti.o)\
+		$(MODEL_LIB)(lib_io_fdir.o)\
+		$(MODEL_LIB)(lib_mpp.o)\
+		$(MODEL_LIB)(limadv.o)\
+		$(MODEL_LIB)(limdia.o)\
+		$(MODEL_LIB)(limdyn.o)\
+		$(MODEL_LIB)(limflx.o)\
+		$(MODEL_LIB)(limhdf.o)\
+		$(MODEL_LIB)(limistate.o)\
+		$(MODEL_LIB)(limmsh.o)\
+		$(MODEL_LIB)(limrhg.o)\
+		$(MODEL_LIB)(limrst.o)\
+		$(MODEL_LIB)(limtab.o)\
+		$(MODEL_LIB)(limthd.o)\
+		$(MODEL_LIB)(limthd_lac.o)\
+		$(MODEL_LIB)(limthd_zdf.o)\
+		$(MODEL_LIB)(limtrp.o)\
+		$(MODEL_LIB)(limwri.o)\
+		$(MODEL_LIB)(mppini.o)\
+		$(MODEL_LIB)(obccli.o)\
+		$(MODEL_LIB)(obcdom.o)\
+		$(MODEL_LIB)(obcdta.o)\
+		$(MODEL_LIB)(obcdyn.o)\
+		$(MODEL_LIB)(obcini.o)\
+		$(MODEL_LIB)(obcrad.o)\
+		$(MODEL_LIB)(obcrst.o)\
+		$(MODEL_LIB)(obcspg.o)\
+		$(MODEL_LIB)(obctra.o)\
+		$(MODEL_LIB)(obcvol.o)\
+		$(MODEL_LIB)(obc_oce.o)\
+		$(MODEL_LIB)(obc_par.o)\
+		$(MODEL_LIB)(ocesbc.o)\
+		$(MODEL_LIB)(oce.o)\
+		$(MODEL_LIB)(ocfzpt.o)\
+		$(MODEL_LIB)(opa.o)\
+		$(MODEL_LIB)(par_ice.o)\
+		$(MODEL_LIB)(par_kind.o)\
+		$(MODEL_LIB)(par_oce.o)\
+		$(MODEL_LIB)(phycst.o)\
+		$(MODEL_LIB)(ptr.o)\
+		$(MODEL_LIB)(restart.o)\
+		$(MODEL_LIB)(solfet.o)\
+		$(MODEL_LIB)(solisl.o)\
+		$(MODEL_LIB)(solmat.o)\
+		$(MODEL_LIB)(solpcg.o)\
+		$(MODEL_LIB)(solsor.o)\
+		$(MODEL_LIB)(solver.o)\
+		$(MODEL_LIB)(sol_oce.o)\
+		$(MODEL_LIB)(step.o)\
+		$(MODEL_LIB)(stpctl.o)\
+		$(MODEL_LIB)(taumod.o)\
+		$(MODEL_LIB)(thd_ice.o)\
+		$(MODEL_LIB)(traadv_cen2.o)\
+		$(MODEL_LIB)(traadv_ctl.o)\
+		$(MODEL_LIB)(traadv_muscl2.o)\
+		$(MODEL_LIB)(traadv_muscl.o)\
+		$(MODEL_LIB)(traadv_tvd.o)\
+		$(MODEL_LIB)(trabbc.o)\
+		$(MODEL_LIB)(trabbl.o)\
+		$(MODEL_LIB)(tradmp.o)\
+		$(MODEL_LIB)(traldf_bilapg.o)\
+		$(MODEL_LIB)(traldf_bilap.o)\
+		$(MODEL_LIB)(traldf_iso.o)\
+		$(MODEL_LIB)(traldf_iso_zps.o)\
+		$(MODEL_LIB)(traldf_lap.o)\
+		$(MODEL_LIB)(tranpc.o)\
+		$(MODEL_LIB)(tranxt.o)\
+		$(MODEL_LIB)(traqsr.o)\
+		$(MODEL_LIB)(trasbc.o)\
+		$(MODEL_LIB)(trazdf_exp.o)\
+		$(MODEL_LIB)(trazdf_imp.o)\
+		$(MODEL_LIB)(trazdf_iso.o)\
+		$(MODEL_LIB)(trazdf_iso_vopt.o)\
+		$(MODEL_LIB)(trddyn.o)\
+		$(MODEL_LIB)(trddyn_oce.o)\
+		$(MODEL_LIB)(trdmld.o)\
+		$(MODEL_LIB)(trdtra.o)\
+		$(MODEL_LIB)(trdtra_oce.o)\
+		$(MODEL_LIB)(wzvmod.o)\
+		$(MODEL_LIB)(zdfbfr.o)\
+		$(MODEL_LIB)(zdfddm.o)\
+		$(MODEL_LIB)(zdfevd.o)\
+		$(MODEL_LIB)(zdfini.o)\
+		$(MODEL_LIB)(zdfmxl.o)\
+		$(MODEL_LIB)(zdfric.o)\
+		$(MODEL_LIB)(zdftke.o)\
+		$(MODEL_LIB)(zdf_oce.o)\
+		$(MODEL_LIB)(zpshde.o)
+#
+.SUFFIXES: .f90 .F90 .F
+#
+# Target
+all: 		$(EXEC_BIN)
+		@cp SRC_FILE_LIST.temp SRC_FILE_LIST
+		@echo OPA model is OK
+# cleaning objects, libraries and executables
+clean:
+		$(RM) model.o $(MODDIR)/oce/*.mod $(MODEL_LIB) $(SXMODEL_LIB) $(EXEC_BIN)
+		@echo OPA model \(.o .mod libraries and executables are removed\)
+# dependancies
+$(EXEC_BIN) :	libioipsl key keyverif src_file_list $(MODEL_LIB) $(IOIPSL_LIB) model.o
+		$(F_L) $(L_X) -o $(EXEC_BIN) model.o $(SXMODEL_LIB) $(OASISMPI2_LIB) $(IOIPSL_LIB) $(NCDF_LIB) $(LIBMPI) $(LIBMP)
+
+libioipsl :
+	(cd ../../IOIPSL/src ; $(M_K) -f Makefile )
+
+# main program
+model.o :	model.f90
+		@$(F_C) $(F_O) -c model.f90
+
+# if the make script is stopped, one doesn't destroy library
+.PRECIOUS : $(MODEL_LIB)
+#-Q- sxnec .PRECIOUS : $(SXMODEL_LIB)
+
+# library dependancies
+$(MODEL_LIB):	$(LIB_OBJ)
+		@echo
+		@echo La bibliotheque est a jour
+		@echo
+
+# Rules
+.DEFAULTS:
+
+# rules for the .f90 files
+.f90.a :           
+		@$(F_C) $(P_P) $(F_O) \
+#-Q- fjvpp		-Z $*.L \
+#-Q- sxnec		-R2 \
+#-Q- aix		-qsource \
+		$*.f90 || { mv $(PREF)$*.L $(TMP) ; false ; exit ; }
+#-Q- sxnec		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
+		@$(A_C) $(MODEL_LIB) $*.o  > /dev/null
+		@$(RM) $*.[of]
+		@if [ -f $*.mod ] ; then mv $*.mod $(MODDIR)/oce ; fi
+#-Q- aix		@mv $(PREF)$*.lst $(PREF)$*.L
+#-Q- linux		@mv $(PREF)$*.lst $(PREF)$*.L
+		@mv $(PREF)$*.L $(TMP)
+
+# rules for the .F90 files
+.F90.a :           
+		@$(F_C) $(P_P) $(F_O) \
+#-Q- fjvpp		-Z $*.L \
+#-Q- sxnec		-R2 \
+#-Q- aix		-qsource \
+		$*.F90 || { mv $(PREF)$*.L $(TMP) ; false ; exit ; }
+#-Q- sxnec		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
+		@$(A_C) $(MODEL_LIB) $*.o  > /dev/null
+		@$(RM) $*.[of]
+		@if [ -f $*.mod ] ; then mv $*.mod $(MODDIR)/oce ; fi
+#-Q- aix		@mv $(PREF)$*.lst $(PREF)$*.L
+#-Q- linux		@mv $(PREF)$*.lst $(PREF)$*.L
+		@mv $(PREF)$*.L $(TMP)
+
+# rules for the .F files
+.F.a :           
+		@$(F_C) $(P_P) $(F_O) \
+#-Q- fjvpp		-Z $*.L \
+#-Q- sxnec		-R2 \
+#-Q- aix		-qsource \
+		$*.F || { mv $(PREF)$*.L $(TMP) ; false ; exit ; }
+#-Q- sxnec		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
+		@$(A_C) $(MODEL_LIB) $*.o  > /dev/null
+		@$(RM) $*.[of]
+		@if [ -f $*.mod ] ; then mv $*.mod $(MODDIR)/oce ; fi
+#-Q- aix		@mv $(PREF)$*.lst $(PREF)$*.L
+#-Q- linux		@mv $(PREF)$*.lst $(PREF)$*.L
+		@mv $(PREF)$*.L $(TMP)
+
+# rules for the library from the .f files 
+.f.a : 		
+		@$(F_C) $(F_O) \
+#-Q- fjvpp		-Z $*.L \
+#-Q- sxnec		-R2 \
+#-Q- aix		-qsource \
+		$*.f|| { mv $*.L $(TMP) ; false ; exit ; }
+#-Q- sxnec		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
+		@$(A_C) $(MODEL_LIB) $*.o  > /dev/null
+		@$(RM) -f $*.o
+#-Q- aix		@mv $(PREF)$*.lst $(PREF)$*.L
+#-Q- linux	@mv $(PREF)$*.lst $(PREF)$*.L
+		@mv $*.L $(TMP)
+#
+$(MODEL_LIB)(blk_oce.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	blk_oce.F90
+$(MODEL_LIB)(bulk.o) :	\
+	blk_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	flx_oce.F90 \
+	ice.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	blk_oce.F90 \
+	dom_oce.F90 \
+	flxblk.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxblk.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	bulk.F90
+$(MODEL_LIB)(cla.o) :	\
+	blk_oce.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	tradmp.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	cla.F90
+$(MODEL_LIB)(cla_div.o) :	\
+	blk_oce.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	tradmp.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	cla_div.F90
+$(MODEL_LIB)(cla_dynspg.o) :	\
+	blk_oce.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obccli.F90 \
+	obc_oce.F90 \
+	obc_par.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	sol_oce.F90 \
+	taumod.F90 \
+	tradmp.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obccli.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	obcdyn.F90 \
+	obcvol.F90 \
+	obc_oce.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	phycst.F90 \
+	solfet.F90 \
+	solpcg.F90 \
+	solsor.F90 \
+	sol_oce.F90 \
+	trddyn_oce.F90 \
+	trdtra_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obcdyn.o) \
+	$(MODEL_LIB)(obcvol.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(solfet.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	cla_dynspg.F90
+$(MODEL_LIB)(closea.o) :	\
+	blk_oce.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	tradmp.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	closea.F90
+$(MODEL_LIB)(cpl.o) :	\
+	dom_oce.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	cpl_oce.F90 \
+	dom_oce.F90 \
+	flx_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	../../../lib/libioipsl.a \
+	cpl.F90
+$(MODEL_LIB)(cpl_oce.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	cpl_oce.F90
+$(MODEL_LIB)(daymod.o) :	\
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(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 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90
+$(MODEL_LIB)(diafwb.o) :	\
+	blk_oce.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	tradmp.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	blk_oce.F90 \
+	dom_oce.F90 \
+	flxblk.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	phycst.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxblk.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	diafwb.F90
+$(MODEL_LIB)(diagap.o) :	\
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(daymod.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) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dianam.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtatem.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	oce.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) \
+	domzgr_substitute.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	diagap.F90
+$(MODEL_LIB)(diahdy.o) :	\
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(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 \
+	oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	diahdy.F90
+$(MODEL_LIB)(diahth.o) :	\
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(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 \
+	oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	diahth.F90
+$(MODEL_LIB)(dianam.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.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) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(phycst.o) \
+	dianam.F90
+$(MODEL_LIB)(diaspr.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	sol_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.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)(sol_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	phycst.F90 \
+	solfet.F90 \
+	solpcg.F90 \
+	solsor.F90 \
+	sol_oce.F90 \
+	$(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)(solfet.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	diaspr.F90
+$(MODEL_LIB)(diawri.o) :	\
+	blk_oce.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	solfet.F90 \
+	solpcg.F90 \
+	solsor.F90 \
+	sol_oce.F90 \
+	taumod.F90 \
+	tradmp.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(solfet.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	daymod.F90 \
+	diahth.F90 \
+	dianam.F90 \
+	diaspr.F90 \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	phycst.F90 \
+	sol_oce.F90 \
+	taumod.F90 \
+	zdfddm.F90 \
+	zdfmxl.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(diahth.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(diaspr.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	dtasst.F90 \
+	$(MODEL_LIB)(dtasst.o) \
+	diawri_dimg.h90 \
+	diawri_fdir.h90 \
+	domzgr_substitute.h90 \
+	zdfddm_substitute.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	diawri.F90
+$(MODEL_LIB)(divcur.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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)(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 \
+	lbclnk.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	divcur.F90
+$(MODEL_LIB)(domain.o) :	\
+	blk_oce.F90 \
+	closea.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obc_oce.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	solisl.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(closea.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(solisl.o) \
+	blk_oce.F90 \
+	closea.F90 \
+	daymod.F90 \
+	domhgr.F90 \
+	dommsk.F90 \
+	domstp.F90 \
+	domwri.F90 \
+	domzgr.F90 \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(closea.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(domhgr.o) \
+	$(MODEL_LIB)(dommsk.o) \
+	$(MODEL_LIB)(domstp.o) \
+	$(MODEL_LIB)(domwri.o) \
+	$(MODEL_LIB)(domzgr.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	domzgr_substitute.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	domain.F90
+$(MODEL_LIB)(domcfg.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obc_oce.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	sol_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.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)(sol_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	phycst.F90 \
+	solisl.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(solisl.o) \
+	domcfg.F90
+$(MODEL_LIB)(domhgr.o) :	\
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(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 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(phycst.o) \
+	domhgr_coo_fdir.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	domhgr.F90
+$(MODEL_LIB)(dommsk.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obc_oce.F90 \
+	obc_par.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	sol_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.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)(sol_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	solisl.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(solisl.o) \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dommsk.F90
+$(MODEL_LIB)(domstp.o) :	\
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	domstp.F90
+$(MODEL_LIB)(domwri.o) :	\
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	domwri_fdir.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	domwri.F90
+$(MODEL_LIB)(domzgr.o) :	\
+	dom_oce.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obc_oce.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	sol_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	closea.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	solisl.F90 \
+	$(MODEL_LIB)(closea.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)(solisl.o) \
+	domzgr_substitute.h90 \
+	domzgr_s.h90 \
+	domzgr_zps.h90 \
+	vectopt_loop_substitute.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	domzgr.F90
+$(MODEL_LIB)(dom_ice.o) :	\
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	par_ice.F90 \
+	$(MODEL_LIB)(par_ice.o) \
+	dom_ice.F90
+$(MODEL_LIB)(dom_oce.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90
+$(MODEL_LIB)(dtasal.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.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) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	domzgr_substitute.h90 \
+	dtasal_fdir.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	dtasal.F90
+$(MODEL_LIB)(dtasst.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.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) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	../../../lib/libioipsl.a \
+	dtasst.F90
+$(MODEL_LIB)(dtatem.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.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) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	domzgr_substitute.h90 \
+	dtatem_fdir.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	dtatem.F90
+$(MODEL_LIB)(dynhpg.o) :	\
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(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 \
+	oce.F90 \
+	phycst.F90 \
+	trddyn_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dynhpg.F90
+$(MODEL_LIB)(dynhpg_atsk.o) :	\
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(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 \
+	oce.F90 \
+	phycst.F90 \
+	trddyn_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dynhpg_atsk.F90
+$(MODEL_LIB)(dynkeg.o) :	\
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	trddyn_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dynkeg.F90
+$(MODEL_LIB)(dynldf_bilapg.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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 \
+	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)(zdfmxl.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldfslp.F90 \
+	oce.F90 \
+	trddyn_oce.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)(oce.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	ldfdyn_substitute.h90 \
+	KEY_CPP \
+	dynldf_bilapg.F90
+$(MODEL_LIB)(dynldf_bilap.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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)(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 \
+	ldfdyn_oce.F90 \
+	oce.F90 \
+	trddyn_oce.F90 \
+	$(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)(trddyn_oce.o) \
+	domzgr_substitute.h90 \
+	ldfdyn_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dynldf_bilap.F90
+$(MODEL_LIB)(dynldf_iso.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.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_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	ldfdyn_oce.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	trddyn_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	ldfdyn_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	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 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.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_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	ldfdyn_oce.F90 \
+	ldfslp.F90 \
+	oce.F90 \
+	trddyn_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	ldfdyn_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dynldf_lap.F90
+$(MODEL_LIB)(dynnxt.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obccli.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obccli.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	obcdyn.F90 \
+	oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(obcdyn.o) \
+	$(MODEL_LIB)(oce.o) \
+	dynnxt.F90
+$(MODEL_LIB)(dynspg_fsc.o) :	\
+	blk_oce.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obccli.F90 \
+	obcdyn.F90 \
+	obcvol.F90 \
+	obc_oce.F90 \
+	obc_par.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	solfet.F90 \
+	solpcg.F90 \
+	solsor.F90 \
+	sol_oce.F90 \
+	taumod.F90 \
+	tradmp.F90 \
+	trddyn_oce.F90 \
+	trdtra_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obccli.o) \
+	$(MODEL_LIB)(obcdyn.o) \
+	$(MODEL_LIB)(obcvol.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(solfet.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	cla_dynspg.F90 \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	obcdyn.F90 \
+	obcvol.F90 \
+	obc_oce.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	phycst.F90 \
+	solfet.F90 \
+	solpcg.F90 \
+	solsor.F90 \
+	sol_oce.F90 \
+	trddyn_oce.F90 \
+	trdtra_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(cla_dynspg.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obcdyn.o) \
+	$(MODEL_LIB)(obcvol.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(solfet.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dynspg_fsc.F90
+$(MODEL_LIB)(dynspg_fsc_atsk.o) :	\
+	blk_oce.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obccli.F90 \
+	obcdyn.F90 \
+	obcvol.F90 \
+	obc_oce.F90 \
+	obc_par.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	solfet.F90 \
+	solpcg.F90 \
+	solsor.F90 \
+	sol_oce.F90 \
+	taumod.F90 \
+	tradmp.F90 \
+	trddyn_oce.F90 \
+	trdtra_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obccli.o) \
+	$(MODEL_LIB)(obcdyn.o) \
+	$(MODEL_LIB)(obcvol.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(solfet.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	cla_dynspg.F90 \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	obcdyn.F90 \
+	obcvol.F90 \
+	obc_oce.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	phycst.F90 \
+	solfet.F90 \
+	solpcg.F90 \
+	solsor.F90 \
+	sol_oce.F90 \
+	trddyn_oce.F90 \
+	trdtra_oce.F90 \
+	$(MODEL_LIB)(cla_dynspg.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obcdyn.o) \
+	$(MODEL_LIB)(obcvol.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(solfet.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	dynspg_fsc_atsk.F90
+$(MODEL_LIB)(dynspg_rl.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obc_oce.F90 \
+	obc_par.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	sol_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.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)(sol_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	phycst.F90 \
+	solfet.F90 \
+	solisl.F90 \
+	solpcg.F90 \
+	solsor.F90 \
+	sol_oce.F90 \
+	trddyn_oce.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)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(solfet.o) \
+	$(MODEL_LIB)(solisl.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dynspg_rl.F90
+$(MODEL_LIB)(dynvor.o) :	\
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	trddyn_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dynvor.F90
+$(MODEL_LIB)(dynzad.o) :	\
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(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) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	trddyn_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dynzad.F90
+$(MODEL_LIB)(dynzdf_exp.o) :	\
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(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) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	trddyn_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dynzdf_exp.F90
+$(MODEL_LIB)(dynzdf_imp.o) :	\
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(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) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	trddyn_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dynzdf_imp.F90
+$(MODEL_LIB)(dynzdf_imp_atsk.o) :	\
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(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) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	trddyn_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	dynzdf_imp_atsk.F90
+$(MODEL_LIB)(dynzdf_iso.o) :	\
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	zdfmxl.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(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_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	trddyn_oce.F90 \
+	zdf_oce.F90 \
+	$(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)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	zdf.matrixsolver.h90 \
+	KEY_CPP \
+	dynzdf_iso.F90
+$(MODEL_LIB)(eosbn2.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	zdf_oce.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)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	phycst.F90 \
+	zdfddm.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	eosbn2.F90
+$(MODEL_LIB)(flo4rk.o) :	\
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	flo_oce.F90 \
+	oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flo_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	flo4rk.F90
+$(MODEL_LIB)(floats.o) :	\
+	dom_oce.F90 \
+	flo_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	par_oce.F90 \
+	phycst.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)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	flo4rk.F90 \
+	floblk.F90 \
+	flodom.F90 \
+	flowri.F90 \
+	flo_oce.F90 \
+	lib_mpp.F90 \
+	$(MODEL_LIB)(flo4rk.o) \
+	$(MODEL_LIB)(floblk.o) \
+	$(MODEL_LIB)(flodom.o) \
+	$(MODEL_LIB)(flowri.o) \
+	$(MODEL_LIB)(flo_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	../../../lib/libioipsl.a \
+	floats.F90
+$(MODEL_LIB)(floblk.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	flo_oce.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flo_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	floblk.F90
+$(MODEL_LIB)(flodom.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	flo_oce.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flo_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	flodom.F90
+$(MODEL_LIB)(flowri.o) :	\
+	dom_oce.F90 \
+	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)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	flo_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	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) \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	flowri.F90
+$(MODEL_LIB)(flo_oce.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	flo_oce.F90
+$(MODEL_LIB)(flxblk.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_ice.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	blk_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	flx_oce.F90 \
+	ice.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(phycst.o) \
+	flxblk.F90
+$(MODEL_LIB)(flxfwb.o) :	\
+	blk_oce.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	tradmp.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	blk_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	flxblk.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxblk.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	flxfwb.F90
+$(MODEL_LIB)(flxmod.o) :	\
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.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) \
+	daymod.F90 \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(phycst.o) \
+	blk_oce.F90 \
+	bulk.F90 \
+	cpl_oce.F90 \
+	flx_oce.F90 \
+	ice_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(bulk.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	domzgr_substitute.h90 \
+	flx_bulk_daily.h90 \
+	flx_bulk_monthly.h90 \
+	flx_bulk_monthly_fdir.h90 \
+	flx_coupled_ice.h90 \
+	flx_coupled_noice.h90 \
+	flx_forced_daily.h90 \
+	KEY_CPP \
+	flxmod.F90
+$(MODEL_LIB)(flxrnf.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.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) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	phycst.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 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(phycst.o) \
+	flxrnf_ORCA_R05.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	flxrnf.F90
+$(MODEL_LIB)(flx_oce.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	flx_oce.F90
+$(MODEL_LIB)(geo2ocean.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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)(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 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(phycst.o) \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	geo2ocean.F90
+$(MODEL_LIB)(iceini.o) :	\
+	blk_oce.F90 \
+	daymod.F90 \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_ice.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_oce.F90 \
+	flx_oce.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	limistate.F90 \
+	limmsh.F90 \
+	limrst.F90 \
+	ocfzpt.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(limistate.o) \
+	$(MODEL_LIB)(limmsh.o) \
+	$(MODEL_LIB)(limrst.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(phycst.o) \
+	iceini.F90
+$(MODEL_LIB)(icestp.o) :	\
+	blk_oce.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dianam.F90 \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	flxblk.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	iceini.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	limadv.F90 \
+	limhdf.F90 \
+	limistate.F90 \
+	limmsh.F90 \
+	limrhg.F90 \
+	limrst.F90 \
+	limtab.F90 \
+	limthd_lac.F90 \
+	limthd_zdf.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_ice.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	thd_ice.F90 \
+	tradmp.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(flxblk.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(iceini.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(limadv.o) \
+	$(MODEL_LIB)(limhdf.o) \
+	$(MODEL_LIB)(limistate.o) \
+	$(MODEL_LIB)(limmsh.o) \
+	$(MODEL_LIB)(limrhg.o) \
+	$(MODEL_LIB)(limrst.o) \
+	$(MODEL_LIB)(limtab.o) \
+	$(MODEL_LIB)(limthd_lac.o) \
+	$(MODEL_LIB)(limthd_zdf.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(thd_ice.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	daymod.F90 \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	flx_oce.F90 \
+	iceini.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	limdia.F90 \
+	limdyn.F90 \
+	limflx.F90 \
+	limrst.F90 \
+	limthd.F90 \
+	limtrp.F90 \
+	limwri.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(iceini.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(limdia.o) \
+	$(MODEL_LIB)(limdyn.o) \
+	$(MODEL_LIB)(limflx.o) \
+	$(MODEL_LIB)(limrst.o) \
+	$(MODEL_LIB)(limthd.o) \
+	$(MODEL_LIB)(limtrp.o) \
+	$(MODEL_LIB)(limwri.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	icestp.F90
+$(MODEL_LIB)(ice.o) :	\
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	par_ice.F90 \
+	$(MODEL_LIB)(par_ice.o) \
+	ice.F90
+$(MODEL_LIB)(ice_oce.o) :	\
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	blk_oce.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	ice_oce.F90
+$(MODEL_LIB)(in_out_manager.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	lib_print.f90 \
+	par_kind.F90 \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	in_out_manager.F90
+$(MODEL_LIB)(istate.o) :	\
+	blk_oce.F90 \
+	cla_dynspg.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dynspg_fsc.F90 \
+	dynspg_fsc_atsk.F90 \
+	flxrnf.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obcdyn.F90 \
+	obcvol.F90 \
+	obc_oce.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	solfet.F90 \
+	solisl.F90 \
+	solpcg.F90 \
+	solsor.F90 \
+	sol_oce.F90 \
+	trddyn_oce.F90 \
+	trdtra_oce.F90 \
+	zdfddm.F90 \
+	zdftke.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cla_dynspg.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_fsc.o) \
+	$(MODEL_LIB)(dynspg_fsc_atsk.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(ice_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)(obcdyn.o) \
+	$(MODEL_LIB)(obcvol.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(solfet.o) \
+	$(MODEL_LIB)(solisl.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdftke.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	daymod.F90 \
+	divcur.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtatem.F90 \
+	dynspg_fsc.F90 \
+	dynspg_fsc_atsk.F90 \
+	dynspg_rl.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	phycst.F90 \
+	restart.F90 \
+	solisl.F90 \
+	wzvmod.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(divcur.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(dynspg_fsc.o) \
+	$(MODEL_LIB)(dynspg_fsc_atsk.o) \
+	$(MODEL_LIB)(dynspg_rl.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(solisl.o) \
+	$(MODEL_LIB)(wzvmod.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	istate.F90
+$(MODEL_LIB)(lbclnk.o) :	\
+	dom_oce.F90 \
+	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)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	lbclnk.F90
+$(MODEL_LIB)(ldfdyn.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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 \
+	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)(zdfmxl.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldfslp.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	phycst.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) \
+	ldftra_oce.F90 \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	domzgr_substitute.h90 \
+	ldfdyn_antarctic.h90 \
+	ldfdyn_arctic.h90 \
+	ldfdyn_c1d.h90 \
+	ldfdyn_c2d.h90 \
+	ldfdyn_c3d.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	ldfdyn.F90
+$(MODEL_LIB)(ldfdyn_oce.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	ldfdyn_oce.F90
+$(MODEL_LIB)(ldfeiv.o) :	\
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.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 \
+	zdfmxl.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(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)(zdfmxl.o) \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.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) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	ldfeiv.F90
+$(MODEL_LIB)(ldfslp.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.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)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	phycst.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)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	ldfslp.F90
+$(MODEL_LIB)(ldftra.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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 \
+	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)(zdfmxl.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	phycst.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) \
+	ldftra_c1d.h90 \
+	ldftra_c2d.h90 \
+	ldftra_c3d.h90 \
+	vectopt_loop_substitute.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	ldftra.F90
+$(MODEL_LIB)(ldftra_oce.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	ldftra_oce.F90
+$(MODEL_LIB)(lib_feti.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	lib_mpp.F90 \
+	$(MODEL_LIB)(lib_mpp.o) \
+	lib_feti.F90
+$(MODEL_LIB)(lib_io_fdir.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	lib_mpp.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	lib_io_fdir.F90
+$(MODEL_LIB)(lib_mpp.o) :	\
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	lib_mpp.F90
+$(MODEL_LIB)(lib_print.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	lib_print.f90
+$(MODEL_LIB)(limadv.o) :	\
+	blk_oce.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_ice.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	limadv.F90
+$(MODEL_LIB)(limdia.o) :	\
+	blk_oce.F90 \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	flx_oce.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_print.f90 \
+	limistate.F90 \
+	limmsh.F90 \
+	limrst.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_ice.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(limistate.o) \
+	$(MODEL_LIB)(limmsh.o) \
+	$(MODEL_LIB)(limrst.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dom_ice.F90 \
+	iceini.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	limistate.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(iceini.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(limistate.o) \
+	$(MODEL_LIB)(phycst.o) \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	limdia.F90
+$(MODEL_LIB)(limdyn.o) :	\
+	blk_oce.F90 \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	flx_oce.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	limistate.F90 \
+	limmsh.F90 \
+	limrst.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_ice.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(limistate.o) \
+	$(MODEL_LIB)(limmsh.o) \
+	$(MODEL_LIB)(limrst.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	iceini.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	limistate.F90 \
+	limrhg.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(iceini.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(limistate.o) \
+	$(MODEL_LIB)(limrhg.o) \
+	$(MODEL_LIB)(phycst.o) \
+	limdyn.F90
+$(MODEL_LIB)(limflx.o) :	\
+	blk_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	flx_oce.F90 \
+	ice.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_ice.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	flxblk.F90 \
+	flx_oce.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ocfzpt.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(flxblk.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(phycst.o) \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	limflx.F90
+$(MODEL_LIB)(limhdf.o) :	\
+	blk_oce.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_ice.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	limhdf.F90
+$(MODEL_LIB)(limistate.o) :	\
+	blk_oce.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_ice.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(phycst.o) \
+	limistate.F90
+$(MODEL_LIB)(limmsh.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	par_ice.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	lbclnk.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(phycst.o) \
+	limmsh.F90
+$(MODEL_LIB)(limrhg.o) :	\
+	blk_oce.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_ice.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_ice.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(phycst.o) \
+	limrhg.F90
+$(MODEL_LIB)(limrst.o) :	\
+	blk_oce.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_ice.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	limrst_fdir.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	limrst.F90
+$(MODEL_LIB)(limtab.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	limtab.F90
+$(MODEL_LIB)(limthd.o) :	\
+	blk_oce.F90 \
+	dom_oce.F90 \
+	flx_oce.F90 \
+	iceini.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	limistate.F90 \
+	limmsh.F90 \
+	limrst.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_ice.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	thd_ice.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(iceini.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(limistate.o) \
+	$(MODEL_LIB)(limmsh.o) \
+	$(MODEL_LIB)(limrst.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(thd_ice.o) \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	flx_oce.F90 \
+	iceini.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	limtab.F90 \
+	limthd_lac.F90 \
+	limthd_zdf.F90 \
+	phycst.F90 \
+	thd_ice.F90 \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(iceini.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(limtab.o) \
+	$(MODEL_LIB)(limthd_lac.o) \
+	$(MODEL_LIB)(limthd_zdf.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(thd_ice.o) \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	limthd.F90
+$(MODEL_LIB)(limthd_lac.o) :	\
+	blk_oce.F90 \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	flx_oce.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	limistate.F90 \
+	limmsh.F90 \
+	limrst.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_ice.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(limistate.o) \
+	$(MODEL_LIB)(limmsh.o) \
+	$(MODEL_LIB)(limrst.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	iceini.F90 \
+	ice_oce.F90 \
+	limistate.F90 \
+	phycst.F90 \
+	thd_ice.F90 \
+	$(MODEL_LIB)(iceini.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(limistate.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(thd_ice.o) \
+	limthd_lac.F90
+$(MODEL_LIB)(limthd_zdf.o) :	\
+	blk_oce.F90 \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	flx_oce.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_print.f90 \
+	limistate.F90 \
+	limmsh.F90 \
+	limrst.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_ice.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(limistate.o) \
+	$(MODEL_LIB)(limmsh.o) \
+	$(MODEL_LIB)(limrst.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	iceini.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	limistate.F90 \
+	phycst.F90 \
+	thd_ice.F90 \
+	$(MODEL_LIB)(iceini.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(limistate.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(thd_ice.o) \
+	limthd_zdf.F90
+$(MODEL_LIB)(limtrp.o) :	\
+	blk_oce.F90 \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	flx_oce.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	limistate.F90 \
+	limmsh.F90 \
+	limrst.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_ice.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(limistate.o) \
+	$(MODEL_LIB)(limmsh.o) \
+	$(MODEL_LIB)(limrst.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	iceini.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	limadv.F90 \
+	limhdf.F90 \
+	limistate.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(iceini.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(limadv.o) \
+	$(MODEL_LIB)(limhdf.o) \
+	$(MODEL_LIB)(limistate.o) \
+	$(MODEL_LIB)(phycst.o) \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	limtrp.F90
+$(MODEL_LIB)(limwri.o) :	\
+	blk_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	flx_oce.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	limistate.F90 \
+	limmsh.F90 \
+	limrst.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_ice.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(limistate.o) \
+	$(MODEL_LIB)(limmsh.o) \
+	$(MODEL_LIB)(limrst.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_ice.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dianam.F90 \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	flx_oce.F90 \
+	iceini.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(iceini.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(phycst.o) \
+	../../../lib/libioipsl.a \
+	limwri.F90
+$(MODEL_LIB)(model.o) :	\
+	cpl.F90 \
+	daymod.F90 \
+	domain.F90 \
+	domcfg.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	flxfwb.F90 \
+	iceini.F90 \
+	in_out_manager.F90 \
+	istate.F90 \
+	ldfdyn.F90 \
+	ldftra.F90 \
+	lib_mpp.F90 \
+	mppini.F90 \
+	obcini.F90 \
+	obc_par.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	phycst.F90 \
+	ptr.F90 \
+	solver.F90 \
+	step.F90 \
+	traqsr.F90 \
+	trddyn.F90 \
+	trdmld.F90 \
+	trdtra.F90 \
+	zdfini.F90 \
+	zpshde.F90 \
+	$(MODEL_LIB)(cpl.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(domain.o) \
+	$(MODEL_LIB)(domcfg.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(flxfwb.o) \
+	$(MODEL_LIB)(iceini.o) \
+	$(MODEL_LIB)(in_out_manager.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)(ocfzpt.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(ptr.o) \
+	$(MODEL_LIB)(solver.o) \
+	$(MODEL_LIB)(step.o) \
+	$(MODEL_LIB)(traqsr.o) \
+	$(MODEL_LIB)(trddyn.o) \
+	$(MODEL_LIB)(trdmld.o) \
+	$(MODEL_LIB)(trdtra.o) \
+	$(MODEL_LIB)(zdfini.o) \
+	$(MODEL_LIB)(zpshde.o) \
+	opa.F90 \
+	$(MODEL_LIB)(opa.o) \
+	model.f90
+$(MODEL_LIB)(mppini.o) :	\
+	dom_oce.F90 \
+	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)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	sol_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	domzgr_substitute.h90 \
+	mppini_2.h90 \
+	KEY_CPP \
+	mppini.F90
+$(MODEL_LIB)(obccli.o) :	\
+	in_out_manager.F90 \
+	obc_par.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	obccli.F90
+$(MODEL_LIB)(obcdom.o) :	\
+	in_out_manager.F90 \
+	obc_par.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	obcdom.F90
+$(MODEL_LIB)(obcdta.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obc_oce.F90 \
+	obc_par.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.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) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	obccli.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(obccli.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	obc_vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	obcdta.F90
+$(MODEL_LIB)(obcdyn.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	obc_oce.F90 \
+	obc_par.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.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) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	obccli.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obccli.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	obcdyn.F90
+$(MODEL_LIB)(obcini.o) :	\
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obc_oce.F90 \
+	obc_par.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.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)(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) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	obcdom.F90 \
+	obcrst.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obcdom.o) \
+	$(MODEL_LIB)(obcrst.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	obc_vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	obcini.F90
+$(MODEL_LIB)(obcrad.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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)(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 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	phycst.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) \
+	obc_vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	obcrad.F90
+$(MODEL_LIB)(obcrst.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obc_par.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.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) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	phycst.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) \
+	obcrst.F90
+$(MODEL_LIB)(obcspg.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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)(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 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	phycst.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) \
+	obc_vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	obcspg.F90
+$(MODEL_LIB)(obctra.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	obc_par.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	obc_vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	obctra.F90
+$(MODEL_LIB)(obcvol.o) :	\
+	blk_oce.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_print.f90 \
+	obc_par.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	tradmp.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	obc_oce.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	domzgr_substitute.h90 \
+	obc_vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	obcvol.F90
+$(MODEL_LIB)(obc_oce.o) :	\
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	obc_par.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	obc_oce.F90
+$(MODEL_LIB)(obc_par.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	obc_par_EEL_R5.h90 \
+	KEY_CPP \
+	obc_par.F90
+$(MODEL_LIB)(ocesbc.o) :	\
+	blk_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtatem.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	trdtra_oce.F90 \
+	zdfmxl.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	blk_oce.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	tradmp.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	ocesbc.F90
+$(MODEL_LIB)(oce.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	oce.F90
+$(MODEL_LIB)(ocfzpt.o) :	\
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	ocfzpt.F90
+$(MODEL_LIB)(opa.o) :	\
+	blk_oce.F90 \
+	cla.F90 \
+	cla_div.F90 \
+	closea.F90 \
+	cpl.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	diafwb.F90 \
+	diagap.F90 \
+	diahdy.F90 \
+	diahth.F90 \
+	dianam.F90 \
+	diaspr.F90 \
+	diawri.F90 \
+	divcur.F90 \
+	domhgr.F90 \
+	dommsk.F90 \
+	domstp.F90 \
+	domwri.F90 \
+	domzgr.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	dynhpg.F90 \
+	dynhpg_atsk.F90 \
+	dynkeg.F90 \
+	dynldf_bilapg.F90 \
+	dynldf_bilap.F90 \
+	dynldf_iso.F90 \
+	dynldf_lap.F90 \
+	dynnxt.F90 \
+	dynspg_fsc.F90 \
+	dynspg_fsc_atsk.F90 \
+	dynspg_rl.F90 \
+	dynvor.F90 \
+	dynzad.F90 \
+	dynzdf_exp.F90 \
+	dynzdf_imp.F90 \
+	dynzdf_imp_atsk.F90 \
+	dynzdf_iso.F90 \
+	eosbn2.F90 \
+	floats.F90 \
+	flo_oce.F90 \
+	flxblk.F90 \
+	flxfwb.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	icestp.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldfeiv.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	limistate.F90 \
+	limmsh.F90 \
+	limrst.F90 \
+	obcdom.F90 \
+	obcdta.F90 \
+	obcrad.F90 \
+	obcrst.F90 \
+	obcspg.F90 \
+	obc_oce.F90 \
+	obc_par.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	ptr.F90 \
+	restart.F90 \
+	solisl.F90 \
+	solmat.F90 \
+	sol_oce.F90 \
+	stpctl.F90 \
+	taumod.F90 \
+	traadv_cen2.F90 \
+	traadv_ctl.F90 \
+	traadv_muscl2.F90 \
+	traadv_muscl.F90 \
+	traadv_tvd.F90 \
+	trabbc.F90 \
+	trabbl.F90 \
+	tradmp.F90 \
+	traldf_bilapg.F90 \
+	traldf_bilap.F90 \
+	traldf_iso.F90 \
+	traldf_iso_zps.F90 \
+	traldf_lap.F90 \
+	tranpc.F90 \
+	tranxt.F90 \
+	traqsr.F90 \
+	trasbc.F90 \
+	trazdf_exp.F90 \
+	trazdf_imp.F90 \
+	trazdf_iso.F90 \
+	trazdf_iso_vopt.F90 \
+	trddyn.F90 \
+	trddyn_oce.F90 \
+	trdmld.F90 \
+	trdtra.F90 \
+	trdtra_oce.F90 \
+	wzvmod.F90 \
+	zdfbfr.F90 \
+	zdfddm.F90 \
+	zdfevd.F90 \
+	zdfmxl.F90 \
+	zdfric.F90 \
+	zdftke.F90 \
+	zdf_oce.F90 \
+	zpshde.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cla.o) \
+	$(MODEL_LIB)(cla_div.o) \
+	$(MODEL_LIB)(closea.o) \
+	$(MODEL_LIB)(cpl.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(diafwb.o) \
+	$(MODEL_LIB)(diagap.o) \
+	$(MODEL_LIB)(diahdy.o) \
+	$(MODEL_LIB)(diahth.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(diaspr.o) \
+	$(MODEL_LIB)(diawri.o) \
+	$(MODEL_LIB)(divcur.o) \
+	$(MODEL_LIB)(domhgr.o) \
+	$(MODEL_LIB)(dommsk.o) \
+	$(MODEL_LIB)(domstp.o) \
+	$(MODEL_LIB)(domwri.o) \
+	$(MODEL_LIB)(domzgr.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(dynhpg.o) \
+	$(MODEL_LIB)(dynhpg_atsk.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)(dynnxt.o) \
+	$(MODEL_LIB)(dynspg_fsc.o) \
+	$(MODEL_LIB)(dynspg_fsc_atsk.o) \
+	$(MODEL_LIB)(dynspg_rl.o) \
+	$(MODEL_LIB)(dynvor.o) \
+	$(MODEL_LIB)(dynzad.o) \
+	$(MODEL_LIB)(dynzdf_exp.o) \
+	$(MODEL_LIB)(dynzdf_imp.o) \
+	$(MODEL_LIB)(dynzdf_imp_atsk.o) \
+	$(MODEL_LIB)(dynzdf_iso.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(floats.o) \
+	$(MODEL_LIB)(flo_oce.o) \
+	$(MODEL_LIB)(flxblk.o) \
+	$(MODEL_LIB)(flxfwb.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(icestp.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldfeiv.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(limistate.o) \
+	$(MODEL_LIB)(limmsh.o) \
+	$(MODEL_LIB)(limrst.o) \
+	$(MODEL_LIB)(obcdom.o) \
+	$(MODEL_LIB)(obcdta.o) \
+	$(MODEL_LIB)(obcrad.o) \
+	$(MODEL_LIB)(obcrst.o) \
+	$(MODEL_LIB)(obcspg.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(ptr.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(solisl.o) \
+	$(MODEL_LIB)(solmat.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(stpctl.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(traadv_cen2.o) \
+	$(MODEL_LIB)(traadv_ctl.o) \
+	$(MODEL_LIB)(traadv_muscl2.o) \
+	$(MODEL_LIB)(traadv_muscl.o) \
+	$(MODEL_LIB)(traadv_tvd.o) \
+	$(MODEL_LIB)(trabbc.o) \
+	$(MODEL_LIB)(trabbl.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	$(MODEL_LIB)(traldf_bilapg.o) \
+	$(MODEL_LIB)(traldf_bilap.o) \
+	$(MODEL_LIB)(traldf_iso.o) \
+	$(MODEL_LIB)(traldf_iso_zps.o) \
+	$(MODEL_LIB)(traldf_lap.o) \
+	$(MODEL_LIB)(tranpc.o) \
+	$(MODEL_LIB)(tranxt.o) \
+	$(MODEL_LIB)(traqsr.o) \
+	$(MODEL_LIB)(trasbc.o) \
+	$(MODEL_LIB)(trazdf_exp.o) \
+	$(MODEL_LIB)(trazdf_imp.o) \
+	$(MODEL_LIB)(trazdf_iso.o) \
+	$(MODEL_LIB)(trazdf_iso_vopt.o) \
+	$(MODEL_LIB)(trddyn.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(trdmld.o) \
+	$(MODEL_LIB)(trdtra.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(wzvmod.o) \
+	$(MODEL_LIB)(zdfbfr.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfevd.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdfric.o) \
+	$(MODEL_LIB)(zdftke.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zpshde.o) \
+	cpl.F90 \
+	daymod.F90 \
+	domain.F90 \
+	domcfg.F90 \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	flxfwb.F90 \
+	iceini.F90 \
+	in_out_manager.F90 \
+	istate.F90 \
+	ldfdyn.F90 \
+	ldftra.F90 \
+	lib_mpp.F90 \
+	mppini.F90 \
+	obcini.F90 \
+	obc_par.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	phycst.F90 \
+	ptr.F90 \
+	solver.F90 \
+	step.F90 \
+	traqsr.F90 \
+	trddyn.F90 \
+	trdmld.F90 \
+	trdtra.F90 \
+	zdfini.F90 \
+	zpshde.F90 \
+	$(MODEL_LIB)(cpl.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(domain.o) \
+	$(MODEL_LIB)(domcfg.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(flxfwb.o) \
+	$(MODEL_LIB)(iceini.o) \
+	$(MODEL_LIB)(in_out_manager.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)(ocfzpt.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(ptr.o) \
+	$(MODEL_LIB)(solver.o) \
+	$(MODEL_LIB)(step.o) \
+	$(MODEL_LIB)(traqsr.o) \
+	$(MODEL_LIB)(trddyn.o) \
+	$(MODEL_LIB)(trdmld.o) \
+	$(MODEL_LIB)(trdtra.o) \
+	$(MODEL_LIB)(zdfini.o) \
+	$(MODEL_LIB)(zpshde.o) \
+	opa.F90
+$(MODEL_LIB)(par_ice.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	par_ice.F90
+$(MODEL_LIB)(par_oce.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	par_EEL_R2.h90 \
+	par_EEL_R5.h90 \
+	par_EEL_R6.h90 \
+	par_ORCA_R025.h90 \
+	par_ORCA_R05.h90 \
+	par_ORCA_R2.h90 \
+	par_ORCA_R4.h90 \
+	KEY_CPP \
+	par_oce.F90
+$(MODEL_LIB)(phycst.o) :	\
+	lib_print.f90 \
+	par_kind.F90 \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	in_out_manager.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	phycst.F90
+$(MODEL_LIB)(ptr.o) :	\
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	domzgr_substitute.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	ptr.F90
+$(MODEL_LIB)(restart.o) :	\
+	blk_oce.F90 \
+	cla_dynspg.F90 \
+	dom_oce.F90 \
+	dynzdf_exp.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obcdyn.F90 \
+	obcvol.F90 \
+	obc_oce.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	solfet.F90 \
+	solpcg.F90 \
+	solsor.F90 \
+	sol_oce.F90 \
+	taumod.F90 \
+	trazdf_exp.F90 \
+	trddyn_oce.F90 \
+	trdtra_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cla_dynspg.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynzdf_exp.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obcdyn.o) \
+	$(MODEL_LIB)(obcvol.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(solfet.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(trazdf_exp.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	blk_oce.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dynspg_fsc.F90 \
+	dynspg_fsc_atsk.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	phycst.F90 \
+	sol_oce.F90 \
+	zdftke.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_fsc.o) \
+	$(MODEL_LIB)(dynspg_fsc_atsk.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(zdftke.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	lib_mpp.F90 \
+	$(MODEL_LIB)(lib_mpp.o) \
+	restart_fdir.h90 \
+	restart_mpp.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	restart.F90
+$(MODEL_LIB)(solfet.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	sol_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	solfet.F90
+$(MODEL_LIB)(solisl.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	obc_par.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	sol_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	solisl_fdir.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	solisl.F90
+$(MODEL_LIB)(solmat.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	obc_par.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	lib_feti.F90 \
+	lib_mpp.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	phycst.F90 \
+	sol_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(lib_feti.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	solmat.F90
+$(MODEL_LIB)(solpcg.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	sol_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	solpcg.F90
+$(MODEL_LIB)(solsor.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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)(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 \
+	lib_mpp.F90 \
+	oce.F90 \
+	sol_oce.F90 \
+	zdf_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) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	solsor.F90
+$(MODEL_LIB)(solver.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_feti.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obc_oce.F90 \
+	obc_par.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	sol_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_feti.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)(sol_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	solisl.F90 \
+	solmat.F90 \
+	sol_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(solisl.o) \
+	$(MODEL_LIB)(solmat.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	solver.F90
+$(MODEL_LIB)(sol_oce.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	sol_oce.F90
+$(MODEL_LIB)(step.o) :	\
+	blk_oce.F90 \
+	cla_dynspg.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	diahth.F90 \
+	dianam.F90 \
+	diaspr.F90 \
+	diawri.F90 \
+	dom_ice.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	dynspg_fsc.F90 \
+	dynspg_fsc_atsk.F90 \
+	dynzdf_exp.F90 \
+	eosbn2.F90 \
+	flo4rk.F90 \
+	floblk.F90 \
+	flodom.F90 \
+	flowri.F90 \
+	flo_oce.F90 \
+	flxblk.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	iceini.F90 \
+	ice.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	limdia.F90 \
+	limdyn.F90 \
+	limflx.F90 \
+	limrst.F90 \
+	limthd.F90 \
+	limtrp.F90 \
+	limwri.F90 \
+	obccli.F90 \
+	obcdyn.F90 \
+	obctra.F90 \
+	obcvol.F90 \
+	obc_oce.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	solfet.F90 \
+	solisl.F90 \
+	solpcg.F90 \
+	solsor.F90 \
+	sol_oce.F90 \
+	taumod.F90 \
+	traadv_muscl2.F90 \
+	traadv_muscl.F90 \
+	traadv_tvd.F90 \
+	trabbl.F90 \
+	tradmp.F90 \
+	traqsr.F90 \
+	trazdf_exp.F90 \
+	trddyn_oce.F90 \
+	trdtra_oce.F90 \
+	zdfddm.F90 \
+	zdfmxl.F90 \
+	zdftke.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cla_dynspg.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(diahth.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(diaspr.o) \
+	$(MODEL_LIB)(diawri.o) \
+	$(MODEL_LIB)(dom_ice.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(dynspg_fsc.o) \
+	$(MODEL_LIB)(dynspg_fsc_atsk.o) \
+	$(MODEL_LIB)(dynzdf_exp.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(flo4rk.o) \
+	$(MODEL_LIB)(floblk.o) \
+	$(MODEL_LIB)(flodom.o) \
+	$(MODEL_LIB)(flowri.o) \
+	$(MODEL_LIB)(flo_oce.o) \
+	$(MODEL_LIB)(flxblk.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(iceini.o) \
+	$(MODEL_LIB)(ice.o) \
+	$(MODEL_LIB)(ice_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)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(limdia.o) \
+	$(MODEL_LIB)(limdyn.o) \
+	$(MODEL_LIB)(limflx.o) \
+	$(MODEL_LIB)(limrst.o) \
+	$(MODEL_LIB)(limthd.o) \
+	$(MODEL_LIB)(limtrp.o) \
+	$(MODEL_LIB)(limwri.o) \
+	$(MODEL_LIB)(obccli.o) \
+	$(MODEL_LIB)(obcdyn.o) \
+	$(MODEL_LIB)(obctra.o) \
+	$(MODEL_LIB)(obcvol.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(solfet.o) \
+	$(MODEL_LIB)(solisl.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(traadv_muscl2.o) \
+	$(MODEL_LIB)(traadv_muscl.o) \
+	$(MODEL_LIB)(traadv_tvd.o) \
+	$(MODEL_LIB)(trabbl.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	$(MODEL_LIB)(traqsr.o) \
+	$(MODEL_LIB)(trazdf_exp.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdftke.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	cla.F90 \
+	cla_div.F90 \
+	closea.F90 \
+	cpl.F90 \
+	daymod.F90 \
+	diafwb.F90 \
+	diagap.F90 \
+	diahdy.F90 \
+	diahth.F90 \
+	diaspr.F90 \
+	diawri.F90 \
+	divcur.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	dynhpg.F90 \
+	dynhpg_atsk.F90 \
+	dynkeg.F90 \
+	dynldf_bilapg.F90 \
+	dynldf_bilap.F90 \
+	dynldf_iso.F90 \
+	dynldf_lap.F90 \
+	dynnxt.F90 \
+	dynspg_fsc.F90 \
+	dynspg_fsc_atsk.F90 \
+	dynspg_rl.F90 \
+	dynvor.F90 \
+	dynzad.F90 \
+	dynzdf_exp.F90 \
+	dynzdf_imp.F90 \
+	dynzdf_imp_atsk.F90 \
+	dynzdf_iso.F90 \
+	eosbn2.F90 \
+	floats.F90 \
+	flo_oce.F90 \
+	flxfwb.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	icestp.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldfeiv.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	obcdta.F90 \
+	obcrad.F90 \
+	obcrst.F90 \
+	obcspg.F90 \
+	obc_par.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	ptr.F90 \
+	restart.F90 \
+	stpctl.F90 \
+	taumod.F90 \
+	traadv_cen2.F90 \
+	traadv_ctl.F90 \
+	traadv_muscl2.F90 \
+	traadv_muscl.F90 \
+	traadv_tvd.F90 \
+	trabbc.F90 \
+	trabbl.F90 \
+	tradmp.F90 \
+	traldf_bilapg.F90 \
+	traldf_bilap.F90 \
+	traldf_iso.F90 \
+	traldf_iso_zps.F90 \
+	traldf_lap.F90 \
+	tranpc.F90 \
+	tranxt.F90 \
+	traqsr.F90 \
+	trasbc.F90 \
+	trazdf_exp.F90 \
+	trazdf_imp.F90 \
+	trazdf_iso.F90 \
+	trazdf_iso_vopt.F90 \
+	trddyn.F90 \
+	trdmld.F90 \
+	trdtra.F90 \
+	wzvmod.F90 \
+	zdfbfr.F90 \
+	zdfddm.F90 \
+	zdfevd.F90 \
+	zdfmxl.F90 \
+	zdfric.F90 \
+	zdftke.F90 \
+	zdf_oce.F90 \
+	zpshde.F90 \
+	$(MODEL_LIB)(cla.o) \
+	$(MODEL_LIB)(cla_div.o) \
+	$(MODEL_LIB)(closea.o) \
+	$(MODEL_LIB)(cpl.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(diafwb.o) \
+	$(MODEL_LIB)(diagap.o) \
+	$(MODEL_LIB)(diahdy.o) \
+	$(MODEL_LIB)(diahth.o) \
+	$(MODEL_LIB)(diaspr.o) \
+	$(MODEL_LIB)(diawri.o) \
+	$(MODEL_LIB)(divcur.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(dynhpg.o) \
+	$(MODEL_LIB)(dynhpg_atsk.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)(dynnxt.o) \
+	$(MODEL_LIB)(dynspg_fsc.o) \
+	$(MODEL_LIB)(dynspg_fsc_atsk.o) \
+	$(MODEL_LIB)(dynspg_rl.o) \
+	$(MODEL_LIB)(dynvor.o) \
+	$(MODEL_LIB)(dynzad.o) \
+	$(MODEL_LIB)(dynzdf_exp.o) \
+	$(MODEL_LIB)(dynzdf_imp.o) \
+	$(MODEL_LIB)(dynzdf_imp_atsk.o) \
+	$(MODEL_LIB)(dynzdf_iso.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(floats.o) \
+	$(MODEL_LIB)(flo_oce.o) \
+	$(MODEL_LIB)(flxfwb.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(icestp.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldfeiv.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(obcdta.o) \
+	$(MODEL_LIB)(obcrad.o) \
+	$(MODEL_LIB)(obcrst.o) \
+	$(MODEL_LIB)(obcspg.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(ptr.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(stpctl.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(traadv_cen2.o) \
+	$(MODEL_LIB)(traadv_ctl.o) \
+	$(MODEL_LIB)(traadv_muscl2.o) \
+	$(MODEL_LIB)(traadv_muscl.o) \
+	$(MODEL_LIB)(traadv_tvd.o) \
+	$(MODEL_LIB)(trabbc.o) \
+	$(MODEL_LIB)(trabbl.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	$(MODEL_LIB)(traldf_bilapg.o) \
+	$(MODEL_LIB)(traldf_bilap.o) \
+	$(MODEL_LIB)(traldf_iso.o) \
+	$(MODEL_LIB)(traldf_iso_zps.o) \
+	$(MODEL_LIB)(traldf_lap.o) \
+	$(MODEL_LIB)(tranpc.o) \
+	$(MODEL_LIB)(tranxt.o) \
+	$(MODEL_LIB)(traqsr.o) \
+	$(MODEL_LIB)(trasbc.o) \
+	$(MODEL_LIB)(trazdf_exp.o) \
+	$(MODEL_LIB)(trazdf_imp.o) \
+	$(MODEL_LIB)(trazdf_iso.o) \
+	$(MODEL_LIB)(trazdf_iso_vopt.o) \
+	$(MODEL_LIB)(trddyn.o) \
+	$(MODEL_LIB)(trdmld.o) \
+	$(MODEL_LIB)(trdtra.o) \
+	$(MODEL_LIB)(wzvmod.o) \
+	$(MODEL_LIB)(zdfbfr.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfevd.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdfric.o) \
+	$(MODEL_LIB)(zdftke.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	$(MODEL_LIB)(zpshde.o) \
+	domzgr_substitute.h90 \
+	zdfddm_substitute.h90 \
+	KEY_CPP \
+	step.F90
+$(MODEL_LIB)(stpctl.o) :	\
+	daymod.F90 \
+	diahth.F90 \
+	dianam.F90 \
+	diaspr.F90 \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obc_oce.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	sol_oce.F90 \
+	taumod.F90 \
+	zdfddm.F90 \
+	zdfmxl.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(diahth.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(diaspr.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(ice_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)(obc_oce.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	diawri.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	solisl.F90 \
+	sol_oce.F90 \
+	$(MODEL_LIB)(diawri.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)(solisl.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	stpctl.F90
+$(MODEL_LIB)(taumod.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.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) \
+	$(MODEL_LIB)(phycst.o) \
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(phycst.o) \
+	tau_coupled.h90 \
+	tau_coupled_ice.h90 \
+	tau_forced_daily.h90 \
+	tau_forced_monthly.h90 \
+	tau_forced_monthly_fdir.h90 \
+	KEY_CPP \
+	taumod.F90
+$(MODEL_LIB)(thd_ice.o) :	\
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	par_ice.F90 \
+	$(MODEL_LIB)(par_ice.o) \
+	thd_ice.F90
+$(MODEL_LIB)(traadv_cen2.o) :	\
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	trdtra_oce.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.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)(trdtra_oce.o) \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	trabbl.F90 \
+	trdtra_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(trabbl.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	oce.F90 \
+	$(MODEL_LIB)(oce.o) \
+	domzgr_substitute.h90 \
+	traadv_cen2_atsk.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	traadv_cen2.F90
+$(MODEL_LIB)(traadv_ctl.o) :	\
+	dom_oce.F90 \
+	dynspg_fsc.F90 \
+	dynspg_fsc_atsk.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	trabbl.F90 \
+	trdtra_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_fsc.o) \
+	$(MODEL_LIB)(dynspg_fsc_atsk.o) \
+	$(MODEL_LIB)(in_out_manager.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)(trabbl.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	traadv_muscl2.F90 \
+	traadv_muscl.F90 \
+	traadv_tvd.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(traadv_muscl2.o) \
+	$(MODEL_LIB)(traadv_muscl.o) \
+	$(MODEL_LIB)(traadv_tvd.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	traadv_ctl.F90
+$(MODEL_LIB)(traadv_muscl2.o) :	\
+	cla_dynspg.F90 \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obcdyn.F90 \
+	obcvol.F90 \
+	obc_oce.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	solfet.F90 \
+	solpcg.F90 \
+	solsor.F90 \
+	sol_oce.F90 \
+	trddyn_oce.F90 \
+	trdtra_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(cla_dynspg.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obcdyn.o) \
+	$(MODEL_LIB)(obcvol.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(solfet.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	dynspg_fsc.F90 \
+	dynspg_fsc_atsk.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	trabbl.F90 \
+	trdtra_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_fsc.o) \
+	$(MODEL_LIB)(dynspg_fsc_atsk.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(trabbl.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	traadv_muscl2.F90
+$(MODEL_LIB)(traadv_muscl.o) :	\
+	cla_dynspg.F90 \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obcdyn.F90 \
+	obcvol.F90 \
+	obc_oce.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	solfet.F90 \
+	solpcg.F90 \
+	solsor.F90 \
+	sol_oce.F90 \
+	trddyn_oce.F90 \
+	trdtra_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(cla_dynspg.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obcdyn.o) \
+	$(MODEL_LIB)(obcvol.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(solfet.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	dynspg_fsc.F90 \
+	dynspg_fsc_atsk.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	trabbl.F90 \
+	trdtra_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_fsc.o) \
+	$(MODEL_LIB)(dynspg_fsc_atsk.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(trabbl.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	traadv_muscl.F90
+$(MODEL_LIB)(traadv_tvd.o) :	\
+	cla_dynspg.F90 \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obcdyn.F90 \
+	obcvol.F90 \
+	obc_oce.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	solfet.F90 \
+	solpcg.F90 \
+	solsor.F90 \
+	sol_oce.F90 \
+	trddyn_oce.F90 \
+	trdtra_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(cla_dynspg.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obcdyn.o) \
+	$(MODEL_LIB)(obcvol.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(solfet.o) \
+	$(MODEL_LIB)(solpcg.o) \
+	$(MODEL_LIB)(solsor.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	dynspg_fsc.F90 \
+	dynspg_fsc_atsk.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	trabbl.F90 \
+	trdtra_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynspg_fsc.o) \
+	$(MODEL_LIB)(dynspg_fsc_atsk.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(trabbl.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	traadv_tvd.F90
+$(MODEL_LIB)(trabbc.o) :	\
+	in_out_manager.F90 \
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(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 \
+	oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	domzgr_substitute.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	trabbc.F90
+$(MODEL_LIB)(trabbl.o) :	\
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	trdtra_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	eosbn2.F90 \
+	flxrnf.F90 \
+	lbclnk.F90 \
+	ocfzpt.F90 \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	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 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(daymod.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) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtatem.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	phycst.F90 \
+	trdtra_oce.F90 \
+	zdfmxl.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	tradmp.F90
+$(MODEL_LIB)(traldf_bilapg.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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 \
+	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)(zdfmxl.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	trdtra_oce.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)(oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	KEY_CPP \
+	traldf_bilapg.F90
+$(MODEL_LIB)(traldf_bilap.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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 \
+	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)(zdfmxl.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	trdtra_oce.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)(oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	traldf_bilap.F90
+$(MODEL_LIB)(traldf_iso.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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 \
+	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)(zdfmxl.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	trdtra_oce.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)(oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	traldf_iso.F90
+$(MODEL_LIB)(traldf_iso_zps.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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 \
+	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)(zdfmxl.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	trdtra_oce.F90 \
+	zdf_oce.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)(oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	traldf_iso_zps.F90
+$(MODEL_LIB)(traldf_lap.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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)(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 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	trdtra_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	domzgr_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 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	zdfddm.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.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)(zdfddm.o) \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	oce.F90 \
+	trdtra_oce.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)(trdtra_oce.o) \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	tranpc.F90
+$(MODEL_LIB)(tranxt.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	obc_oce.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.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) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	obctra.F90 \
+	oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(obctra.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	tranxt.F90
+$(MODEL_LIB)(traqsr.o) :	\
+	blk_oce.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	tradmp.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	phycst.F90 \
+	trdtra_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	traqsr.F90
+$(MODEL_LIB)(trasbc.o) :	\
+	blk_oce.F90 \
+	cpl_oce.F90 \
+	daymod.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtasst.F90 \
+	dtatem.F90 \
+	flxmod.F90 \
+	flxrnf.F90 \
+	flx_oce.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_print.f90 \
+	ocesbc.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	tradmp.F90 \
+	trdtra_oce.F90 \
+	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(cpl_oce.o) \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtasst.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(flxmod.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(flx_oce.o) \
+	$(MODEL_LIB)(ice_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	ocesbc.F90 \
+	oce.F90 \
+	phycst.F90 \
+	traqsr.F90 \
+	trdtra_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(traqsr.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	trasbc.F90
+$(MODEL_LIB)(trazdf_exp.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	zdf_oce.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)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	trdtra_oce.F90 \
+	zdfddm.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	zdfddm_substitute.h90 \
+	KEY_CPP \
+	trazdf_exp.F90
+$(MODEL_LIB)(trazdf_imp.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	zdf_oce.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)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	trdtra_oce.F90 \
+	zdfddm.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	zdfddm_substitute.h90 \
+	zdf.matrixsolver.h90 \
+	KEY_CPP \
+	trazdf_imp.F90
+$(MODEL_LIB)(trazdf_iso.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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 \
+	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)(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)(zdfmxl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	trdtra_oce.F90 \
+	zdfddm.F90 \
+	zdf_oce.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)(oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	zdfddm_substitute.h90 \
+	zdf.matrixsolver.h90 \
+	KEY_CPP \
+	trazdf_iso.F90
+$(MODEL_LIB)(trazdf_iso_vopt.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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 \
+	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)(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)(zdfmxl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	trdtra_oce.F90 \
+	zdfddm.F90 \
+	zdf_oce.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)(oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	zdfddm_substitute.h90 \
+	KEY_CPP \
+	trazdf_iso_vopt.F90
+$(MODEL_LIB)(trddyn.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	obc_par.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	zdfddm.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	obc_oce.F90 \
+	oce.F90 \
+	phycst.F90 \
+	sol_oce.F90 \
+	trddyn_oce.F90 \
+	trdtra_oce.F90 \
+	zdf_oce.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)(obc_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	trddyn.F90
+$(MODEL_LIB)(trddyn_oce.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	trddyn_oce.F90
+$(MODEL_LIB)(trdmld.o) :	\
+	daymod.F90 \
+	diahth.F90 \
+	dianam.F90 \
+	diaspr.F90 \
+	dom_oce.F90 \
+	flxrnf.F90 \
+	ice_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	ocesbc.F90 \
+	oce.F90 \
+	ocfzpt.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	sol_oce.F90 \
+	taumod.F90 \
+	zdfddm.F90 \
+	zdfmxl.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(diahth.o) \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(diaspr.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(flxrnf.o) \
+	$(MODEL_LIB)(ice_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)(ocesbc.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(ocfzpt.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	daymod.F90 \
+	dianam.F90 \
+	diawri.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	oce.F90 \
+	phycst.F90 \
+	trdtra_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)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	ldftra_substitute.h90 \
+	trdmld_ncinit.h90 \
+	trdmld_ncwrite.h90 \
+	zdfddm_substitute.h90 \
+	../../../lib/libioipsl.a \
+	KEY_CPP \
+	trdmld.F90
+$(MODEL_LIB)(trdtra.o) :	\
+	dom_oce.F90 \
+	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)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	oce.F90 \
+	trddyn_oce.F90 \
+	trdtra_oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.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)(trddyn_oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	trdtra.F90
+$(MODEL_LIB)(trdtra_oce.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	trdtra_oce.F90
+$(MODEL_LIB)(wzvmod.o) :	\
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	wzvmod.F90
+$(MODEL_LIB)(zdfbfr.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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)(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 \
+	oce.F90 \
+	zdf_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) \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	zdfbfr.F90
+$(MODEL_LIB)(zdfddm.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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)(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 \
+	oce.F90 \
+	zdf_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) \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	zdfddm.F90
+$(MODEL_LIB)(zdfevd.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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)(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 \
+	oce.F90 \
+	zdf_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) \
+	zdfevd.F90
+$(MODEL_LIB)(zdfini.o) :	\
+	dom_oce.F90 \
+	dynzdf_exp.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	ldfdyn_oce.F90 \
+	ldftra_oce.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	trazdf_exp.F90 \
+	trdtra_oce.F90 \
+	zdfmxl.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynzdf_exp.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.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)(taumod.o) \
+	$(MODEL_LIB)(trazdf_exp.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	in_out_manager.F90 \
+	ldfdyn_oce.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	par_oce.F90 \
+	tranpc.F90 \
+	zdfddm.F90 \
+	zdfevd.F90 \
+	zdfric.F90 \
+	zdftke.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(ldfdyn_oce.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(tranpc.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfevd.o) \
+	$(MODEL_LIB)(zdfric.o) \
+	$(MODEL_LIB)(zdftke.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	zdfini.F90
+$(MODEL_LIB)(zdfmxl.o) :	\
+	lib_print.f90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	oce.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	zdfmxl.F90
+$(MODEL_LIB)(zdfric.o) :	\
+	dom_oce.F90 \
+	in_out_manager.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)(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 \
+	oce.F90 \
+	zdf_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) \
+	domzgr_substitute.h90 \
+	KEY_CPP \
+	zdfric.F90
+$(MODEL_LIB)(zdftke.o) :	\
+	daymod.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	trddyn_oce.F90 \
+	trdtra_oce.F90 \
+	zdfddm.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(daymod.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.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)(taumod.o) \
+	$(MODEL_LIB)(trddyn_oce.o) \
+	$(MODEL_LIB)(trdtra_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	dom_oce.F90 \
+	dynzdf_exp.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	oce.F90 \
+	phycst.F90 \
+	taumod.F90 \
+	trazdf_exp.F90 \
+	zdf_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dynzdf_exp.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(taumod.o) \
+	$(MODEL_LIB)(trazdf_exp.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	oce.F90 \
+	$(MODEL_LIB)(oce.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	zdftke_atsk.h90 \
+	KEY_CPP \
+	zdftke.F90
+$(MODEL_LIB)(zdf_oce.o) :	\
+	par_kind.F90 \
+	$(MODEL_LIB)(par_kind.o) \
+	par_oce.F90 \
+	$(MODEL_LIB)(par_oce.o) \
+	zdf_oce.F90
+$(MODEL_LIB)(zpshde.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	zdfddm.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.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)(zdfddm.o) \
+	dom_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	lbclnk.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	phycst.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)(par_kind.o) \
+	$(MODEL_LIB)(phycst.o) \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	KEY_CPP \
+	zpshde.F90
+# key changing control
+key: 
+	@echo CHANGEMENT de CLES CPP oui/non ?
+	-@if [ "`cat KEY_CPP`" != "$(P_P)" ] ; then \
+		echo CPP options changed ; echo "$(P_P)" > KEY_CPP ; fi 
+
+keyverif:
+	@echo VERIFICATION DES CLES
+	@echo CLES UTILISEES  : 
+	@for v in ` echo $(P_P) | sed  -e s/-Wp,-D//g` ; \
+	do \
+	echo $$v ;\
+        w=`echo $$v | cut -c1-3` ; \
+        if [ $$w = `echo "key"` ] ; then \
+        r=n ; \
+        echo " $(KEY_LIST) " | (grep $$v >/dev/null 2>&1) || r=o ; \
+           if [ $$r != "n" ] ; then \
+              echo "UNKNOWN KEY" ;\
+              false ;  \
+              exit ;  \
+           fi \
+        fi \
+	done
+# Checking the number of routines
+src_file_list: 
+	@echo CHECKING THE NUMBER AND NAMES OF SOURCE FILES 
+	@\$(RM) `ls | fgrep -v -f .patron` 
+	@if [ -d ../OCE_SRC ] ; then \
+	    echo "   use OCE_SRC files"            ; \
+	    ln -sf ../OCE_SRC/*.[Ffh]90          . ; \
+	    ln -sf ../OCE_SRC/DYN/*.[Ffh]90      . ; \
+	    ln -sf ../OCE_SRC/TRA/*.[Ffh]90      . ; \
+	    ln -sf ../OCE_SRC/TRD/*.[Ffh]90      . ; \
+	    ln -sf ../OCE_SRC/DIA/*.[Ffh]90      . ; \
+	    ln -sf ../OCE_SRC/DOM/*.[Ffh]90      . ; \
+	    ln -sf ../OCE_SRC/OBC/*.[Ffh]90      . ; \
+	    ln -sf ../OCE_SRC/FLO/*.[Ffh]90      . ; \
+	    ln -sf ../OCE_SRC/LDF/*.[Ffh]90      . ; \
+	    ln -sf ../OCE_SRC/ZDF/*.[Ffh]90      . ; \
+	    ln -sf ../OCE_SRC/SOL/*.[Ffh]90      . ; \
+	    ln -sf ../OCE_SRC/DTA/*.[Ffh]90      . ; \
+	    ln -sf ../OCE_SRC/SBC/*.[Ffh]90      . ; \
+  fi 
+	@if [ -d ../ICE_SRC ] ; then \
+	    echo "   use ICE_SRC files"              ; \
+      ln -sf ../ICE_SRC/*.[Ffh]90            . ; \
+  fi 
+	@if [ -d ../TRC_SRC ] && [ ! -d ../SRC_OFFLINE_TRC ] ; then  \
+	    echo "   use TRC_SRC files"              ; \
+      \$(RM) *.passivetrc.h ; \
+      ln -sf ../TRC_SRC/*.[Ffh]          . ; ln -sf ../TRC_SRC/SMS/*.[Ffh]     . ; \
+      fi 
+	@if [ -d ../SRC_OFFLINE_TRC ] ; then \
+	    echo "   use TRC_SRC and SRC_OFFLINE_TRC files"              ; \
+      ln -sf ../TRC_SRC/*.[Ffh] ../TRC_SRC/SMS/*.[Ffh] . ; \
+      ln -sf ../SRC_OFFLINE_TRC/*.[Ffh] . ;  \
+      fi 
+	@\$(RM) tmplist
+	@ls -1 | fgrep -v -f .patron  >tmplist
+	@cmp tmplist SRC_FILE_LIST.temp || { echo some routines have been added or suppressed ; \
+	sdiff -s tmplist SRC_FILE_LIST.temp ; cp tmplist SRC_FILE_LIST.temp ; \
+	\$(RM) model.o \$(MODEL_LIB) \$(SXMODEL_LIB) \$(EXEC_BIN) ; \
+	echo "Rebuilding the AA_make files" ; \
+	cd ..  ; ../UTIL/fait_AA_make ; echo " " ; \
+	echo "THE ins_make COMMAND in modipsl/util MUST BE RERUN PLEASE DO SO BEFORE gmake" ; \
+	echo "========================================== " ; \
+	../../util/ins_make -t sxnec ; echo " " ;  false ; exit ; }
Index: /trunk/CONFIG/ORCA2_LIM/scripts/BB_make.ldef
===================================================================
--- /trunk/CONFIG/ORCA2_LIM/scripts/BB_make.ldef	(revision 8)
+++ /trunk/CONFIG/ORCA2_LIM/scripts/BB_make.ldef	(revision 8)
@@ -0,0 +1,29 @@
+#---------------------------------------------------------------------
+#- OPA SYSTEM : Ocean model + Sea Ice Model   (BB_mak.ldef in scripts)
+#---------------------------------------------------------------------
+SHELL = /bin/sh
+#-Q- t3e     #--- Please use gmake instead of make
+#-Q- fjvpp   #--- Please use gmake instead of make
+#---------------------------------------------------------------------
+LIBDIR = ../../../lib
+MODDIR = $(LIBDIR)
+MODEL_LIB = $(LIBDIR)/oce/libopa.a
+IOIPSL_LIB = $(LIBDIR)/libioipsl.a
+#-Q- sxnec  IOIPSL_LIB = $(LIBDIR)/libsxioipsl.a
+SXMODEL_LIB = $(MODEL_LIB)
+#-Q- sxnec  SXMODEL_LIB = $(LIBDIR)/oce/libsxopa.a
+OASISMPI2_LIB = 
+LIBMPI  =
+LIBMP   =
+EXEC_BIN = ../../../bin/opa
+#---------------------------------------------------------------------
+#-
+#- Key options for OPA ocean model + LIM sea ice model : ORCA_R2 - FORCED (CLIO)
+#-
+#-Q- sxnec  ## ORCA2-LIM standard
+#-Q- sxnec  P_P = -Wp,-Dkey_partial_steps -Wp,-Dkey_trabbl_dif -Wp,-Dkey_vectopt_loop -Wp,-Dkey_vectopt_memory -Wp,-Dkey_orca_r2 -Wp,-Dkey_ice_lim -Wp,-Dkey_lim_fdd -Wp,-Dkey_dynspg_fsc -Wp,-Dkey_diaeiv -Wp,-Dkey_ldfslp -Wp,-Dkey_traldf_c2d -Wp,-Dkey_traldf_eiv -Wp,-Dkey_dynldf_c3d -Wp,-Dkey_dtatem -Wp,-Dkey_dtasal -Wp,-Dkey_tau_monthly -Wp,-Dkey_flx_bulk_monthly -Wp,-Dkey_diagap -Wp,-Dkey_tradmp -Wp,-Dkey_trabbc -Wp,-Dkey_zdftke -Wp,-Dkey_zdfddm 
+#-
+#-Q- sxnec  ## ORCA2-LIM autotasking
+#-Q- sxnec  ## P_P = -Wp,-Dkey_autotasking -Wp,-Dkey_partial_steps -Wp,-Dkey_trabbl_dif -Wp,-Dkey_vectopt_loop -Wp,-Dkey_vectopt_memory -Wp,-Dkey_orca_r2 -Wp,-Dkey_ice_lim -Wp,-Dkey_lim_fdd -Wp,-Dkey_dynspg_fsc -Wp,-Dkey_diaeiv -Wp,-Dkey_ldfslp -Wp,-Dkey_traldf_c2d -Wp,-Dkey_traldf_eiv -Wp,-Dkey_dynldf_c3d -Wp,-Dkey_dtatem -Wp,-Dkey_dtasal -Wp,-Dkey_tau_monthly -Wp,-Dkey_flx_bulk_monthly -Wp,-Dkey_diagap -Wp,-Dkey_tradmp -Wp,-Dkey_trabbc -Wp,-Dkey_zdftke -Wp,-Dkey_zdfddm 
+#-
+
Index: /trunk/UTIL/fait_AA_make
===================================================================
--- /trunk/UTIL/fait_AA_make	(revision 8)
+++ /trunk/UTIL/fait_AA_make	(revision 8)
@@ -0,0 +1,403 @@
+#!/bin/ksh
+#set -xv
+#-
+echo "This script must be run while in the modipsl/modeles/OPA directory"
+cd WORK
+pwd
+#MODEL_LIB=../../../lib/libopa.a
+#MODEL_LIB=`grep MODEL_LIB AA_make.ldef | sed 's/ //g' | sed 's/MODEL_LIB=//g' `
+liste_cle=$(egrep '^# *if[!( &]*def|^# *elif' *.[Fh] *.[Fh]90 | grep key_ | sed 's/||/\
+/' | sed 's/\&\&/\
+/' | sed 's/^.*key_/key_/' | sed 's/ *[) ] *$//' | sort -u )
+#-
+#-
+#- 3) Ecriture du AA_make
+#-
+#- enteteFait_AA_make     
+#-
+cat > tampon <<end
+#
+.SUFFIXES: .f90 .F90 .F
+#
+# Target
+all: 		\$(EXEC_BIN)
+		@cp SRC_FILE_LIST.temp SRC_FILE_LIST
+		@echo OPA model is OK
+# cleaning objects, libraries and executables
+clean:
+		\$(RM) model.o \$(MODDIR)/oce/*.mod \$(MODEL_LIB) \$(SXMODEL_LIB) \$(EXEC_BIN)
+		@echo OPA model \(.o .mod libraries and executables are removed\)
+# dependancies
+\$(EXEC_BIN) :	libioipsl key keyverif src_file_list \$(MODEL_LIB) \$(IOIPSL_LIB) model.o
+		\$(F_L) \$(L_X) -o \$(EXEC_BIN) model.o \$(SXMODEL_LIB) \$(OASISMPI2_LIB) \$(IOIPSL_LIB) \$(NCDF_LIB) \$(LIBMPI) \$(LIBMP)
+
+libioipsl :
+	(cd ../../IOIPSL/src ; \$(M_K) -f Makefile )
+
+# main program
+model.o :	model.f90
+		@\$(F_C) \$(F_O) -c model.f90
+
+# if the make script is stopped, one doesn't destroy library
+.PRECIOUS : \$(MODEL_LIB)
+#-Q- sxnec .PRECIOUS : \$(SXMODEL_LIB)
+
+# library dependancies
+\$(MODEL_LIB):	\$(LIB_OBJ)
+		@echo
+		@echo La bibliotheque est a jour
+		@echo
+
+# Rules
+.DEFAULTS:
+
+# rules for the .f90 files
+.f90.a :           
+		@\$(F_C) \$(P_P) \$(F_O) \\
+#-Q- fjvpp		-Z \$*.L \\
+#-Q- sxnec		-R2 \\
+#-Q- aix		-qsource \\
+		\$*.f90 || { mv \$(PREF)\$*.L \$(TMP) ; false ; exit ; }
+#-Q- sxnec		@\$(A_X) \$(SXMODEL_LIB) \$*.o  > /dev/null
+		@\$(A_C) \$(MODEL_LIB) \$*.o  > /dev/null
+		@\$(RM) \$*.[of]
+		@if [ -f \$*.mod ] ; then mv \$*.mod \$(MODDIR)/oce ; fi
+#-Q- aix		@mv \$(PREF)\$*.lst \$(PREF)\$*.L
+#-Q- linux		@mv \$(PREF)\$*.lst \$(PREF)\$*.L
+		@mv \$(PREF)\$*.L \$(TMP)
+
+# rules for the .F90 files
+.F90.a :           
+		@\$(F_C) \$(P_P) \$(F_O) \\
+#-Q- fjvpp		-Z \$*.L \\
+#-Q- sxnec		-R2 \\
+#-Q- aix		-qsource \\
+		\$*.F90 || { mv \$(PREF)\$*.L \$(TMP) ; false ; exit ; }
+#-Q- sxnec		@\$(A_X) \$(SXMODEL_LIB) \$*.o  > /dev/null
+		@\$(A_C) \$(MODEL_LIB) \$*.o  > /dev/null
+		@\$(RM) \$*.[of]
+		@if [ -f \$*.mod ] ; then mv \$*.mod \$(MODDIR)/oce ; fi
+#-Q- aix		@mv \$(PREF)\$*.lst \$(PREF)\$*.L
+#-Q- linux		@mv \$(PREF)\$*.lst \$(PREF)\$*.L
+		@mv \$(PREF)\$*.L \$(TMP)
+
+# rules for the .F files
+.F.a :           
+		@\$(F_C) \$(P_P) \$(F_O) \\
+#-Q- fjvpp		-Z \$*.L \\
+#-Q- sxnec		-R2 \\
+#-Q- aix		-qsource \\
+		\$*.F || { mv \$(PREF)\$*.L \$(TMP) ; false ; exit ; }
+#-Q- sxnec		@\$(A_X) \$(SXMODEL_LIB) \$*.o  > /dev/null
+		@\$(A_C) \$(MODEL_LIB) \$*.o  > /dev/null
+		@\$(RM) \$*.[of]
+		@if [ -f \$*.mod ] ; then mv \$*.mod \$(MODDIR)/oce ; fi
+#-Q- aix		@mv \$(PREF)\$*.lst \$(PREF)\$*.L
+#-Q- linux		@mv \$(PREF)\$*.lst \$(PREF)\$*.L
+		@mv \$(PREF)\$*.L \$(TMP)
+
+# rules for the library from the .f files 
+.f.a : 		
+		@\$(F_C) \$(F_O) \\
+#-Q- fjvpp		-Z \$*.L \\
+#-Q- sxnec		-R2 \\
+#-Q- aix		-qsource \\
+		\$*.f|| { mv \$*.L \$(TMP) ; false ; exit ; }
+#-Q- sxnec		@\$(A_X) \$(SXMODEL_LIB) \$*.o  > /dev/null
+		@\$(A_C) \$(MODEL_LIB) \$*.o  > /dev/null
+		@\$(RM) -f \$*.o
+#-Q- aix		@mv \$(PREF)\$*.lst \$(PREF)\$*.L
+#-Q- linux	@mv \$(PREF)\$*.lst \$(PREF)\$*.L
+		@mv \$*.L \$(TMP)
+#
+end
+#-
+#- dependances
+#-
+exec 1> AA_make
+MAIN="model"
+echo '# $Header$'
+echo '# some variables'
+echo 'TMP = ../../../tmp'
+echo 'L_X = $(L_O) $(L_C) -ftrace'
+echo '#-Q- aix   L_X = $(L_O) $(L_C) '
+echo '#-Q- sxnec  # Compiler options for the ORCA model   -   std'
+echo '#-Q- sxnec  F_O = -ew -sx5 -ftrace -C vsafe -Wf"-init stack=nan" -Wl"-f nan" -Wf"-P nh" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce'
+echo '#-Q- sxnec  # Compiler options for the ORCA model   -   auto tasking'
+echo '#-Q- sxnec  #F_O = -ew -sx5 -ftrace -C vopt -Wf"-P nh" -P auto -Wf,-fopp par res=whole -Wf"-init stack=nan" -Wl"-f nan" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce'
+echo '#-Q- sxnec  #L_X = -ew -sx5 -P auto -ftrace'
+
+echo '#-Q- linux  # Compiler options for the ORCA model'
+echo '#-Q- linux  F_O = -Mlist -O2 -byteswapio -r8  -module $(MODDIR)'
+echo '#-Q- aix    # Compiler options for the ORCA model (aix version)'
+echo '#-Q- aix    F_O =  -qrealsize=8 -qsave -qsuffix=f=f90 -qsuffix=cpp=F90 -qsource -I$(MODDIR)/oce -I $(MODDIR) -I $(IOIPSL_MOD) -q64 -O4 -qlargepage -qmaxmem=-1 -brename:.flush,.flush_ -brename:.mpi_send,.mpi_bsend'
+
+echo 'PREF='
+echo '#-Q- sxnec	PREF=i.'
+echo ''
+# Write the cpp key list with one key by line
+echo 'KEY_LIST = \c'
+for i in ${liste_cle}
+do
+ echo "\\"
+ echo "     $i \c"
+done
+
+echo ''
+echo '# .o file list in the library'
+echo 'LIB_OBJ = \c'
+#
+# allons chercher tous les .f du repertoire courant
+# construction de la liste des objets LIB_OBJ
+
+for i in `ls *.f`
+do
+  bn=`basename $i .f`
+  if [ "${bn}" != "${MAIN}" ] 
+  then 
+    echo "\\"
+    echo "		\$(MODEL_LIB)($bn.o)\c"
+  fi
+done
+
+# allons chercher tous les .f90 du repertoire courant
+# construction de la liste des objets LIB_OBJ
+# one dependancy by line
+for i in `ls *.f90`
+do
+  bn=`basename $i .f90`
+  if [ "${bn}" != "${MAIN}" ] 
+  then 
+    echo "\\"
+    echo "		\$(MODEL_LIB)($bn.o)\c"
+  fi
+done
+
+# allons chercher tous les .F90 du repertoire courant
+# construction de la liste des objets LIB_OBJ
+
+for i in `ls *.F90`
+do
+  bn=`basename $i .F90`
+  if [ "${bn}" != "${MAIN}" ] 
+  then 
+    echo "\\"
+    echo "		\$(MODEL_LIB)($bn.o)\c"
+  fi
+done
+
+# allons chercher tous les .F du repertoire courant
+# construction de la liste des objets LIB_OBJ
+
+for i in `ls *.F`
+do
+  bn=`basename $i .F`
+  if [ "${bn}" != "${MAIN}" ] 
+  then 
+    echo "\\"
+    echo "		\$(MODEL_LIB)($bn.o)\c"
+  fi
+ done
+
+echo ""
+
+cat tampon
+rm tampon
+
+#
+for fic in `ls *.f90 *.F90  *.F `
+do
+    if [ "${fic}" != "${MAIN}.[Ff]" ]
+    then
+	i=0
+	j=0
+	dep=""
+	inc=""
+	inc2=""
+	inc3=""
+	luse0=""
+	luse1=""
+	luse2=""
+	luse3=""
+# on cherche les includes type modele de glace LLN
+	for inc in `sed -n 's/^[  	]*[iI][nN][cC][lL][uU][dD][eE][ 	]*\(['\''"]\)\([^'\''"]*\)\1.*/\2/p' $fic | sort -u`
+	do
+	    dep="$dep\n$inc"
+	done
+
+# on cherche les includes (et les includes des includes et ainsi de suite pour 3 niveaux max)
+	for inc in `sed -n 's/^#[ 	]*[iI][nN][cC][lL][uU][dD][eE][ 	]*\(['\''"]\)\([^'\''"]*\)\1.*/\2/p' $fic | sort -u`
+	do
+	    j=1
+	    dep="$dep\n$inc"
+		for inc2 in `sed -n 's/^#[ 	]*[iI][nN][cC][lL][uU][dD][eE][ 	]*\(['\''"]\)\([^'\''"]*\)\1.*/\2/p' $inc | sort -u`
+		do
+		    dep="$dep\n$inc2"
+		    # on cherche les include  dans le fichier deja include (3eme niveau! balaise!)
+		    for inc3 in `sed -n 's/^#[  	]*[iI][nN][cC][lL][uU][dD][eE][ 	]*\(['\''"]\)\([^'\''"]*\)\1.*/\2/p' $inc2 | sort -u`
+		    do
+			dep="$dep\n$inc3"
+		    done
+		done
+	done
+
+# on cherche les USE dans les include
+	for inc in `sed -n 's/^#[ 	]*[iI][nN][cC][lL][uU][dD][eE][ 	]*\(['\''"]\)\([^'\''"]*\)\1.*/\2/p' $fic | sort -u`
+	do
+		for fuse0 in `sed -n 's/^[ 	]*[uU][sS][eE] [ 	]*\([^!,;]*\).*/\1/p' $inc | sort -u`
+		do
+	        if [ $fuse0 != "ioipsl" ] 
+                then
+		    lfuse0=$fuse0.f90
+		    [ -f $fuse0.F90 ] && lfuse0=$fuse0.F90
+		    luse0="$luse0\n$lfuse0\n\$(MODEL_LIB)($fuse0.o)"
+                fi
+		done
+
+# on cherche aussi les USE dans les include des include on les ajoute a luse0
+
+		for inc2 in `sed -n 's/^#[ 	]*[iI][nN][cC][lL][uU][dD][eE][ 	]*\(['\''"]\)\([^'\''"]*\)\1.*/\2/p' $inc | sort -u`
+		do
+		    for fuse0 in `sed -n 's/^[ 	]*[uU][sS][eE] [ 	]*\([^!,;]*\).*/\1/p' $inc2 | sort -u`
+		    do
+	            if [ $fuse0 != "ioipsl" ] 
+                    then
+		        lfuse0=$fuse0.f90
+		        [ -f $fuse0.F90 ] && lfuse0=$fuse0.F90
+		        luse0="$luse0\n$lfuse0\n\$(MODEL_LIB)($fuse0.o)"
+                    fi
+		    done
+  	        done
+	done
+
+# on cherche les USE (et les USE des USE et ainsi de suite pour 3 niveaux max)
+	for fuse1 in `sed -n 's/^[ 	]*[uU][sS][eE] [ 	]*\([^!,;]*\).*/\1/p' $fic | sort -u`
+	do
+	if [ $fuse1 != "ioipsl" ] 
+        then
+	    lfuse1=$fuse1.f90
+	    [ -f $fuse1.F90 ] && lfuse1=$fuse1.F90
+	    luse1="$luse1\n$lfuse1\n\$(MODEL_LIB)($fuse1.o)"
+		for fuse2 in `sed -n 's/^[ 	]*[uU][sS][eE] [ 	]*\([^!,;]*\).*/\1/p' $lfuse1 | sort -u`
+		do
+	        if [ $fuse2 != "ioipsl" ] 
+                then
+		    lfuse2=$fuse2.f90
+		    [ -f $fuse2.F90 ] && lfuse2=$fuse2.F90
+		    luse2="$luse2\n$lfuse2\n\$(MODEL_LIB)($fuse2.o)"
+		    # on cherche les USE  dans le fichier deja USE (3eme niveau! balaise!)
+		    for fuse3 in `sed -n 's/^#[  	]*[uU][sS][eE] [ 	]*\([^!,;]*\).*/\1/p' $lfuse2 | sort -u`
+		    do
+		    if [ $fuse3 != "ioipsl" ] 
+                    then
+			luse3="$luse3\n$lfuse3\n\$(MODEL_LIB)($fuse3.o)"
+                    fi		    
+                    done
+                fi
+		done
+        fi
+	done
+#- la variable dep contient l'ensemble des dependances mais peut-etre en double ou plus
+#-
+	for depele in `echo $luse3 | sort -u` `echo $luse2 | sort -u` `echo $luse1 | sort -u` `echo $luse0 | sort -u` `echo $dep | sort -u`
+	do
+	    [ ${i} = "0" ] && echo "\$(MODEL_LIB)(`echo $fic|awk -F. '{print $1}'`.o) :	\c"
+	    echo "\\"
+ 	    echo "	$depele \c"
+ 	    let i=i+1 # pour signaler le premier
+	done
+
+#-
+#- on ajoute la dependance avec la librairie ioipsl si besoin cad si le source contient use ioipsl
+        grep -i 'use *ioipsl' ${fic} >/dev/null && ( echo "\\" ; echo "	../../../lib/libioipsl.a \c")
+
+#- on ajoute la dependance avec KEY_CPP si il y a des include cpp
+	if [ ${j} != "0" ] 
+        then 
+	  echo "\\"
+	  echo "	KEY_CPP \c" 
+	fi
+#- on finit la dependance avec le fichier lui-meme et on ecrit les regles de creation
+	if [ ${i} != "0" ] 
+        then 
+	     echo "\\"
+       	     echo "	$fic"
+         fi
+    fi
+echo $fic done >/dev/tty
+done
+echo '# key changing control'
+echo "key: "
+echo "	@echo CHANGEMENT de CLES CPP oui/non ?"
+echo "	-@if [ \"\`cat KEY_CPP\`\" != \"\$(P_P)\" ] ; then \\"
+echo "		echo CPP options changed ; echo \"\$(P_P)\" > KEY_CPP ; fi "
+#-
+#
+# regle pour verifier les cles
+# EK novembre 2000
+# adaptation : ED + MAF decembre 2000
+#
+echo
+echo "keyverif:"
+echo '	@echo VERIFICATION DES CLES'
+echo '	@echo CLES UTILISEES  : '
+echo '	@for v in ` echo $(P_P) | sed  -e s/-Wp,-D//g` ; \'
+echo '	do \'
+echo '	echo $$v ;\'
+echo '        w=`echo $$v | cut -c1-3` ; \'
+echo '        if [ $$w = `echo "key"` ] ; then \'
+echo '        r=n ; \'
+echo '        echo " $(KEY_LIST) " | (grep $$v >/dev/null 2>&1) || r=o ; \'
+echo '           if [ $$r != "n" ] ; then \'
+echo '              echo "UNKNOWN KEY" ;\'
+echo '              false ;  \'
+echo '              exit ;  \'
+echo '           fi \'
+echo '        fi \'
+echo '	done'
+# Checking if the number of routines have been changed
+echo '# Checking the number of routines'
+echo "src_file_list: "
+echo '	@echo CHECKING THE NUMBER AND NAMES OF SOURCE FILES '
+echo '	@\$(RM) `ls | fgrep -v -f .patron` '
+echo '	@if [ -d ../OCE_SRC ] ; then \'
+echo '	    echo "   use OCE_SRC files"            ; \'
+echo '	    ln -sf ../OCE_SRC/*.[Ffh]90          . ; \'
+echo '	    ln -sf ../OCE_SRC/DYN/*.[Ffh]90      . ; \'
+echo '	    ln -sf ../OCE_SRC/TRA/*.[Ffh]90      . ; \'
+echo '	    ln -sf ../OCE_SRC/TRD/*.[Ffh]90      . ; \'
+echo '	    ln -sf ../OCE_SRC/DIA/*.[Ffh]90      . ; \'
+echo '	    ln -sf ../OCE_SRC/DOM/*.[Ffh]90      . ; \'
+echo '	    ln -sf ../OCE_SRC/OBC/*.[Ffh]90      . ; \'
+echo '	    ln -sf ../OCE_SRC/FLO/*.[Ffh]90      . ; \'
+echo '	    ln -sf ../OCE_SRC/LDF/*.[Ffh]90      . ; \'
+echo '	    ln -sf ../OCE_SRC/ZDF/*.[Ffh]90      . ; \'
+echo '	    ln -sf ../OCE_SRC/SOL/*.[Ffh]90      . ; \'
+echo '	    ln -sf ../OCE_SRC/DTA/*.[Ffh]90      . ; \'
+echo '	    ln -sf ../OCE_SRC/SBC/*.[Ffh]90      . ; \'
+echo '  fi '
+echo '	@if [ -d ../ICE_SRC ] ; then \'
+echo '	    echo "   use ICE_SRC files"              ; \'
+echo '      ln -sf ../ICE_SRC/*.[Ffh]90            . ; \'
+echo '  fi '
+echo '	@if [ -d ../TRC_SRC ] && [ ! -d ../SRC_OFFLINE_TRC ] ; then  \'
+echo '	    echo "   use TRC_SRC files"              ; \'
+echo '      \$(RM) *.passivetrc.h ; \'
+echo '      ln -sf ../TRC_SRC/*.[Ffh]          . ; ln -sf ../TRC_SRC/SMS/*.[Ffh]     . ; \'
+echo '      fi '
+echo '	@if [ -d ../SRC_OFFLINE_TRC ] ; then \'
+echo '	    echo "   use TRC_SRC and SRC_OFFLINE_TRC files"              ; \'
+echo '      ln -sf ../TRC_SRC/*.[Ffh] ../TRC_SRC/SMS/*.[Ffh] . ; \'
+echo '      ln -sf ../SRC_OFFLINE_TRC/*.[Ffh] . ;  \'
+echo '      fi '
+echo '	@\$(RM) tmplist'
+echo '	@ls -1 | fgrep -v -f .patron  >tmplist'
+echo '	@cmp tmplist SRC_FILE_LIST.temp || { echo some routines have been added or suppressed ; \'
+echo '	sdiff -s tmplist SRC_FILE_LIST.temp ; cp tmplist SRC_FILE_LIST.temp ; \'
+echo '	\$(RM) model.o \$(MODEL_LIB) \$(SXMODEL_LIB) \$(EXEC_BIN) ; \'
+echo '	echo "Rebuilding the AA_make files" ; \'
+echo '	cd ..  ; ../UTIL/fait_AA_make ; echo " " ; \'
+echo '	echo "THE ins_make COMMAND in modipsl/util MUST BE RERUN PLEASE DO SO BEFORE gmake" ; \'
+echo '	echo "========================================== " ; \'
+echo '	../../util/ins_make -t sxnec ; echo " " ;  false ; exit ; }'
+
