- CSECT
- lists all the CSECTs contained in the module. This operand is
required if the module contains more than one CSECT or if the CSECT
name is different from the module name on the ++MOD MCS.
- If no CSECT name is specified, SMP/E assumes that the module contains
only one CSECT, whose name matches the module name on the ++MOD MCS.
- If CSECT is specified, it must include all the
CSECTs contained in the module, even if one of them has the same name
as the module.
Note: - A CSECT name can contain from 1 to 8 characters. The name can
contain any characters except the following:
- Comma ,
- Left parenthesis (
- Right parenthesis )
- Blank
- Comments are not allowed within a CSECT name. For example, the
following is not allowed:
CSECT ( /* this is a csect name */ CSECT01)
The
comment is interpreted as part of the CSECT name, instead of a comment.
- Even if CSECT is not specified on the ++MOD
MCS used to create a MOD entry, CSECT information is saved if CSECT is
specified on subsequent ++MOD statements that update the MOD entry.
- DALIAS
- is the alias name of a module that has an alias in the distribution
library, but not in the target library. This might be used if the
module is included under its alias name during system generation.
Note: DALIAS
is mutually exclusive with TALIAS.
- DELETE
- indicates that the module and alias names are to be removed from
the target libraries, distribution libraries, and SMP/E data sets.
In
order to DELETE a module, the FMID on the SYSMOD must match the FMID
of the module. If the module has no FMID associated with it, then
the SYSMOD will delete the module. If the FMID of the module does
not match the FMID on the SYSMOD, then the SYSMOD will not delete
the module, because the specified FMID does not own the module.
Note: DELETE
is mutually exclusive with all other operands except CSECT, DISTLIB,
and VERSION.
- DISTLIB
- specifies the ddname of the distribution library for the specified
module.
Note: - This operand must be specified if the module has not been previously
recorded on the target zone or distribution zone. If a MOD entry already
exists in the target zone or distribution zone and the value currently
in that entry does not match that specified in the DISTLIB operand,
the SYSMOD is not applied or accepted, unless that SYSMOD also used
the ++MOVE MCS to change the DISTLIB to that new value.
- You cannot use SYSPUNCH as the DISTLIB. It is used by SMP/E and
other products to process assembled modules.
- FROMDS
- identifies the partitioned data set that contains this element.
Note: The
FROMDS operand and its DSN, NUMBER, VOL, and UNIT suboperands are
included in the MCS generated by the BUILDMCS command. IBM® does not intend the FROMDS operand to be
used in manually coded MCS.
- DSN
- specifies the dsname of the FROMDS data set. The specified data
set name must conform to standard data set naming conventions and
cannot contain parentheses. The maximum length of the entire name
is 44 characters (including the periods).
- NUMBER
- specifies a number that SMP/E is to use when assigning a name
to the SMPTLIB data set associated with this FROMDS data set. (This
is similar to the way the relative file number is used in RELFILE
processing.)
- VOL
- specifies, for an uncataloged data set, the volume serial number
of the volume containing the FROMDS data set. If specified, this volume
identifier must be from 1 to 6 alphanumeric characters.
VOL may
be omitted for a cataloged data set.
- UNIT
- specifies, for an uncataloged data set, the UNIT type containing
the FROMDS data set. If specified, the UNIT value must be from 1 to
8 characters and must conform to standard UNIT naming conventions. IBM SMP/E for z/OS, V3R6 accepts
any nonblank characters specified between the open and close parentheses,
up to a maximum length of 8.
UNIT may be omitted for a cataloged
data set.
Note: FROMDS is mutually exclusive with DELETE, LKLIB,
RELFILE, and TXLIB.
- LEPARM
- specifies link-edit utility attributes for the module. Any of
the following values can be specified:
|--AC(1)--ALIGN2--+-+-AMODE(24)-+--+--+-COMPAT(LKED)-+--DC------>
| '-AMOD(24)--' | +-COMPAT(PM1)--+
+-+-AMODE(31)-+--+ +-COMPAT(PM2)--+
| '-AMOD(31)--' | +-COMPAT(PM3)--+
+-+-AMODE(64)-+--+ '-COMPAT(PM4)--'
| '-AMOD(64)--' |
+-+-AMODE(ANY)-+-+
| '-AMOD(ANY)--' |
'-+-AMODE(MIN)-+-'
'-AMOD(MIN)--'
>--FETCHOPT--(--+-PACK---+--,--+-PRIME---+--)--FILL--(--nn--)--->
'-NOPACK-' '-NOPRIME-'
>--HOBSET--MAXBLK--(--nnnnn--)--NE--+-NOCALL-+--OL--OVLY-------->
'-NCAL---'
>--+-+-REFR-------+--+-RENT-------+--+-REUS---------+-+--------->
| '-REUS(REFR)-' '-REUS(RENT)-' '-REUS(SERIAL)-' |
'-REUS(NONE)---------------------------------------'
>--+-+-RMODE(31)-+----+--SCTR--+-UPCASE(YES)-+------------------|
| '-RMOD(31)--' | '-UPCASE(NO)--'
+-+-RMODE(24)-+----+
| '-RMOD(24)--' |
+-+-RMODE(ANY)-+---+
| '-RMOD(ANY)--' |
'-+-RMODE(SPLIT)-+-'
'-RMOD(SPLIT)--'
Note: - The LEPARM values from the ++MOD MCS are associated with a load
module entry only if the module was copied, not link-edited, into
the target libraries. (The COPY indicator is set in the load module
entry.) If the load module was link-edited, JCLIN must be used to
change its link-edit utility attributes.
- During APPLY processing of a ++MOD MCS with LEPARMs, the LEPARM
options are saved not in the MOD entry created, but in the LMOD entry.
During ACCEPT processing, the MOD entry is created with the LEPARMs
present. The target zone MOD entry can contain the LEPARM options
through either UCLIN or the copying of the distribution zone to a
target zone.
- All LEPARM attributes may also be specified in the format ‘attribute=value’.
For example, FILL(nn) may also be specified as
FILL=nn.
- The previously listed link-edit attributes are the only attributes
that can be specified on the LEPARM operand. If any other attributes
are specified, a syntax error will result during RECEIVE processing.
- The LEPARM values of DCBS, LET, LIST, XCAL, and XREF are recognized
by SMP/E, but are not saved. Specifying them on the ++MOD MCS does
not cause them to be passed to the link-edit utility.
- RMODE(31) is a synonym for RMODE(ANY).
For more information about how the LEPARM operand
is processed, see the topics on ACCEPT and APPLY processing in SMP/E for z/OS Commands.
These attributes are described in full in MOD entry (distribution and target zone).
- LKLIB
- is the ddname of the partitioned data set containing the link-edited
format of the object module. This operand is required if the module
is provided in a data set, rather than inline or on a tape.
Note: LKLIB is mutually
exclusive with FROMDS, RELFILE, and TXLIB.
- LMOD
- lists existing load modules that are to contain the module. If
any of the names specified are not already LMOD subentries in the
target zone MOD entry, they are added during APPLY processing.
Note: - LMOD can be used only to add a module to an existing load module.
- LMOD cannot be used to create a new load module. Nor can it be
used if any link-edit control statements must be added or changed
to add the module to an existing load module. However, you can use
JCLIN data to create a new load module and to add or change link-edit
control statements.
- If an LMOD entry does not exist for one of the load modules specified,
sufficient information is not available to create one. Thus, when
the MOD is to be link-edited during APPLY processing, an error message
is issued, and no link-edit is performed for that load module.
- name
- specifies the name of the module in the distribution library and,
optionally, in the target library. The name can contain any alphanumeric
characters and $, #, @, or hex C0.
- RELFILE
- identifies which relative file associated with the SYSMOD contains
this module.This
operand is required if you provide the element in RELFILE format,
rather than inline or in a LKLIB or TXLIB data set.
Note: - RELFILE is mutually exclusive with FROMDS, LKLIB, and TXLIB.
- If an object module is provided in RELFILE format, it must be
in link-edited format.
- RMID
- specifies the last SYSMOD that replaced this module. This
operand can be used only in a service-updated function, and the specified
PTF must be integrated into the function.
- TALIAS
- specifies one or more alias names for the module. The aliases
exist in the distribution library and the target library.
You can
use TALIAS for a module that was copied from a distribution library
into a target library (defined by JCLIN data as a copied module),
but not for one that is link-edited (defined by JCLIN data as a link-edited
module).
Note: TALIAS must be specified on the ++MOD
MCS even if ALIAS was specified on the COPY SELECT statement. TALIAS is
required for the RECEIVE command to properly handle aliases in RELFILEs.
During RECEIVE processing, SMP/E copies RELFILEs to SMPTLIB data
sets. All element members and their associated aliases are copied.
Because JCLIN is not processed during RECEIVE, the aliases must be
identified on the MCS to get RECEIVE to copy the aliases.
Likewise,
to specify an alias for a copied load module, you must use the TALIAS
operand on the ++MOD statement for that load module.(To specify an
alias for a link-edited load module, do not use TALIAS. You must identify
that alias using an ALIAS link-edit control statement in the JCLIN
that defined the load module. For more information, see SMP/E for z/OS Commands.)
Note: TALIAS
is mutually exclusive with DALIAS.
- TXLIB
- is the ddname of the partitioned data set containing an object
module that has not been link-edited. This operand is required if
the module is provided in a TXLIB data set rather than inline, in
a FROMDS data set, in a LKLIB data set, or in RELFILE format.
Note: - SMPTLIB cannot be used as a value on the TXLIB operand.
- TXLIB is mutually exclusive with FROMDS, LKLIB, and RELFILE.
- UMID
- specifies the SYSMODs that have updated this module since
it was last replaced. This operand can be used only in a service-updated
function, and the specified PTFs must be integrated into the function.
- VERSION
- specifies one or more function SYSMODs that currently contain
the element. The function containing the ++MOD MCS takes over ownership
of the element from the specified functions.
When VERSION is
specified on an element statement, it overrides any VERSION operand
values specified on the ++VER MCS.