Index: LMDZ.3.3/branches/rel-LF/makegcm
===================================================================
--- LMDZ.3.3/branches/rel-LF/makegcm	(revision 242)
+++ LMDZ.3.3/branches/rel-LF/makegcm	(revision 243)
@@ -12,4 +12,6 @@
 set filtre=filtrez
 set grille=reg
+set couple=false
+set veget=true
 ########################################################################
 # path a changer contenant les sources et les objets du modele
@@ -42,7 +44,4 @@
     endif 
   endif 
-# si modipsl c'est couple??? et LMDZ+SECHIBA alors
-  \cp -p libf/phylmd/oasis.F libf/phylmd/oasis.dummy
-  \cp -p libf/phylmd/oasis.true libf/phylmd/oasis.F
 else
   if ( ! $?LMDGCM ) then
@@ -75,16 +74,4 @@
 set libo=$LIBOGCM
 
-#Force/couple
-set COUPLE=0
-set ocean=`grep '^      parameter (ocean' $LMDGCM/libf/phylmd/physiq.F | awk -F\' '{print $2}'`
-banner $ocean
-if ($ocean == couple) then
-  set COUPLE=1
-endif
-#veget ou non
-set veget=`grep '^      parameter (ok_veget' $LMDGCM/libf/phylmd/physiq.F | awk -F. '{print $2}'`
-if ($veget == true) then
-  banner orchidee
-endif
 ########################################################################
 #  Les differentes platformes reconnues
@@ -193,11 +180,4 @@
    set optimbis=" -Wp,-DNC_DOUBLE -Ad -Z $LMDGCM/listage"
    set optim90="$optim $optimbis -X9 -w"
-   if $COUPLE then
-     set opt_link="-Wg,-c $MODIPSLDIR/liboasis2.4_mpi2.a /usr/lang/mpi2/lib64/libmpi.a /usr/lang/mpi2/lib64/libmp.a /usr/local/lib/lib64/libnetcdf_cc.a -L$MODIPSLDIR -lioipsl"
-     set oplink="-Wl,-t,-P,-dy "
-   else
-     set opt_link="-Wg,-c /usr/local/lib/lib64/libnetcdf_cc.a -L$MODIPSLDIR -lioipsl"
-     set oplink="-Wl,-t,-dy "
-   endif
    set mod_loc_dir=$MODIPSLDIR
    set mod_suffix=mod
@@ -217,5 +197,5 @@
    set optim="$optim90"
    set optimbis=" "
-   set opt_link=" -C hopt -float0 -ew -P stack -L$MODIPSLDIR -lioipsl  -L/u/rech/psl/rpsl003/IOIPSL -lnetcdf_i8r8_v "
+   set opt_link=" -C hopt -float0 -ew -P stack -L$MODIPSLDIR -lioipsl  -L$NCDFLIB -lnetcdf_i8r8_v "
    set mod_loc_dir="."
    set mod_suffix="mod"
@@ -230,17 +210,4 @@
    set optim="$optim90"
    set optimbis=" "
-   if $MODIPSL then
-     if $COUPLE then
-       set opt_link="-L$MODIPSLDIR -lsxioipsl -loasis2.4_mpi2 -Wl,-f nan, -float0 -ew -P stack -I$NCDFINC $NCDFLIB "
-       set opt_link="-L$MODIPSLDIR -lsxsechiba -lsxparameters -lsxstomate -lsxioipsl -loasis2.4_mpi2 -float0 -ew -P stack -I$NCDFINC $NCDFLIB "
-#       set opt_link="-L$IOIPSLDIR -lsxioipsl -loasis2.4_mpi2 -float0 -ew -eC -P stack -I$NCDFINC $NCDFLIB "
-     else
-       set opt_link="-L$MODIPSLDIR -lsxioipsl -float0 -ew -P stack -I$NCDFINC $NCDFLIB "
-     endif
-     set mod_loc_dir="./"
-   else
-     set opt_link=" -C hopt -float0 -ew -P stack -L$MODIPSLDIR -lsxsechiba -lsxparameters -lsxstomate -lsxioipsl -L /home/rech/psl/rpsl003/IOIPSL_I8R8 -lnetcdf_i8r8_v -I$NCDFINC "
-     set mod_loc_dir="."
-   endif
    set mod_suffix="mod"
 else
@@ -321,4 +288,10 @@
            parametrisations physiques dans le repertoire:
             $LMDGCM/libf/phyPHYS
+
+-c false|true
+           pour selectionner le mode force (par defaut) ou couple
+
+-v true|false
+           pour selectionner la vegetation (par defaut) ou non
 
 -g grille  selectionne le type de grille qu'on veut utiliser.
@@ -376,4 +349,10 @@
         set grille="$2" ; shift ; shift ; goto top
 
+     case -c
+        set couple="$2" ; shift ; shift ; goto top
+
+     case -v
+        set veget="$2" ; shift ; shift ; goto top
+
      case -t
         set ntrac=$2 ; shift ; shift ; goto top
@@ -398,5 +377,7 @@
            setenv PARALLEL 2
            set optim=" -g -C "
+           set optim=" -g "
            set optim90=" -fixed -g -C "
+           set optim90=" -fixed -g "
            set optimtru90=" -free -g -C "
 #           set optim=" -g "
@@ -451,6 +432,6 @@
 ########################################################################
 
-\rm tmp ; touch tmp
-\rm tmp90 ; touch tmp90
+\rm -f tmp ; touch tmp
+\rm -f tmp90 ; touch tmp90
 foreach i ( $optim )
    echo $i | sed -e 's/\"//g' -e "s/\'//g" -e 's/-//g'  >> tmp
@@ -516,5 +497,5 @@
 echo "Voulez-vous vraiment continuer?"
 if ( $< == "oui" ) then
-\rm $libf/grid/dimensions.h
+\rm -f $libf/grid/dimensions.h
 else
 exit
@@ -556,15 +537,15 @@
 
 if ( -f $libf/phy$physique/raddim.h ) then
-if ( -f $libf/phy$physique/raddim.$dimh.h ) then
-\rm $libf/phy$physique/raddim.h
-cp -p $libf/phy$physique/raddim.$dimh.h $libf/phy$physique/raddim.h
-echo $libf/phy$physique/raddim.$dimh.h 
-cat $libf/phy$physique/raddim.$dimh.h 
-cat $libf/phy$physique/raddim.h
-else
-echo On peut diminuer la taille de l executable en creant
-echo le fichier $libf/phy$physique/raddim.$dimh.h
-\cp -p $libf/phy$physique/raddim.defaut.h $libf/phy$physique/raddim.h
-endif
+ if ( -f $libf/phy$physique/raddim.$dimh.h ) then
+  \rm -f $libf/phy$physique/raddim.h
+  cp -p $libf/phy$physique/raddim.$dimh.h $libf/phy$physique/raddim.h
+  echo $libf/phy$physique/raddim.$dimh.h 
+  cat $libf/phy$physique/raddim.$dimh.h 
+  cat $libf/phy$physique/raddim.h
+ else
+  echo On peut diminuer la taille de l executable en creant
+  echo le fichier $libf/phy$physique/raddim.$dimh.h
+  \cp -p $libf/phy$physique/raddim.defaut.h $libf/phy$physique/raddim.h
+ endif
 endif
 
@@ -582,4 +563,20 @@
 echo $dimc
 
+########################################################################
+#  utilisation des vraies routines de couplage si on est en couple
+########################################################################
+if ( $couple == 'true' ) then
+  banner couple
+  pwd
+  if ( `diff $libf/phylmd/oasis.F $libf/phylmd/oasis.true | wc -w` ) then
+   \cp $libf/phylmd/oasis.F $libf/phylmd/oasis.dummy
+   \cp $libf/phylmd/oasis.true $libf/phylmd/oasis.F
+  endif
+else
+  if ( `diff $libf/phylmd/oasis.F $libf/phylmd/oasis.dummy | wc -w` ) then
+   \cp $libf/phylmd/oasis.F $libf/phylmd/oasis.true
+   \cp $libf/phylmd/oasis.dummy $libf/phylmd/oasis.F
+  endif
+endif
 ########################################################################
 #  Avant de lancer le make, on recree le makefile si necessaire
@@ -632,4 +629,14 @@
    set f77=frt
    set f90=$f77
+   if ($couple == true) then
+     set opt_link="-Wg,-c $MODIPSLDIR/liboasis2.4_mpi2.a /usr/lang/mpi2/lib64/libmpi.a /usr/lang/mpi2/lib64/libmp.a /usr/local/lib/lib64/libnetcdf_cc.a -L$MODIPSLDIR -lioipsl"
+     set oplink="-Wl,-t,-P,-dy "
+   else
+     set opt_link="-Wg,-c /usr/local/lib/lib64/libnetcdf_cc.a -L$MODIPSLDIR -lioipsl"
+     set oplink="-Wl,-t,-dy "
+   endif
+   if ($veget == true) then
+     set opt_link="$opt_link -lsechiba -lparameters -lstomate -lioipsl /usr/local/lib/lib64/libnetcdf_cc.a"
+   endif
 else if $CRAY then
    set f77=f90
@@ -644,7 +651,31 @@
    set f77=f90
    set f90=f90
+   set opt_link="-L$MODIPSLDIR"
+   if ($veget == true) then
+     set opt_link="$opt_link -lsechiba -lparameters -lstomate"
+   endif
+   if ($couple == true) then
+     set opt_link="$opt_link -lioipsl -loasis2.4_mpi2 -Wl,-f nan -float0 -ew -P stack -I$NCDFINC $NCDFLIB "
+   else
+     set opt_link="$opt_link -L$MODIPSLDIR -lioipsl -Wl,-f nan -float0 -ew -P stack -I$NCDFINC $NCDFLIB "
+   endif
+   set mod_loc_dir="./"
 else if $XNEC then
    set f77=sxmpif90
    set f90=sxmpif90
+   if $MODIPSL then
+     set opt_link="-L$MODIPSLDIR"
+     if ($veget == true) then
+       set opt_link="$opt_link -lsxsechiba -lsxparameters -lsxstomate"
+     endif
+     if ($couple == true) then
+       set opt_link="$opt_link -lsxioipsl -loasis2.4_mpi2 -Wl,-f nan -float0 -ew -P stack -I$NCDFINC $NCDFLIB "
+     else
+       set opt_link="$opt_link -lsxioipsl -Wl,-f nan -float0 -ew -P stack -I$NCDFINC $NCDFLIB "
+     endif
+   else
+     set opt_link=" -C hopt -float0 -ew -P stack -L$MODIPSLDIR -lsxsechiba -lsxparameters -lsxstomate -lsxioipsl -L$NCDFLIB -lnetcdf_i8r8_v -I$NCDFINC "
+   endif
+   set mod_loc_dir="./"
 else
    set f77=f77
@@ -802,7 +833,3 @@
 PROG=$code
 
-\rm $libf/grid/dimensions.h
-if $MODIPSL then
-  \cp -p libf/phylmd/oasis.F libf/phylmd/oasis.true
-  \cp -p libf/phylmd/oasis.dummy libf/phylmd/oasis.F
-endif
+\rm -f $libf/grid/dimensions.h
