[1] | 1 | #!/bin/bash |
---|
| 2 | #set -x |
---|
| 3 | set -o posix |
---|
| 4 | #set -u |
---|
| 5 | #set -e |
---|
| 6 | #+ |
---|
| 7 | # |
---|
| 8 | # ========== |
---|
| 9 | # agrifpp.sh |
---|
| 10 | # ========== |
---|
| 11 | # |
---|
| 12 | # ---------------------------- |
---|
| 13 | # Preform AGrif pre-processing |
---|
| 14 | # ---------------------------- |
---|
| 15 | # |
---|
| 16 | # SYNOPSIS |
---|
| 17 | # ======== |
---|
| 18 | # |
---|
| 19 | # :: |
---|
| 20 | # |
---|
| 21 | # $ agrifpp.sh |
---|
| 22 | # |
---|
| 23 | # |
---|
| 24 | # DESCRIPTION |
---|
| 25 | # =========== |
---|
| 26 | # |
---|
| 27 | # |
---|
| 28 | # Look after key agrif, if yes the conv is used, otherwise standard pre-processing is performed. |
---|
| 29 | # |
---|
| 30 | # EXAMPLES |
---|
| 31 | # ======== |
---|
| 32 | # |
---|
| 33 | # :: |
---|
| 34 | # |
---|
| 35 | # $ ./agrifpp.sh 1 -Dkey |
---|
| 36 | # |
---|
| 37 | # or |
---|
| 38 | # |
---|
| 39 | # $ ./agrifpp.sh -Dkey |
---|
| 40 | # |
---|
| 41 | # TODO |
---|
| 42 | # ==== |
---|
| 43 | # |
---|
| 44 | # option debug |
---|
| 45 | # |
---|
| 46 | # |
---|
| 47 | # EVOLUTIONS |
---|
| 48 | # ========== |
---|
| 49 | # |
---|
| 50 | # $Id: agrifpp.sh 2143 2010-10-04 12:49:55Z rblod $ |
---|
| 51 | # |
---|
| 52 | # |
---|
| 53 | # |
---|
| 54 | # * creation |
---|
| 55 | # |
---|
| 56 | #- |
---|
| 57 | |
---|
| 58 | if [ "$1" == "1" ]; then |
---|
| 59 | shift |
---|
| 60 | MYFILE=`echo $* |awk -F" " '{print $NF}' ` |
---|
| 61 | FPP_OPT=` echo $* |awk '{ for (i=1 ; i<NF ; i++ ) { printf " %s", $i } }'` |
---|
| 62 | |
---|
| 63 | |
---|
| 64 | if [ "${MYFILE}" != "par_oce.F90" -a ! -f ${NEMO_TDIR}/${NEW_CONF}}/OPAFILES/param_done ]; then |
---|
| 65 | cpp ${FPP_OPT} ${CONFIG_DIR}/${NEW_CONF}/WORK/par_oce.F90 > ${NEMO_TDIR}/${NEW_CONF}/OPAFILES/par_oce.F90 |
---|
| 66 | (cd ${NEMO_TDIR}/${NEW_CONF}/OPAFILES ; ${NEMO_TDIR}/${NEW_CONF}/OPAFILES/conv agrif_opa.in -rm -comdirin ./ -comdirout AGRIF_MODELFILES/ -convfile par_oce.F90 > /dev/null ) |
---|
| 67 | cpp ${FPP_OPT} -I${NEMO_TDIR}/${NEW_CONF}/OPAFILES/AGRIF_INC ${NEMO_TDIR}/${NEW_CONF}/OPAFILES/AGRIF_MODELFILES/par_oce.F90 > ${NEMO_TDIR}/${NEW_CONF}/OPAFILES/par_oce.F90 |
---|
| 68 | touch ${NEMO_TDIR}/${NEW_CONF}/OPAFILES/param_done |
---|
| 69 | elif [ "${MYFILE}" == "par_oce.F90" -a -f ${NEMO_TDIR}/${NEW_CONF}/OPAFILES/param_done ] ; then |
---|
| 70 | cd ${NEMO_TDIR}/${NEW_CONF}/OPAFILES |
---|
| 71 | cpp ${FPP_OPT} -I${NEMO_TDIR}/${NEW_CONF}/OPAFILES/AGRIF_INC ${MYFILE} |
---|
| 72 | exit |
---|
| 73 | fi |
---|
| 74 | |
---|
| 75 | if [ "${MYFILE}" == agrif2model.F90 ]; then |
---|
| 76 | cpp -I${NEMO_TDIR}/${NEW_CONF}/OPAFILES/AGRIF_INC $@ |
---|
| 77 | exit |
---|
| 78 | fi |
---|
| 79 | |
---|
| 80 | cpp -I${NEMO_TDIR}/${NEW_CONF}/OPAFILES/AGRIF_INC $@ > ${NEMO_TDIR}/${NEW_CONF}/OPAFILES/${MYFILE} |
---|
| 81 | ( cd ${NEMO_TDIR}/${NEW_CONF}/OPAFILES ; ${NEMO_TDIR}/${NEW_CONF}/OPAFILES/conv agrif_opa.in -rm -comdirin ./ -comdirout AGRIF_MODELFILES/ -convfile ${MYFILE} > /dev/null ) |
---|
| 82 | cd ${NEMO_TDIR}/${NEW_CONF} |
---|
| 83 | sed 's/[ ]*$//' OPAFILES/AGRIF_MODELFILES/${MYFILE}> OPAFILES/${MYFILE} |
---|
| 84 | cpp ${FPP_OPT} -IOPAFILES/AGRIF_INC OPAFILES/${MYFILE} |
---|
| 85 | else |
---|
| 86 | shift |
---|
| 87 | cpp $@ |
---|
| 88 | fi |
---|
| 89 | |
---|