Index: trunk/CONFIG/GYRE/scripts/BB_make
===================================================================
--- trunk/CONFIG/GYRE/scripts/BB_make	(revision 676)
+++ trunk/CONFIG/GYRE/scripts/BB_make	(revision 688)
@@ -2,26 +2,22 @@
 # some variables
 TMP = ../../../tmp
-#-Q- sxnec  # Compiler options for NEMO (IDRIS SX5-NEC) 
-#-Q- sxnec  F_O = -dw -Wf\"-A idbl4\" -sx5 -C vopt -Wf"-init stack=nan" -Wl"-f nan" -Wf"-P nh" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
-#-Q- sxnec  F_F = $(F_O) -f3
-#-Q- sxnec  L_X = $(L_O)
-#-Q- sx6nec  # Compiler options NEMO (CEA SX6-NEC) 
-#-Q- sx6nec  F_O = -size_t64 -dw -Wf\"-A dbl4\" -sx6 -C vopt -Wf"-P nh" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
-#-Q- sx6nec  F_O = -size_t64 -dw -Wf\"-A dbl4\" -sx6 -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 -I $(NCDF_INC)
-#-Q- sx6nec  F_F = $(F_O) -f3
-#-Q- sx6nec  L_X = $(L_O) -ftrace
+#-Q- sx8mercure  # Compiler options NEMO (CEA SX6-NEC) 
+#-Q- sx8mercure  F_O = -size_t64 -dw -Wf\"-A dbl4\" -sx6 -C vopt -Wf"-P nh" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
+#-Q- sx8mercure  F_O = -size_t64 -dw -Wf\"-A dbl4\" -sx6 -ftrace -C vopt -Wf"-init stack=nan" -Wl"-f nan" -Wf"-P nh -O overlap" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
+#-Q- sx8mercure  F_F = $(F_O) -f3
+#-Q- sx8mercure  L_X = $(L_O) -ftrace
 #-Q- sx8brodie  # Compiler options NEMO (CEA SX6-NEC) 
-#-Q- sx8brodie  F_O = -dw -Wf\"-A idbl4\" -sx8 -C vopt -Wf"-init stack=nan" -Wl"-f nan" -Wf"-P nh" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
+#-Q- sx8brodie  F_O = -dw -Wf\"-A idbl4\" -sx8 -C vopt -Wf"-init stack=nan" -Wl"-f nan" -Wf"-P nh -O overlap" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
 #-Q- sx8brodie  F_F = $(F_O) -f3
 #-Q- sx8brodie  L_X = $(L_O)
 #-Q- sxdkrz  # Compiler options for NEMO (DKRZ SX6-NEC) 
-#-Q- sxdkrz  F_O = -ew -sx6 -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 -I $(NCDF_INC)
+#-Q- sxdkrz  F_O = -ew -sx6 -ftrace -C vopt -Wf"-init stack=nan" -Wl"-f nan" -Wf"-P nh -O overlap" -Wf"-pvctl noassume loopcnt=10000" -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
 #-Q- sxdkrz  F_F = $(F_O) -f3
 #-Q- sxdkrz  L_X = $(L_O) -ftrace
 #-Q- eshpux  # Compiler options for NEMO (Earth Simulator)
 #-Q- eshpux  # for super perfs!
-#-Q- eshpux  # F_O = $(FTRACE) -pi nest=5 line=10000 expin=Fmpplib.F -Wf,-A idbl4 -C hopt -Wf"-P nh" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
+#-Q- eshpux  # F_O = $(FTRACE) -pi nest=5 line=10000 expin=Fmpplib.F -Wf,-A idbl4 -C hopt -Wf"-P nh -O overlap" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
 #-Q- eshpux  # regular options!
-#-Q- eshpux  F_O = $(FTRACE) -Wf,-A idbl4 -C vopt -P stack -Wf"-P nh" -Wf,-pvctl noassume loopcnt=10000 -L transform -Wf,-pvctl nomsg -Wf"-O nomsg" -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
+#-Q- eshpux  F_O = $(FTRACE) -Wf,-A idbl4 -C vopt -P stack -Wf"-P nh -O overlap" -Wf,-pvctl noassume loopcnt=10000 -L transform -Wf,-pvctl nomsg -Wf"-O nomsg" -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
 #-Q- eshpux  F_F = $(F_O) -f3
 #-Q- eshpux  L_X = $(L_O)
@@ -35,5 +31,5 @@
 #-Q- lxiv7  L_X = -r8 -O3
 #-Q- lxiv8  # Compiler options for NEMO (ifort version)
-#-Q- lxiv8  F_O = -O3 -r8  -I $(MODDIR) -I$(MODDIR)/oce -I $(NETCDF_INC)
+#-Q- lxiv8  F_O = -O3 -r8  -I $(MODDIR) -I$(MODDIR)/oce -I $(NCDF_INC)
 #-Q- lxiv8  F_F = $(F_O) -extend_source 
 #-Q- lxiv8  L_X = -r8 -O3
@@ -52,6 +48,5 @@
 #-Q- osxxlf    L_X = -qrealsize=8 -O3
 PREF=
-#-Q- sxnec	PREF=i.
-#-Q- sx6nec	PREF=i.
+#-Q- sx8mercure	PREF=i.
 #-Q- sx8brodie	PREF=i.
 #-Q- sxdkrz	PREF=i.
@@ -226,6 +221,5 @@
      key_zdfric \
      key_zdftke \
-     key_zdftke \
-     key_zo 
+     key_zdftke 
 # .o file list in the library
 LIB_OBJ = \
@@ -490,6 +484,5 @@
 	$(P_P) $(F_O) \
 #-Q- fjvpp		-Z $*.L \
-#-Q- sxnec		-R2 \
-#-Q- sx6nec		-R2 \
+#-Q- sx8mercure		-R2 \
 #-Q- sx8brodie		-R2 \
 #-Q- sxdkrz		-R2 \
@@ -497,9 +490,6 @@
 #-Q- aix		-qsource \
 	   OPAFILES/$*.F90 || { mv $(PREF).L $(TMP) ; false ; exit ; }
-#-Q- sxnec		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
-#-Q- sx6nec		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
-#-Q- sx8brodie		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
 #-Q- sxdkrz		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
-#-Q- hpux			@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
+#-Q- eshpux			@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
 endif
 
@@ -514,7 +504,4 @@
 # if the make script is stopped, one doesn't destroy library
 .PRECIOUS : $(MODEL_LIB)
-#-Q- sxnec .PRECIOUS : $(SXMODEL_LIB)
-#-Q- sx6nec .PRECIOUS : $(SXMODEL_LIB)
-#-Q- sx8brodie .PRECIOUS : $(SXMODEL_LIB)
 #-Q- sxdkrz .PRECIOUS : $(SXMODEL_LIB)
 #-Q- eshpux .PRECIOUS : $(SXMODEL_LIB)
@@ -533,6 +520,5 @@
 		@$(F_C) $(P_P) $(F_O) \
 #-Q- fjvpp		-Z $*.L \
-#-Q- sxnec		-R2 \
-#-Q- sx6nec		-R2 \
+#-Q- sx8mercure		-R2 \
 #-Q- sx8brodie		-R2 \
 #-Q- sxdkrz		-R2 \
@@ -540,7 +526,4 @@
 #-Q- aix		-qsource \
 		$*.f90 || { if [ -f $(PREF)$*.L ] ; then mv $(PREF)$*.L $(TMP) ; fi ; false ; exit ; }
-#-Q- sxnec		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
-#-Q- sx6nec		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
-#-Q- sx8brodie		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
 #-Q- sxdkrz		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
 #-Q- eshpux		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
@@ -569,6 +552,5 @@
 		@$(F_C) $(P_P) $(F_O) \
 #-Q- fjvpp		-Z $*.L \
-#-Q- sxnec		-R2 \
-#-Q- sx6nec		-R2 \
+#-Q- sx8mercure		-R2 \
 #-Q- sx8brodie		-R2 \
 #-Q- sxdkrz		-R2 \
@@ -579,6 +561,5 @@
 		@$(F_C) $(P_P) $(F_O) \
 #-Q- fjvpp		-Z $*.L \
-#-Q- sxnec		-R2 \
-#-Q- sx6nec		-R2 \
+#-Q- sx8mercure		-R2 \
 #-Q- sx8brodie		-R2 \
 #-Q- sxdkrz		-R2 \
@@ -587,7 +568,4 @@
 		$*.F90 || { if [ -f $(PREF)$*.L ] ; then mv $(PREF)$*.L $(TMP) ; fi ; false ; exit ; }
 endif
-#-Q- sxnec		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
-#-Q- sx6nec		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
-#-Q- sx8brodie		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
 #-Q- sxdkrz		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
 #-Q- eshpux		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
@@ -616,6 +594,5 @@
 		@$(F_C) $(P_P) $(F_F) \
 #-Q- fjvpp		-Z $*.L \
-#-Q- sxnec		-R2 \
-#-Q- sx6nec		-R2 \
+#-Q- sx8mercure		-R2 \
 #-Q- sx8brodie		-R2 \
 #-Q- sxdkrz		-R2 \
@@ -626,6 +603,5 @@
 		@$(F_C) $(P_P) $(F_O) \
 #-Q- fjvpp		-Z $*.L \
-#-Q- sxnec		-R2 \
-#-Q- sx6nec		-R2 \
+#-Q- sx8mercure		-R2 \
 #-Q- sx8brodie		-R2 \
 #-Q- sxdkrz		-R2 \
@@ -634,7 +610,4 @@
 		$*.F || { if [ -f $(PREF)$*.L ] ; then mv $(PREF)$*.L $(TMP) ; fi ; false ; exit ; }
 endif
-#-Q- sxnec		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
-#-Q- sx6nec		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
-#-Q- sx8brodie		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
 #-Q- sxdkrz		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
 #-Q- eshpux		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
@@ -651,6 +624,5 @@
 		@$(F_C) $(F_O) \
 #-Q- fjvpp		-Z $*.L \
-#-Q- sxnec		-R2 \
-#-Q- sx6nec		-R2 \
+#-Q- sx8mercure		-R2 \
 #-Q- sx8brodie		-R2 \
 #-Q- sxdkrz		-R2 \
@@ -658,7 +630,4 @@
 #-Q- aix		-qsource \
 		$*.f|| { if [ -f $(PREF)$*.L ] ; then mv $*.L $(TMP) ; fi ; false ; exit ; }
-#-Q- sxnec		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
-#-Q- sx6nec		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
-#-Q- sx8brodie		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
 #-Q- sxdkrz		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
 #-Q- eshpux		@$(A_X) $(SXMODEL_LIB) $*.o  > /dev/null
@@ -1455,4 +1424,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(daymod.o) \
@@ -1463,4 +1433,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(par_kind.o) \
@@ -1944,4 +1915,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -1951,4 +1923,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(par_kind.o) \
@@ -2121,4 +2094,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -2128,4 +2102,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(par_kind.o) \
@@ -2213,4 +2188,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_mpp.F90 \
 	lib_print.f90 \
@@ -2221,4 +2197,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
@@ -2257,4 +2234,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -2264,4 +2242,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(oce.o) \
@@ -2296,4 +2275,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -2303,4 +2283,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(oce.o) \
@@ -2335,4 +2316,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_mpp.F90 \
 	lib_print.f90 \
@@ -2343,4 +2325,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
@@ -4903,4 +4886,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -4910,4 +4894,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(par_kind.o) \
@@ -5006,4 +4991,5 @@
 	par_oce.F90 \
 	phycst.F90 \
+	dom_ice.F90 \
 	dom_oce.F90 \
 	flx_oce.F90 \
@@ -5015,4 +5001,5 @@
 	limmsh.F90 \
 	limrst.F90 \
+	$(MODEL_LIB)(dom_ice.o) \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(flx_oce.o) \
@@ -5357,4 +5344,5 @@
 	iom_def.F90 \
 	lbclnk.F90 \
+	lib_mpp.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -5362,7 +5350,10 @@
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_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) \
+	oce.F90 \
 	par_kind.F90 \
 	par_oce.F90 \
@@ -5373,4 +5364,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -5379,19 +5371,12 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	KEY_CPP \
 	iom.F90
 $(MODEL_LIB)(iom_ioipsl.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
+	lib_print.f90 \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
 	par_kind.F90 \
 	par_oce.F90 \
@@ -5399,9 +5384,7 @@
 	in_out_manager.F90 \
 	iom_def.F90 \
-	lbclnk.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
 	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(lbclnk.o) \
 	$(IOIPSL_LIB) \
 	iom_ioipsl.F90
@@ -5978,4 +5961,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_mpp.F90 \
 	lib_print.f90 \
@@ -5990,4 +5974,5 @@
 	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
@@ -6210,4 +6195,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_mpp.F90 \
 	lib_print.f90 \
@@ -6219,4 +6205,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
@@ -6329,4 +6316,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(blk_oce.o) \
@@ -6337,4 +6325,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(par_ice.o) \
@@ -6369,4 +6358,5 @@
 $(MODEL_LIB)(limthd.o) :	\
 	blk_oce.F90 \
+	dom_ice.F90 \
 	dom_oce.F90 \
 	flx_oce.F90 \
@@ -6382,4 +6372,5 @@
 	limrst.F90 \
 	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(dom_ice.o) \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(flx_oce.o) \
@@ -6836,4 +6827,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_mpp.F90 \
 	lib_print.f90 \
@@ -6844,4 +6836,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
@@ -7420,4 +7413,5 @@
 	divcur.F90 \
 	domhgr.F90 \
+	dom_ice.F90 \
 	dommsk.F90 \
 	dom_oce.F90 \
@@ -7490,4 +7484,5 @@
 	$(MODEL_LIB)(divcur.o) \
 	$(MODEL_LIB)(domhgr.o) \
+	$(MODEL_LIB)(dom_ice.o) \
 	$(MODEL_LIB)(dommsk.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -9557,4 +9552,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	ldftra_oce.F90 \
 	lib_mpp.F90 \
@@ -9566,4 +9562,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(ldftra_oce.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
@@ -11039,4 +11036,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(blk_oce.o) \
@@ -11053,4 +11051,5 @@
 	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(oce.o) \
Index: trunk/CONFIG/ORCA2_LIM/scripts/BB_make
===================================================================
--- trunk/CONFIG/ORCA2_LIM/scripts/BB_make	(revision 676)
+++ trunk/CONFIG/ORCA2_LIM/scripts/BB_make	(revision 688)
@@ -4,20 +4,20 @@
 #-Q- sx8mercure  # Compiler options NEMO (CEA SX6-NEC) 
 #-Q- sx8mercure  F_O = -size_t64 -dw -Wf\"-A dbl4\" -sx6 -C vopt -Wf"-P nh" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
-#-Q- sx8mercure  F_O = -size_t64 -dw -Wf\"-A dbl4\" -sx6 -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 -I $(NCDF_INC)
+#-Q- sx8mercure  F_O = -size_t64 -dw -Wf\"-A dbl4\" -sx6 -ftrace -C vopt -Wf"-init stack=nan" -Wl"-f nan" -Wf"-P nh -O overlap" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
 #-Q- sx8mercure  F_F = $(F_O) -f3
 #-Q- sx8mercure  L_X = $(L_O) -ftrace
 #-Q- sx8brodie  # Compiler options NEMO (CEA SX6-NEC) 
-#-Q- sx8brodie  F_O = -dw -Wf\"-A idbl4\" -sx8 -C vopt -Wf"-init stack=nan" -Wl"-f nan" -Wf"-P nh" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
+#-Q- sx8brodie  F_O = -dw -Wf\"-A idbl4\" -sx8 -C vopt -Wf"-init stack=nan" -Wl"-f nan" -Wf"-P nh -O overlap" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
 #-Q- sx8brodie  F_F = $(F_O) -f3
 #-Q- sx8brodie  L_X = $(L_O)
 #-Q- sxdkrz  # Compiler options for NEMO (DKRZ SX6-NEC) 
-#-Q- sxdkrz  F_O = -ew -sx6 -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 -I $(NCDF_INC)
+#-Q- sxdkrz  F_O = -ew -sx6 -ftrace -C vopt -Wf"-init stack=nan" -Wl"-f nan" -Wf"-P nh -O overlap" -Wf"-pvctl noassume loopcnt=10000" -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
 #-Q- sxdkrz  F_F = $(F_O) -f3
 #-Q- sxdkrz  L_X = $(L_O) -ftrace
 #-Q- eshpux  # Compiler options for NEMO (Earth Simulator)
 #-Q- eshpux  # for super perfs!
-#-Q- eshpux  # F_O = $(FTRACE) -pi nest=5 line=10000 expin=Fmpplib.F -Wf,-A idbl4 -C hopt -Wf"-P nh" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
+#-Q- eshpux  # F_O = $(FTRACE) -pi nest=5 line=10000 expin=Fmpplib.F -Wf,-A idbl4 -C hopt -Wf"-P nh -O overlap" -Wf,-pvctl noassume loopcnt=10000 -L transform -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
 #-Q- eshpux  # regular options!
-#-Q- eshpux  F_O = $(FTRACE) -Wf,-A idbl4 -C vopt -P stack -Wf"-P nh" -Wf,-pvctl noassume loopcnt=10000 -L transform -Wf,-pvctl nomsg -Wf"-O nomsg" -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
+#-Q- eshpux  F_O = $(FTRACE) -Wf,-A idbl4 -C vopt -P stack -Wf"-P nh -O overlap" -Wf,-pvctl noassume loopcnt=10000 -L transform -Wf,-pvctl nomsg -Wf"-O nomsg" -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)
 #-Q- eshpux  F_F = $(F_O) -f3
 #-Q- eshpux  L_X = $(L_O)
@@ -31,5 +31,5 @@
 #-Q- lxiv7  L_X = -r8 -O3
 #-Q- lxiv8  # Compiler options for NEMO (ifort version)
-#-Q- lxiv8  F_O = -O3 -r8  -I $(MODDIR) -I$(MODDIR)/oce -I $(NETCDF_INC)
+#-Q- lxiv8  F_O = -O3 -r8  -I $(MODDIR) -I$(MODDIR)/oce -I $(NCDF_INC)
 #-Q- lxiv8  F_F = $(F_O) -extend_source 
 #-Q- lxiv8  L_X = -r8 -O3
@@ -1682,4 +1682,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(daymod.o) \
@@ -1690,4 +1691,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(par_kind.o) \
@@ -2171,4 +2173,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -2178,4 +2181,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(par_kind.o) \
@@ -2348,4 +2352,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -2355,4 +2360,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(par_kind.o) \
@@ -2440,4 +2446,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_mpp.F90 \
 	lib_print.f90 \
@@ -2448,4 +2455,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
@@ -2484,4 +2492,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -2491,4 +2500,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(oce.o) \
@@ -2523,4 +2533,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -2530,4 +2541,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(oce.o) \
@@ -2562,4 +2574,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_mpp.F90 \
 	lib_print.f90 \
@@ -2570,4 +2583,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
@@ -5140,4 +5154,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -5147,4 +5162,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(par_kind.o) \
@@ -5243,4 +5259,5 @@
 	par_oce.F90 \
 	phycst.F90 \
+	dom_ice.F90 \
 	dom_oce.F90 \
 	flx_oce.F90 \
@@ -5252,4 +5269,5 @@
 	limmsh.F90 \
 	limrst.F90 \
+	$(MODEL_LIB)(dom_ice.o) \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(flx_oce.o) \
@@ -5594,4 +5612,5 @@
 	iom_def.F90 \
 	lbclnk.F90 \
+	lib_mpp.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -5599,7 +5618,10 @@
 	$(MODEL_LIB)(iom_def.o) \
 	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_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) \
+	oce.F90 \
 	par_kind.F90 \
 	par_oce.F90 \
@@ -5610,4 +5632,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -5616,19 +5639,12 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	KEY_CPP \
 	iom.F90
 $(MODEL_LIB)(iom_ioipsl.o) :	\
-	dom_oce.F90 \
-	in_out_manager.F90 \
-	lib_mpp.F90 \
-	lib_print.f90 \
-	$(MODEL_LIB)(dom_oce.o) \
-	$(MODEL_LIB)(in_out_manager.o) \
-	$(MODEL_LIB)(lib_mpp.o) \
-	$(MODEL_LIB)(lib_print.o) \
-	$(MODEL_LIB)(oce.o) \
-	$(MODEL_LIB)(par_kind.o) \
-	$(MODEL_LIB)(par_oce.o) \
-	oce.F90 \
+	lib_print.f90 \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
 	par_kind.F90 \
 	par_oce.F90 \
@@ -5636,9 +5652,7 @@
 	in_out_manager.F90 \
 	iom_def.F90 \
-	lbclnk.F90 \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
 	$(MODEL_LIB)(iom_def.o) \
-	$(MODEL_LIB)(lbclnk.o) \
 	$(IOIPSL_LIB) \
 	iom_ioipsl.F90
@@ -6215,4 +6229,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_mpp.F90 \
 	lib_print.f90 \
@@ -6227,4 +6242,5 @@
 	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
@@ -6447,4 +6463,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_mpp.F90 \
 	lib_print.f90 \
@@ -6456,4 +6473,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
@@ -6566,4 +6584,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(blk_oce.o) \
@@ -6574,4 +6593,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(par_ice.o) \
@@ -6606,4 +6626,5 @@
 $(MODEL_LIB)(limthd.o) :	\
 	blk_oce.F90 \
+	dom_ice.F90 \
 	dom_oce.F90 \
 	flx_oce.F90 \
@@ -6619,4 +6640,5 @@
 	limrst.F90 \
 	$(MODEL_LIB)(blk_oce.o) \
+	$(MODEL_LIB)(dom_ice.o) \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(flx_oce.o) \
@@ -7073,4 +7095,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_mpp.F90 \
 	lib_print.f90 \
@@ -7081,4 +7104,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(lib_print.o) \
@@ -7657,4 +7681,5 @@
 	divcur.F90 \
 	domhgr.F90 \
+	dom_ice.F90 \
 	dommsk.F90 \
 	dom_oce.F90 \
@@ -7727,4 +7752,5 @@
 	$(MODEL_LIB)(divcur.o) \
 	$(MODEL_LIB)(domhgr.o) \
+	$(MODEL_LIB)(dom_ice.o) \
 	$(MODEL_LIB)(dommsk.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -9794,4 +9820,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	ldftra_oce.F90 \
 	lib_mpp.F90 \
@@ -9803,4 +9830,5 @@
 	$(MODEL_LIB)(iom_nf90.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(ldftra_oce.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
@@ -11284,4 +11312,5 @@
 	iom_nf90.F90 \
 	iom_rstdimg.F90 \
+	lbclnk.F90 \
 	lib_print.f90 \
 	$(MODEL_LIB)(blk_oce.o) \
@@ -11298,4 +11327,5 @@
 	$(MODEL_LIB)(iom.o) \
 	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
 	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(oce.o) \
