Index: LMDZ6/branches/Ocean_skin/libf/dynphy_lonlat/phylmd/ce0l.F90
===================================================================
--- LMDZ6/branches/Ocean_skin/libf/dynphy_lonlat/phylmd/ce0l.F90	(revision 3809)
+++ LMDZ6/branches/Ocean_skin/libf/dynphy_lonlat/phylmd/ce0l.F90	(revision 3810)
@@ -29,11 +29,16 @@
   USE iniphysiq_mod,  ONLY: iniphysiq
   USE mod_const_mpi,  ONLY: comm_lmdz
+
 #ifdef CPP_PARA
   USE mod_const_mpi,  ONLY: init_const_mpi
-  USE parallel_lmdz,  ONLY: init_parallel, mpi_rank, omp_rank, finalize_parallel
+  USE parallel_lmdz,  ONLY: init_parallel, mpi_rank, omp_rank, using_mpi
   USE bands,          ONLY: read_distrib, distrib_phys
   USE mod_hallo,      ONLY: init_mod_hallo
   USE mod_interface_dyn_phys, ONLY: init_interface_dyn_phys
-#endif
+#ifdef CPP_XIOS
+  USE xios, only: xios_finalize
+#endif
+#endif
+
   USE comconst_mod, ONLY: cpp, daysec, dtphys, dtvr, g, kappa, omeg, r, rad, &
                           pi, jmp1
@@ -50,4 +55,8 @@
   include "comgeom2.h"
   include "iniprint.h"
+#ifdef CPP_MPI
+  include 'mpif.h'
+#endif
+  
   REAL               :: masque(iip1,jjp1)             !--- CONTINENTAL MASK
   REAL               :: phis  (iip1,jjp1)             !--- GROUND GEOPOTENTIAL
@@ -67,5 +76,7 @@
   REAL, ALLOCATABLE  :: masktmp(:)
 
-#ifndef CPP_PARA
+#ifdef CPP_PARA
+  integer ierr
+#else
 ! for iniphysiq in serial mode
   INTEGER,PARAMETER :: mpi_rank=0
@@ -168,5 +179,7 @@
     ocemask = ocetmp
     IF(dlat_omask(1)<dlat_omask(jml_omask)) THEN
-      DO j=1,jjp1; ocemask(:,j) = ocetmp(:,jjp1-j+1); END DO
+       DO j=1,jjp1
+          ocemask(:,j) = ocetmp(:,jjp1-j+1)
+       END DO
     END IF
     DEALLOCATE(ocetmp,lon_omask,lat_omask,dlon_omask,dlat_omask)
@@ -239,5 +252,10 @@
 #ifdef CPP_PARA
   END IF
-  call finalize_parallel
+#ifdef CPP_XIOS
+  CALL xios_finalize
+#endif
+#ifdef CPP_MPI
+  IF (using_mpi) call MPI_FINALIZE(ierr)
+#endif
 #endif
 
