To determine which modules to install and where to install them,
SMP/E checks the MOD, LMOD, and DLIB entries. A module should be installed
if it meets all the following conditions:
- The module has a DISTLIB subentry. DISTLIB indicates the distribution
library or other data set containing the module.
- The module has at least one LMOD subentry, or the module distribution
library was totally copied during initial installation. If the module
contains an LMOD subentry, SMP/E checks for a SYSLIB entry in the
corresponding LMOD entry. If the module is part of a totally copied
library, SMP/E checks for a SYSLIB subentry in the DLIB entry for
the distribution library. SYSLIB indicates the target library where
the module should be installed.
- The FMID that owns the module matches an FMID specified on the
FORFMID operand. This
is not checked if FORFMID was not specified.
Note: - If the module does not have an FMID subentry, it may still be
eligible if it is assembled by use of a macro owned by an FMID that
was specified on the FORFMID operand. This is described in Determining whether a module must be assembled.
- If FORFMID was not specified and SMP/E
cannot determine which FMID owns the element, the module is still
selected. If the module is not found in the distribution library,
however, an error may result. This is not an error if one product
has linked a module from another product that resides in a different
target zone.
Besides checking which modules to install and which libraries to
install them in, SMP/E must also determine these situations:
- Whether the module must be assembled before it is installed
- What load module to install the module into
- Whether to copy or link-edit the module