## page was renamed from ChangeUtilsLibrary == Make changes in Utils Library == The source code of the library ''utils'' is under the control of the CVS (Concurrent Version System) utility. It is checked out and installed in directory ''/usr/local/icg/icg1/local/utils'' and this library is linked by compiling a CLaMS program. Modifications in this directory will affect all other users directly. So if you want to change one of these routines, it should be modified and tested in a local version of the library ''utils'': 1. Check out library ''utils'' to ''$HOME/clams'' or - if it is already checked out - update all files: {{{ cvs co utils }}} or {{{ cvs update utils }}} 1. Make changes in ''$HOME/clams/utils/src''<
> If a parameter list in the files ''nc_copy_globals.f90'', ''nc_get_put.f90'' or ''nc_io.f90'' is changed, the corresponding interface in module ''nc_func'' must be modified too. 1. Compile library ''utils'': {{{ [make distclean] make theLibrary }}} If a parameter list of a subroutine or function in the library is modified, it is necessary to make ''distclean'' in directory ''$HOME/clams/utils'' before compiling the library. 1. Compile program with modified library: {{{ make distclean make utils_test=true progname }}} It is important to make ''distclean'' before compiling so that the correct module and library paths are used for compiling and linking. 1. Repeat steps 2 to 4 until modification is completed. 1. Commit the modified files in utils library to the repository: {{{ cvs commit -m "..." filename }}} 1. Send mail to Nicole or Verena. They can update the utils library in directory ''/usr/local/icg/icg1/local/utils'' which is used for compilations of CLaMS programs by default. Remarks: If you have compiled a program with a local utils library (with ''utils_test=true'') and later on you want to compile it with the default utils library, it is necessary to make ''distclean'' before compiling.