New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
agrifpp.sh in branches/DEV_r1879_FCM/NEMOGCM/TOOLS/COMPILE – NEMO

source: branches/DEV_r1879_FCM/NEMOGCM/TOOLS/COMPILE/agrifpp.sh @ 2143

Last change on this file since 2143 was 2143, checked in by rblod, 14 years ago

Improvement of FCM branch

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