Chapter Contents |
Previous |
Next |
Preprocessing, Compiling, and Linking |
COOL Options lists the options available for the COOL utility and the systems to which these options apply. A description of each option follows the table.
Option | TSO | CMS | OS/390 Batch |
---|---|---|---|
ALLRESIDENT
|
X | X |
|
AUTO
|
|
X |
|
CICS
|
X | X |
|
CICSVSE
|
X | X |
|
CXX
|
X | X |
|
ENTRY
|
X |
|
|
ENXREF
|
X | X | X |
EXTNAME
|
X | X | X |
GLOBAL
|
|
X |
|
LIB
|
X |
|
|
LKED
|
|
X |
|
LOAD
|
X |
|
X |
LOADLIB
|
X |
|
|
PREM
|
X | X | X |
PRINT
|
|
X | |
SPE
|
X | X |
|
TERM
|
X | X | X |
UPPER
|
X | X | X |
WARN
|
X | X | X |
ALLRESIDENT
CICS
or
CICSVSE
keywords, names
SASC.CICS.ARESOBJ, SASC.CICSOBJ, and SASC.BASEOBJ to be used automatically
as call libraries:
ALLRESIDENTThis option should be specified when linking all-resident programs. See also the
CICS
and
CICSVSE
options.
AUTO
NOAUTO
suppresses resolution
of external references by object files. The
AUTO
option is similar
to the AUTO option of the CMS LOAD command. When
AUTO
is in effect, COOL
attempts to resolve external references by searching for files named ref TEXT, where ref is the name
of the external reference. If no TEXT file with that name can be found, COOL
attempts to resolve the reference from the GLOBAL TXTLIBs.
CICS
ALLRESIDENT
option, the CICSARES, LC370CIC, and LC370BAS TXTLIBs are global.
If you specify this option with the
SPE
option, the LC370BAS
and LC370SPC TXTLIBs are global.
Under TSO, by default, this option specifies that SASC.BASEOBJ
and SASC.CICSOBJ are to be used automatically as call libraries. If you specify
this option with the
ALLRESIDENT
option, the SASC.CICS.ARESOBJ
data set is also used as an autocall library. If you specify this option
with the
SPE
option, the SASC.CICS.SPEOBJ and SASC.BASEOBJ
data sets are used automatically as call libraries.
CICSVSE
ALLRESIDENT
option, the CICSARES, LC370VSE, and LC370BAS
TXTLIBs are global. If you specify this option with the
SPE
option, the LC370BAS and LC370SPC TXTLIBs are global.
Under TSO, by default, this option specifies that SASC.BASEOBJ
and SASC.VSEOBJ are to be used automatically as call libraries. If you specify
this option with the
ALLRESIDENT
option, the SASC.CICS.ARESOBJ
data set is also used as an autocall library. If you specify this option
with the
SPE
option, the SASC.CICS.SPEOBJ and SASC.BASEOBJ
data sets are used automatically as call libraries.
CXX
NOCXX
specifies that the
object code being linked is not produced by compiling output from the C++
translator.
NOCXX
is the default.
ENTRY
The
ENTRY
keyword can be specified in
the following ways:
ENTRY(MAIN)
main
function. The actual entry point is MAIN.
ENTRY(DYN)
loadm
) module. The actual entry point is #DYNAMN.
ENTRY(CSPE)
cicsmain
. The actual entry point is #CICSEP.
ENTRY(NONE)
ENTRY(NONE)
is recommended only if
a linkage-editor
ENTRY
statement is present in one of the input files.
If
ENTRY
is not specified,
ENTRY(MAIN)
is assumed, unless
SPE
is specified; in that
case,
ENTRY(NONE)
is assumed.
ENXREF
SNAME
,
CID
,
and
LINKID
. The cross-reference
SNAME
is in alphabetic order by the
SNAME
that uniquely identifies
an object file.
CID
displays the extended names in alphabetic order
by the C identifier.
LINKID
displays the extended names
in alphabetic order by a linkid that COOL assigns.
NOENXREF
suppresses the
production of all extended names cross-references.
Under TSO, the
ENXREF
option takes the
following form:
ENXREF('NOSNAME,NOCID,NOLINKID')
For example, the following option suppresses the
SNAME
cross-reference:
ENXREF('NOSNAME')
Under CMS, the
ENXREF
option takes the
following form: 9pt
ENXREF <NOSNAME> <NOCID> <NOLINKID>
For example, the following option suppresses the
SNAME
cross-reference:
ENXREF NOSNAME
Under OS/390 batch, the
ENXREF
option takes the
following form:
ENXREF(NOSNAME,NOCID,NOLINKID)
For example, the following option suppresses the
SNAME
cross-reference:
ENXREF(NOSNAME)
EXTNAME
NOEXTNAME
specifies that COOL will
not process extended names.
_asm
or HLL (for example,
_pascal
) function.
Note:
If you specify the
EXTNAME
option, be sure to include the appropriate header files for library
functions that you use. Some library functions, such as
localtime
and
setlocale
, are more than eight characters long and,
therefore, fit the criteria for extended names. The library header files
for these functions all contain
#pragma map
statements
that change the function names to names that are not extended.
If you do not include the appropriate library header
file for a library function, the compiler creates unpredictable external symbols
that cannot be resolved from the standard library. For more information on
#pragma map
, refer to Chapter 2, "Source Code Conventions," in the
SAS/C Compiler and Library User's Guide.
GLOBAL
NOGLOBAL
suppresses automatic query of the GLOBALV variable TXTLIBS:
the EXEC does not issue a GLOBAL TXTLIB command based on the GLOBALV variable.
LIB
LIB (dsname)If the library belongs to another user, the fully qualified name of the data set must be given, and the name must be preceded and followed by three apostrophes. No final qualifier is assumed for a
LIB
data set.
LKED
LKED
command for COOL370 TEXT using the
LKED
options specified.
The
LKED
option must follow any use of any other option
on the command line. The
LKED
option causes the COOL EXEC to
issue the following CMS command after COOL has created the COOL370 TEXT file:
LKED COOL370 (options)where options are any
LKED
command options specified
following the
LKED
keyword.
LOAD
LOAD(dsname)
This keyword should specify a partitioned data set member.
If the data set belongs to another user, the fully qualified name of the
data set must be given, and the name must be preceded and followed by three
apostrophes. If the data set name is not specified within three apostrophes,
it is assumed to be a data set name with a final qualifier of
LOAD
.
Additional considerations follow:
LOAD
keyword is not used,
the load module data set is determined by replacing the final
OBJ
qualifier in the object data set name with
LOAD
.
LOAD
data set.
LOADLIB
LOADLIB(dsname)
If the library belongs to another user, the fully qualified
name of the data set must be given, and the name must be preceded and followed
by three apostrophes. Functions in the
LOADLIB
data set are resolved
by the linkage editor, not by COOL. COOL diagnoses these functions as unresolved.
No final qualifier is assumed for a
LOADLIB
data set. You
must use
LOADLIB
, rather than
LIB
, to reference libraries
that are associated with IBM products such as ISPF and GDDM because those
libraries are stored in load module format.
PREM
NOPREM
specifies that COOL is not to remove pseudoregisters from the
output object module.
PREM
is the default under CMS;
NOPREM
is the default under OS/390. The
PREM
option is rarely used
in TSO or under OS/390. However, if you are linking programs for CICS/VSE,
you must specify this option.
PRINT
PRINT(*)
PRINT (dsname)
The following keyword specifies that no linkage editor or COOL listing is to be produced:
NOPRINT
If you use the
NOPRINT
operand with CLK370,
COOL and linkage-editor output (except for diagnostic messages) is suppressed.
If neither
PRINT
nor
NOPRINT
is used, the default is
NOPRINT
.
SPE
SPE
is used while also
specifying the CICS or CICSVSE keywords, the CICS SPE libraries are used to
link the application. Under CMS, the GLOBAL TXTLIB command is issued for
the LC370SPC and LC370BAS TXTLIBs. Under TSO, the GLOBAL TXTLIB command causes
the SASC.CICS.SPEOBJ and SASC.BASEOBJ data sets to be used automatically as
call libraries.
TERM
stderr
(SYSTERM) in addition to
stdout
.
NOTERM
suppresses the error message listing to
stderr
. This is the
default.
UPPER
WARN
NOWARN
suppresses warning messages.
Chapter Contents |
Previous |
Next |
Top of Page |
Copyright © 2001 by SAS Institute Inc., Cary, NC, USA. All rights reserved.