[Mitgcm-support] wish list for scripts/tools

mitgcm-support at dev.mitgcm.org mitgcm-support at dev.mitgcm.org
Wed Jul 9 15:44:33 EDT 2003


Anyone done this (Chris)?

Some scripts that would be useful if they were written and put
somewhere:


 check_cpps header_file1 [header_file2, ...] source_file1 [source_file2, ...]

   check_cpps compiles a list of CPP conditionals used in source_files
   and checks that they exist in one of the header_files. This catches
   spelling errors and decommissioned options.

   example:  check_cpps CPP_OPTIONS.h CPP_EEOPTIONS.h *.F


 sync_configs file1 [file2|dir] [file3|dir] [...]

   sync_configs take each optional file (file2,file3,...) and updates
   it with respect to file1. If directories are specified, it
   recursively scans the directory for files of the same name as file1.
   It is used to keep copies of configuration files up to date with
   a central configuration file but retains the particular configurations.

   The update works as follows:
    file1 is essentially copied, but the state of any #undef, #define,
    #ifdef and #ifndef statements is retained from the target file.
    Additional comments and CPP macros from the target file are
    discarded unless they are surrounded by a the lines
       C Local CPP options -begin-
    and
       C Local CPP options -end-
    This allows non-standard options/macros to be used in particular
    configurations.

  example:  sync_configs model/inc/CPP_OPTIONS.h verification/*/code
            sync_configs eesupp/inc/CPP_EEOPTIONS.h verification/*/code


 killbug

    killbug miraculously eradicates pests and fixes bugs in all your
    source code, whatever the language, and even writes user documentation
    for you. No arguments are necessary since killbug will read your
    mind and figure out where your source code is.



A.



More information about the MITgcm-support mailing list