Home Contact Us Site Map  
 
       
    next up previous contents
Next: 6.1.2 Package Activation Up: 6.1 Using MITgcm Packages Previous: 6.1 Using MITgcm Packages   Contents

6.1.1 Package Inclusion/Exclusion

There are numerous ways that one can specify compile-time package inclusion or exclusion and they are all implemented by the genmake2 program which was previously described in Section 3.5. The options are as follows:

  1. Setting the genamake2 options -enable PKG and/or -disable PKG specifies inclusion or exclusion. This method is intended as a convenient way to perform a single (perhaps for a quick test) compilation.

  2. By creating a text file with the name packages.conf in either the local build directory or the -mods=DIR directory, one can specify a list of packages (one package per line, with '#' as the comment character) to be included. Since the packages.conf file can be saved, this is the preferred method for setting and recording (for future reference) the package configuration.

  3. For convenience, a list of ``standard'' package groups is contained in the pkg/pkg_groups file. By selecting one of the package group names in the packages.conf file, one automatically obtains all packages in that group.

  4. By default (that is, if a packages.conf file is not found), the genmake2 program will use the contents of the pkg/pkg_default file to obtain a list of packages.

  5. To help prevent users from creating unusable package groups, the genmake2 program will parse the contents of the pkg/pkg_depend file to determine:
    • whether any two requested packages cannot be simultaneously included (eg. seaice and thsice are mutually exclusive),
    • whether additional packages must be included in order to satisfy package dependencies (eg. rw depends upon functionality within the mdsio package), and
    • whether the set of all requested packages is compatible with the dependencies (and producing an error if they aren't).
    Thus, as a result of the dependencies, additional packages may be added to those originally requested.


next up previous contents
Next: 6.1.2 Package Activation Up: 6.1 Using MITgcm Packages Previous: 6.1 Using MITgcm Packages   Contents
mitgcm-support@dev.mitgcm.org
Copyright © 2002 Massachusetts Institute of Technology