Modify the JCL to run the COBOL Language Processor
You may optionally perform this step if you are installing BMC AMI DevX Code Debug for TSO and you are licensed for the BMC COBOL language processor. BMC AMI DevX Code Debug for TSO users can either perform this step now in batch mode, or online as part of the BMC AMI DevX Code Debug for TSO installation procedure.
This step contains instructions for both the COBOL language preprocessor and post-processor. You should follow the instructions that apply to the type of processing you will be performing.
Preprocessor
SLCXCNTL sample library member CXCOBPRE contains sample JCL necessary to run the COBOL language preprocessor.
Modify the compile step of your COBOL JCL:
On the EXEC statement, change the name of your compiler to CWPCMAIN and add the following to any existing COBOL compiler options:
LANGUAGE(compiler version)
Post-processor
You can use the post-processor to process compile listings that were previously stored, or you can modify your COBOL compile JCL to pass the compiler listing to the post-processor as described here.
- Check the COBOL compiler options.
- Change the COBOL compiler JCL to write the compiler listing (SYSPRINT) to a sequential file that can be used as input to the COBOL language post-processor. A sample of the necessary JCL is shown here.
// DISP=(MOD,PASS) <===== CA-OPTIMIZER NEEDS 'MOD'
The above example is a temporary file. You can save the JCL as a permanent file to be reused as shown in the example here:
- The SYSPRINT file will be LRECL=133, RECFM=FBA.
- Add SLCXCNTL sample library member CXCOB1 as the post-processor step following your COBOL compile step.
- Determine the language processor options you will use as input and add them to the EXEC parameter, or add a CWPPRMO DD statement that points to the appropriate options. Sample options are contained in SLCXCNTL sample library members CXLPCOBB (for batch programs) and CXLPCOBC (for CICS programs) to provide the smallest output to the source listing file (for minimizing space) and generate a printout of the COBOL listing. When using these options, a printout of the listing from the DDIO file will contain only the source statements. The XREF and other portions of the listing will not be written to the DDIO file. If you use the sample options, note the following:
- If you do not have BMC AMI DevX Code Debug for TSO, remove DDIO(OUTPUT(FIND)).
- If the program will be used by BMC AMI DevX Code Debug for CICS or BMC AMI DevX Abend-AID for CICS, use the options in sample CXLPCOBC.
The SLCXCNTL sample library members that are supplied for the COBOL language post-processor invoke the language processor in different ways:
SCNTL Sample Library Members for COBOL Language Processor
Member | Purpose |
CXCOB1 | Processes compiler listings through the language post-processor. Add this JCL after your COBOL compile step and before your link edit step (if one exists). |
CXCOB2 | Postprocesses compiler listings stored from a previous compile job. Use this JCL to process listings that have been previously compiled and stored in machine-readable format. |
CXCOB99 | Compiles COBOL programs and feeds the compiler output into the COBOL post-processor. |
- The CWPPRTO file will be LRECL=133, RECFM=FBA.
- The CWPLOAD file must be allocated using DISP=OLD or DISP=SHR.
- The object module that is processed by the post-processor must be used as input to the linkedit step.