//COBOL2C JOBCARD INFORMATION
//*
//*------------------------------------------------------------------
//*                 COPYRIGHT (C) 1995, SAS INSTITUTE INC.
//*                   UNPUBLISHED - ALL RIGHTS RESERVED
//*                      S A S / C   S A M P L E
//*
//*         NAME: COBOL2C
//*     LANGUAGE: JCL
//*      PURPOSE: THIS EXAMPLE DEMONSTRATES CALLING C FUNCTIONS
//*               FROM COBOL, WHICH THEN CALL OTHER C FUNCTIONS.
//*               IT CONSISTS OF SAMPLE LIBRARY MEMBERS
//*               COB2CC1, COB2CC2, COB2CCO, AND COBOL2C.
//*               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 COBOL2
//            PARM.COB2='APOST RESIDENT'
//COB2.SYSLIN  DD DSN=your.object.library(COB2CCO),DISP=OLD  <== CHECK
//COB2.SYSIN   DD DSN=sasc.SAMPLE.ILC(COB2CCO),DISP=SHR      <== CHECK
//*
//**********************************
//**  COMPILE THE C PROGRAM       **
//**********************************
//*
//COMPILE EXEC LC370C,           <== CHECK: PROC FOR COMPILING C
//*                              <== MUST COMPILE WITH INDEP
//        PARM.C='INDEP SNAME(CPROG) EXTNAME'
//C.SYSLIN  DD DSN=your.object.library(COB2CC1),DISP=OLD     <== CHECK
//C.SYSIN   DD DSN=sasc.SAMPLE.ILC(COB2CC1),DISP=SHR         <== CHECK
//*
//****************************************
//**  COMPILE THE EXTENDED NAME FUNCTION *
//****************************************
//*
//COMPILE EXEC LC370C,           <== CHECK: PROC FOR COMPILING C        ',
//        PARM.C='SNAME(EXTFUNC) EXTNAME'                               ',
//C.SYSLIN  DD DSN=your.object.library(COB2CC2),DISP=OLD     <== CHECK
//C.SYSIN   DD DSN=sasc.SAMPLE.ILC(COB2CC2),DISP=SHR         <== CHECK
//*
//**********************************
//**  LINK COBOL AND C PROGRAMS   **
//**********************************
//*
//ILCLINK EXEC ILCLINK,              <== CHECK: ILC LINK 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
//* 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 COBMAIN(COBOL2)
   LANGUAGE COBOL2,C
   PROCESS CLINK
   AUTOCALL CLIBS
   INCLUDE COBJ(COB2CC1)
   INCLUDE COBJ(COB2CC2)
   PROCESS LKED LIST,MAP,XREF
   AUTOCALL COBLKD
   INCLUDE COBOBJ(COB2CCO)
   ENTRY COBMAIN
   NAME COBOL2C(R)
/*
//*
//**********************************
//**  RUN PROGRAM                 **
//**********************************
//*
//GO EXEC PGM=COBOL2C
//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
//SYSPRINT DD SYSOUT=*
//SYSTERM DD SYSOUT=*
//SYSOUT   DD SYSOUT=*
//*
//