z/OS ISPF Software Configuration and Library Manager Guide and Reference
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


FLMLANGL macro

z/OS ISPF Software Configuration and Library Manager Guide and Reference
SC19-3625-00

Use this macro to define a language to SCLM. Specify the name of the language and processing characteristics using the keywords supported by this macro. Specify the translators to be invoked for this language by using the FLMTRNSL macro after FLMLANGL.

The order in which data sets of various types are to be allocated for finding includes may be specified by using one or more FLMINCLS macros. The FLMALLOC macros following each FLMTRNSL macro are associated with FLMINCLS macros by use of the INCLS parameter.

Macro format

Read syntax diagramSkip visual syntax diagram
>>-FLMLANGL--LANG=language--+------------------+---------------->
                            |            .-N-. |   
                            '-,ALCSYSLB=-+-Y-+-'   

>--+--------------+--+---------------------------+-------------->
   |        .-N-. |  |           .-100---------. |   
   '-,ARCH=-+-Y-+-'  '-,BUFSIZE=-+-buffer_size-+-'   

>--+-----------------+--+-----------------------+--------------->
   |           .-Y-. |  |            .-PARSE--. |   
   '-,CANEDIT=-+-N-+-'  '-,CHKSYSLB=-+-BUILD--+-'   
                                     '-IGNORE-'     

>--+-----------------+--+-----------------+--------------------->
   |           .-N-. |  |           .-Y-. |   
   '-,COMPOOL=-+-Y-+-'  '-,DEPPRCS=-+-N-+-'   

>--+---------------------------------+-------------------------->
   '-,DFLTCRF=default_CREF_reference-'   

>--+-----------------------------------+------------------------>
   '-,DFLTSRF=default_source_reference-'   

>--+----------------------+--+---------------------------+------>
   |         .-NORMAL---. |  '-,VERSION=language_version-'   
   '-,SCOPE=-+-LIMITED--+-'                                  
             +-SUBUNIT--+                                    
             '-EXTENDED-'                                    

>--+--------------------------------+--+--------------------+--->
   '-,LANGDESC=language_description-'  |          .-0-----. |   
                                       '-,MBRLMT=-+-limit-+-'   

>--+----------------+------------------------------------------><
   |          .-N-. |   
   '-,ENCODE=-+-Y-+-'   

Parameters

LANG=language
A user-specified pseudonym for a language. It can be up to 8 characters. It is stored with the accounting information of editable members. Specify this name when you first define a member to SCLM.
,ALCSYSLB=N|Y
Indicates whether data sets on FLMSYSLB macros are allocated automatically for IOTYPE=I allocations (see FLMALLOC macro). If ALCSYSLB=N, use FLMCPYLB macros for each FLMSYSLB data set on IOTYPE=I allocations. If ALCSYSLB=Y, FLMSYSLB data sets are allocated by build following the allocation of the data sets from the project.

FLMSYSLB data sets are concatenated to the IOTYPE=I allocations for FLMALLOC macros when the FLMALLOC and FLMSYSLB macros both specify the INCLS parameter with the same value. If no INCLS parameter is specified on the FLMSYSLB macro, the FLMSYSLB data sets are concatenated to the FLMALLOC macros with IOTYPE=I and no INCLS parameter.

,ARCH=N|Y
Indicates whether a member parsed in this language is an architecture member. The default is N.
,BUFSIZE=buffer_size|100
The number of $list_info records SCLM allocates for a parse, verify, build, copy, or purge translator. The translator returns dependency information in the allocated memory. The default size is 100. The buffer_size must be large enough to accommodate the maximum number of entries returned in $list_info by any translator including one entry for the END record which is always required in a $list_info buffer. SCLM requires one record for each include, change code, user data record, or external dependency the translator returns.
,CANEDIT=Y|N
Indicates whether the language can be assigned to editable members. You should specify language definitions for linkage editors with CANEDIT=N. The default is Y.
,CHKSYSLB=PARSE|BUILD|IGNORE
Indicates when SCLM will check the FLMSYSLB data sets to determine if an include is to be tracked. If CHKSYSLB=PARSE, FLMSYSLB data sets are checked at parse time. Any includes not found in the hierarchy that are in FLMSYSLB data sets are not recorded in the accounting record. If CHKSYSLB=BUILD, FLMSYSLB data sets are checked at build time. Any includes not found in the hierarchy that are in FLMSYSLB data sets are recorded in the accounting record but not in the build map. If CHKSYSLB=IGNORE, any includes not found in the hierarchy at build time are ignored. They are recorded in the accounting record, but are not recorded in the build map. The build translator must determine if includes are missing and generate a return code indicating that the member could not be built.

Use IGNORE for workstation builds when the syslib data sets do not reside in a location that SCLM can check.

IGNORE can also be used to improve performance when your system libraries are fairly stable. By specifying IGNORE, you bypass the overhead of checking all system libraries at either parse or build time. The performance improvement can be significant, particularly when a large number of system libraries is specified in the language definition. The trade-off is that you invoke a translator that will fail when an include is not found. If your system libraries are fairly stable, it might be better to invoke the translator when occasionally an include might be missing, than to search all of the system libraries each time a member is either parsed or built.

,COMPOOL=N|Y
Indicates whether a compool output is required. If COMPOOL=Y is specified, SCLM verifies that a compool output is generated and saved in the hierarchy. SCLM issues a warning message if there is no output identified by the COMP architecture definition keyword.
,DEPPRCS=Y|N
Indicates whether components depending on the member being built are rebuilt if some outputs from the translator were not saved for this member. The default is Y.
,DFLTCRF=default_CREF_reference
Identifies the type that is substituted into the @@FLMCRF variable for include-set definitions. The @@FLMCRF variable can be used in the list of types to search for includes. The CREF statement architecture statement can be used to override this value. If both the CREF statement and DFLTCREF parameter are omitted the @@FLMCRF variable is ignored.

The value that is substituted into the @@FLMECR variable for include-set definitions is the extended type of the DFLTCRF type. If there is no extended type for the DFLTCRF type, the @@FLMECR variable is ignored.

,DFLTSRF=default_source_reference
A type name that can be used to allocate a hierarchical view. This hierarchical view is typically used by the translator to resolve references to SCLM hierarchy members. This parameter has no effect unless an FLMALLOC macro with IOTYPE=I and KEYREF=SREF is used for the language. SCLM ignores this parameter during a build if a CC, Generic, or LEC architecture definition is used to build the source member.
,SCOPE=LIMITED|NORMAL|SUBUNIT|EXTENDED
Indicates the minimum scope allowed. SCLM compares this parameter with the mode specified as input to build and promote functions to allow or disallow processing. The input mode must be of equal or greater value than the language scope. Valid scope values, in ascending order, are LIMITED, NORMAL, SUBUNIT, and EXTENDED. The default is NORMAL.
,VERSION=language_version
The 8-character version name associated with this language. Altering this parameter causes all source members under this language to be rebuilt. If you do not specify it, SCLM sets this parameter to blank.
,LANGDESC=language_description
The 40-character description associated with this language. If you do not specify this parameter, SCLM sets it to blank.
,MBRLMT=limit|0
Indicates the maximum number of source members that can be present in any input list presented to a translator. SCLM does not exceed the specified MBRLMT value (limit). If the default MBRLMT=0 is accepted or specified, there is no limit on the number of source members.
,ENCODE=N|Y
Specifies whether a member with this language is encoded or not. If ENCODE=Y is specified, SCLM decodes the member when it is read and encodes it when it is saved, either in the edit session, or when using the LOCK/PARSE/STORE, MIGRATE, or SAVE SCLM services.

Example 1

The language definition for PASCAL is defined.
     FLMLANGL LANG=PASCAL,VERSION=1.0,ALCSYSLB=Y

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014