Index: /trunk/libIGCM/libIGCM_sys/libIGCM_sys_ada.ksh
===================================================================
--- /trunk/libIGCM/libIGCM_sys/libIGCM_sys_ada.ksh	(revision 791)
+++ /trunk/libIGCM/libIGCM_sys/libIGCM_sys_ada.ksh	(revision 792)
@@ -142,5 +142,5 @@
 #====================================================
 #- R_FIG (hosting figures : monitoring and atlas, and/or small files)
-typeset R_FIG=${STORAGE}/IGCM_OUT
+typeset R_FIG=${ARCHIVE}/IGCM_OUT
 
 #====================================================
@@ -189,6 +189,6 @@
   IGCM_debug_PushStack "IGCM_sys_ChangeArchive"
 
-  R_OUT=${SCRATCHDIR}/IGCM_OUT
-  R_FIG=${SCRATCHDIR}/IGCM_OUT
+  R_OUT=${WORKDIR}/IGCM_OUT
+  R_FIG=${WORKDIR}/IGCM_OUT
 
   IGCM_debug_Print 1 "R_OUT   has been redefined = ${R_OUT}"
@@ -920,10 +920,16 @@
     #IGCM_sys_TestDirArchive $( dirname $2 )
     #
-    #USUAL WAY
-    rcp -r $1 ${STOREHOST}:$2 > out_rsync 2>&1
-    status=$?
-
-    if [ ${status} -gt 0 ] ; then
-      echo "IGCM_sys_Put_Dir : error code ${status}"
+    #Command depends on targeted file system
+    IGCM_sys_IsFileArchived $1
+    if [ $? = 0 ] ; then
+      \rcp -r $1 ${STOREHOST}:$2 > out_rsync 2>&1
+      status=$?
+    else
+      \cp -r $1 $2 > out_rsync 2>&1 
+      status=$?
+    fi
+
+    if [ ${status} -gt 0 ] ; then
+      IGCM_debug_Print 2 "IGCM_sys_Put_Dir : rcp or cp failed error code ${status}"
       cat out_rsync
       IGCM_debug_Exit "IGCM_sys_Put_Dir"
@@ -969,8 +975,8 @@
     i=0
     while [ $i -lt $NB_ESSAI ] ; do
-      rcp -rp ${STOREHOST}:$1 $2 > out_rsync 2>&1
+      \rcp -rp ${STOREHOST}:$1 $2 > out_rsync 2>&1
       status=$?
       if [ ${status} -gt 0 ]; then
-        IGCM_debug_Print 2 "IGCM_sys_Get_Dir : cp failed error code ${status} ${i}/${NB_ESSAI}"
+        IGCM_debug_Print 2 "IGCM_sys_Get_Dir : rcp failed error code ${status} ${i}/${NB_ESSAI}"
         IGCM_debug_Print 2 "IGCM_sys_Get_Dir : sleep ${DELAI} seconds and try again."
         sleep $DELAI
@@ -1076,7 +1082,13 @@
     #IGCM_sys_MkdirArchive $( dirname $2 )
     #
-    #USUAL WAY
-    mfput $1 $2 > out_rsync 2>&1
-    status=$?
+    #Command depends on targeted file system
+    IGCM_sys_IsFileArchived $1
+    if [ $? = 0 ] ; then
+      mfput $1 $2 > out_rsync 2>&1
+      status=$?
+    else
+      \cp $1 $2 > out_rsync 2>&1
+      status=$?
+    fi
 
 #       #RSYNC WITH NETWORK RSH CALL
@@ -1095,5 +1107,5 @@
 
     if [ ${status} -gt 0 ] ; then
-      echo "IGCM_sys_Put_Rest : mfput failed error code ${status}"
+      echo "IGCM_sys_Put_Rest : mfput or cp failed error code ${status}"
       cat out_rsync
       IGCM_debug_Exit "IGCM_sys_Put_Rest"
@@ -1180,7 +1192,13 @@
     #IGCM_sys_MkdirArchive $( dirname $2 )
     #
-    #USUAL WAY
-    mfput $1 $2 > out_rsync 2>&1
-    status=$?
+    #Command depends on targeted file system
+    IGCM_sys_IsFileArchived $1
+    if [ $? = 0 ] ; then
+      mfput $1 $2 > out_rsync 2>&1
+      status=$?
+    else
+      \cp $1 $2 > out_rsync 2>&1
+      status=$?
+    fi
 
 #       #RSYNC WITH NETWORK RSH CALL
@@ -1199,5 +1217,5 @@
 
     if [ ${status} -gt 0 ] ; then
-      echo "IGCM_sys_Put_Out : error."
+      IGCM_debug_Print 2 "IGCM_sys_Put_Out : mfput or cp failed error code ${status}"
       cat out_rsync
       IGCM_debug_Exit "IGCM_sys_Put_Out"
@@ -1333,7 +1351,13 @@
     fi
 
-    #USUAL WAY
-    mfget ${dm_liste[*]} ${DEST} > out_rsync 2>&1
-    status=$?
+    #Command depends on targeted file system
+    IGCM_sys_IsFileArchived ${dm_liste[0]}
+    if [ $? = 0 ] ; then
+      mfget ${dm_liste[*]} ${DEST} > out_rsync 2>&1
+      status=$?
+    else
+      \cp ${dm_liste[*]} ${DEST} > out_rsync 2>&1
+      status=$?
+    fi
 
 #       #RSYNC WITH NETWORK RSH CALL
@@ -1352,5 +1376,5 @@
 
     if [ ${status} -gt 0 ] ; then
-      echo "IGCM_sys_Get : copy error."
+      IGCM_debug_Print 2 "IGCM_sys_Get : mfget or cp failed error code ${status}"
       cat out_rsync
       IGCM_debug_Exit "IGCM_sys_Get"
