//CXCOBPRM JOBCARD INFORMATION
//*
//*------------------------------------------------------------------
//*                 COPYRIGHT (C) 1995, SAS INSTITUTE INC.
//*                   UNPUBLISHED - ALL RIGHTS RESERVED
//*                      S A S / C   S A M P L E
//*
//*         NAME: CXCOBPRM
//*     LANGUAGE: JCL
//*      PURPOSE: THIS EXAMPLE DEMONSTRATES A C++ MAIN CALLING A
//*               COBOL ROUTINE, WHICH TAKES A PARAMETER LIST.
//*               IT CONSISTS OF SAMPLE LIBRARY MEMBERS
//*               CXCOBPC, CXCOBPCO, AND CXCOBPRM.
//*               THIS JCL COMPILES, LINKS, AND EXECUTES THESE MODULES.
//* MISC NOTES: THE FOLLOWING LSCL102 MESSAGE CAN BE IGNORED:
//*           CAN'T OPEN FILE DURING AUTOCALL: DDN:SYSLIB(IGZEBST)
//********************************************************************
//*****************************************************************
//*  NOTE: VERIFY THE STATEMENTS INDICATED BY THE "<== CHECK"
//*   HAVE BEEN CUSTOMIZED FOR THE LOCAL ENVIRONMENT.
//*****************************************************************
//**  COMPILE THE COBOL PROGRAM   **
//**********************************
//*
//CCOB        EXEC COB2UC,           <== CHECK: PROC FOR COMPILING COBOL
//            PARM.COB2='APOST RESIDENT'
//COB2.SYSLIN DD DSN=your.object.library(CXCOBPCO),DISP=OLD  <== CHECK
//COB2.SYSIN  DD DSN=prefix.SAMPLE.ILC(CXCOBPCO),DISP=SHR    <== CHECK
//*
//***************************************
//**  COMPILE THE C MAIN PROGRAM       **
//***************************************
//*
//COMPILE EXEC PROC=LCXXC            <== CHECK: PROC FOR COMPILING C++  ',
//X.SYSLIN    DD DSN=your.object.library(CXCOBPC),DISP=OLD  <== CHECK
//X.SYSTRIN   DD DSN=prefix.SAMPLE.ILC(CXCOBPC),DISP=SHR    <== CHECK
//*
//*******************************************
//**  ILCLINK COBOL AND C OBJECT MODULES   **
//*******************************************
//*
//ILCLINK EXEC ILCLINK,              <== CHECK: ILC PROC
//        PARM.LKED='NOTERM ECHO'
//LKED.SYSLMOD DD DSN=your.load.library,DISP=OLD           <== CHECK
//LKED.COBJ    DD DSN=your.object.library,DISP=SHR         <== CHECK
//LKED.COBOBJ  DD DSN=your.object.library,DISP=SHR         <== CHECK
//LKED.CLIBS   DD DSN=prefix.BASEOBJ,DISP=SHR              <== CHECK
//             DD DSN=prefix.STDOBJ,DISP=SHR               <== CHECK
//LKED.SYSARLIB DD DSN=prefix.A,DISP=SHR                   <== CHECK
//*
//* CHANGE THIS TO THE NON-COBOL2 LIBRARY IF NOT COBOL2
//LKED.COBLKD  DD DSN=local.cobol.COB2LIB,DISP=SHR         <== CHECK
//*
//* CHANGE "COBOL2" TO "COBOL" FOR NON-COBOL2 IN THE
//*         FIRST AND LANGUAGE STATEMENT BELOW
//LKED.ILCIN DD *
   FIRST MAIN(C)
   LANGUAGE COBOL2,C
   PROCESS CLINK
   AUTOCALL CLIBS
   INCLUDE COBJ(CXCOBPC)
   PROCESS LINK MAP,LIST,TERM,RMODE=24,AMODE=24
   AUTOCALL COBLKD
   INCLUDE COBOBJ(CXCOBPCO)
   NAME CXCOBPRM(R)
/*
//*
//**********************************
//**  RUN PROGRAM                 **
//**********************************
//*
//GO EXEC PGM=CXCOBPRM
//STEPLIB DD DSN=your.load.library,DISP=SHR               <== CHECK
//        DD DSN=prefix.LINKLIB,DISP=SHR                  <== CHECK
//*
//* CHANGE THIS TO THE NON-COBOL2 LIBRARY IF NOT COBOL2
//        DD DSN=local.cobol.COB2LIB,DISP=SHR             <== CHECK
//SYSOUT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSTERM DD SYSOUT=*
//