Index: LMDZ5/branches/testing/makelmdz_fcm
===================================================================
--- LMDZ5/branches/testing/makelmdz_fcm	(revision 1999)
+++ LMDZ5/branches/testing/makelmdz_fcm	(revision 2160)
@@ -3,11 +3,11 @@
 # This is a script in Bash.
 
-# FH : on ne crée plus le fichier arch.mk qui est supposé exister par
+# FH : on ne cr\'ee plus le fichier arch.mk qui est suppos\'e exister par
 # FH : ailleurs.
-# FH : ulterieurement, ce fichier sera pré-existant pour une série
-# FH : de configurations en versions optimisées et debug qui seront
-# FH : liés (ln -s) avec arch.mk en fonction de l'architecture.
-# FH : Pour le moment, cette version est en test et on peut créer les
-# FH : arch.mk en lançant une première fois makegcm.
+# FH : ulterieurement, ce fichier sera pr\'e-existant pour une s\'erie
+# FH : de configurations en versions optimis\'ees et debug qui seront
+# FH : li\'es (ln -s) avec arch.mk en fonction de l'architecture.
+# FH : Pour le moment, cette version est en test et on peut cr\'eer les
+# FH : arch.mk en lan\c{}cant une premi\`ere fois makegcm.
 #
 ##set -x
@@ -37,4 +37,7 @@
 LIBOGCM=$LMDGCM/libo
 LIBFGCM=$LMDGCM/libf
+# path for optional packages, but default set to ".void_dir"
+RRTM_PATH=$LMDGCM/.void_dir
+SISVAT_PATH=$LMDGCM/.void_dir
 COSP_PATH=$LMDGCM/.void_dir
 fcm_path=$LMDGCM/tools/fcm/bin
@@ -76,5 +79,5 @@
 [-parallel none/mpi/omp/mpi_omp] : parallelism (default: none) : mpi, openmp or mixted mpi_openmp
 [-g GRI]                   : grid configuration in dyn3d/GRI_xy.h  (default: reg, inclues a zoom)
-[-io IO]                   : Input/Output library (default: ioipsl)
+[-io ioipsl/mix/xios]                   : Input/Output library (default: ioipsl)
 [-include INCLUDES]        : extra include path to add
 [-cpp CPP_KEY]             : additional preprocessing definitions
@@ -189,5 +192,5 @@
 
 ###############################################################
-# lecture des chemins propres à l'architecture de la machine #
+# lecture des chemins propres \`a l'architecture de la machine #
 ###############################################################
 rm -f .void_file
@@ -304,6 +307,5 @@
 then
    CPP_KEY="$CPP_KEY CPP_SISVAT"
-   sed -e 's/^#src::sisvat/src::sisvat/' bld.cfg > bld.tmp
-   mv bld.tmp bld.cfg
+   SISVAT_PATH="$LIBFGCM/%PHYS/sisvat"
 fi
 
@@ -311,6 +313,5 @@
 then
    CPP_KEY="$CPP_KEY CPP_RRTM"
-   sed -e 's/^#src::rrtm/src::rrtm/' bld.cfg > bld.tmp
-   mv bld.tmp bld.cfg
+   RRTM_PATH="$LIBFGCM/%PHYS/rrtm"
 fi
 
@@ -320,8 +321,14 @@
    INCLUDE="$INCLUDE -I${IOIPSL_INCDIR}"
    LIB="$LIB -L${IOIPSL_LIBDIR} -l${LIBPREFIX}ioipsl"
-elif [[ $io == xios ]]
+elif [[ $io == mix ]]
 then
    # For now, xios implies also using ioipsl
    CPP_KEY="$CPP_KEY CPP_IOIPSL CPP_XIOS"
+   INCLUDE="$INCLUDE -I${IOIPSL_INCDIR} -I${XIOS_INCDIR}"
+   LIB="$LIB -L${IOIPSL_LIBDIR} -l${LIBPREFIX}ioipsl -L${XIOS_LIBDIR} -l${LIBPREFIX}stdc++ -l${LIBPREFIX}xios"
+elif [[ $io == xios ]]
+then
+   # For now, xios implies also using ioipsl
+   CPP_KEY="$CPP_KEY CPP_IOIPSL CPP_XIOS CPP_IOIPSL_NO_OUTPUT"
    INCLUDE="$INCLUDE -I${IOIPSL_INCDIR} -I${XIOS_INCDIR}"
    LIB="$LIB -L${IOIPSL_LIBDIR} -l${LIBPREFIX}ioipsl -L${XIOS_LIBDIR} -l${LIBPREFIX}stdc++ -l${LIBPREFIX}xios"
@@ -492,4 +499,6 @@
 echo "%DYN           $DYN"           >> $config_fcm
 echo "%PHYS          phy${physique}" >> $config_fcm
+echo "%RRTM          $RRTM_PATH"     >> $config_fcm
+echo "%SISVAT        $SISVAT_PATH"   >> $config_fcm
 echo "%COSP          $COSP_PATH"     >> $config_fcm
 echo "%CPP_KEY       $CPP_KEY"       >> $config_fcm
@@ -520,12 +529,4 @@
 ln -s $LIBOGCM/${arch}${SUFF_NAME}/.config/tmp tmp_src
 
-#eventual cleanup for SISVAT
-sed -e 's/^src::sisvat/#src::sisvat/' bld.cfg > bld.tmp
-mv bld.tmp bld.cfg
-
-#eventual cleanup for RRTM
-sed -e 's/^src::rrtm/#src::rrtm/' bld.cfg > bld.tmp
-mv bld.tmp bld.cfg
-
 
 if [[ -r $LIBFGCM/grid/dimensions.h ]]
