/[MITgcm]/MITgcm_contrib/PRM/build_scripts/mod_tool/mod_tool.sh
ViewVC logotype

Annotation of /MITgcm_contrib/PRM/build_scripts/mod_tool/mod_tool.sh

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1.1.1 - (hide annotations) (download) (as text) (vendor branch)
Tue Apr 5 13:18:55 2005 UTC (20 years, 3 months ago) by cnh
Branch: MAIN, baseline
CVS Tags: checkpoint63m, checkpoint63n, initial, HEAD
Changes since 1.1: +0 -0 lines
File MIME type: application/x-sh
Checking in initial PRM setup

1 cnh 1.1 #!/bin/sh
2     #
3     # Shell script to manage module files built from directories of
4     # code fragments, template code and expandable macros.
5     # This script is
6     # o used to perform overload expansions and to assemble F90 modules into a
7     # single file (a requirement of the language) from multiple sources.
8     #
9     # o used to perform overload expansions and to assemble F90 modules into a
10     # single file (a requirement of the language) from multiple sources.
11     #
12     # Usage:
13     # mod_tool.sh build
14     # mod_tool.sh clean
15     #
16     # Inputs:
17     # module_name :: file containing name of module that will be created
18     #
19     #
20     export PROG_NAME=$0
21     fc=`which $0`
22     sroot=${fc%/*}
23     . ${sroot}/mod_tool_funcs.sh
24    
25     # See which action was requested and exit with usage if it isn't
26     # there or is an unrecognised string.
27     action=$1
28     check_action $action
29    
30     # Set name of file standard output is written
31     export STDOUT=build_mod.stdout
32     export ERROUT=build_mod.stderr
33     \rm -fr ${STDOUT} ${STDERR}
34     touch ${STDOUT} ${STDERR}
35     # Set name of file with module name
36     export MOD_NAME_FILE=module_name
37     # Set name of file with list of zero or more files containing interface
38     # definitions
39     export IF_FILE_LIST=iface_file_list
40     export PROC_FILE_LIST=proc_file_list
41     export PROCTEMPLATE_FILE_LIST=proctemplate_file_list
42     export USE_FILE_LIST=use_file_list
43     # Set name of file to which output will be written
44     export F90_OUT_FILE=foo.F90
45     export F90_OUT_DIR=mod_tool_built_src
46     export CONTAINS_IS_WRITTEN=0
47    
48     # Read the module name from ${MOD_NAME_FILE}
49     com='MODULE_NAME=`(grep -v '^#' ${MOD_NAME_FILE})`'
50     if [ -r ${MOD_NAME_FILE} ]; then
51     export MODULE_NAME=`(grep -v '^#' ${MOD_NAME_FILE}) 2> ${STDOUT}`
52     rc=$?
53     else
54     rc=2
55     fi
56     check_rc_exit $rc "$com" \
57     "Error reading name of module from file \"${MOD_NAME_FILE}\""
58    
59     # Execute commands based on selected action.
60     if [ "x$action" == "xbuild" ]; then
61     mod_tool_build
62     fi
63    
64     if [ "x$action" == "xclean" ]; then
65     mod_tool_clean
66     fi

  ViewVC Help
Powered by ViewVC 1.1.22