//FORTCXX JOBCARD INFORMATION //*------------------------------------------------------------------ //* COPYRIGHT (C) 1995, SAS INSTITUTE INC. //* UNPUBLISHED - ALL RIGHTS RESERVED //* S A S / C S A M P L E //* //* NAME: FORTCXX //* LANGUAGE: JCL //* PURPOSE: THIS EXAMPLE DEMONSTRATES A FORTRAN PROGRAM CALLING //* A C++ FUNCTION. //* IT CONSISTS OF SAMPLE LIBRARY MEMBERS //* FORTCXXC, FORTCXXF, AND FORTCXX. //* THIS JCL COMPILES, LINKS, AND EXECUTES THESE MODULES. //* MISC NOTES: THE FOLLOWING LSCL102 MESSAGES CAN BE IGNORED: //* WARNING: CAN'T OPEN FILE DURING AUTOCALL: DDN:SYSLIB(IFYVINTE) //* WARNING: CAN'T OPEN FILE DURING AUTOCALL: DDN:SYSLIB(VFEE#) //* WARNING: CAN'T OPEN FILE DURING AUTOCALL: DDN:SYSLIB(VFES#) //*----------------------------------------------------------------- //* //***************************************************************** //* NOTE: Verify the statements indicated by the "<== CHECK" //* have been customized for the local environment. //***************************************************************** //* //* AN EXAMPLE SHOWING FORTRAN CALLING C USING ILCLINK //* //FCOMP EXEC FORTVC <=== CHECK: PROC //FORT.SYSLIN DD DSN=your.object.library(FORTCXXF),DISP=OLD <== CHECK //FORT.SYSIN DD DSN=prefix.SAMPLE.ILC(FORTCXXF),DISP=SHR <== CHECK //* //SASCC EXEC LCXXC,PARM.X='SN(CPROG),INDEP' <== CHECK: C++ COMPILE PROC //* <== MUST COMPILE WITH INDEP //X.SYSLIN DD DSN=your.object.library(FORTCXXC),DISP=OLD <== CHECK //X.SYSTRIN DD DSN=prefix.SAMPLE.ILC(FORTCXXC),DISP=SHR <== CHECK //* //ILCLINK EXEC ILCLINK, <== CHECK: ILC PROC // PARM.LKED='NOTERM ECHO' //LKED.SYSLMOD DD DSN=your.load.library,DISP=OLD <== CHECK //LKED.SYSARLIB DD DSN=prefix.A,DISP=SHR <=== CHECK //LKED.COBJ DD DSN=your.object.library,DISP=SHR <== CHECK //LKED.FOROBJ 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.FORLKD DD DSN=local.fortran.VFORTLIB,DISP=SHR <== CHECK //* //LKED.ILCIN DD * FIRST FORPRG(FORTRAN) LANGUAGE FORTRAN,C PROCESS CLINK AUTOCALL CLIBS INCLUDE COBJ(FORTCXXC) PROCESS LKED LIST LET RENT MAP AUTOCALL FORLKD INCLUDE FOROBJ(FORTCXXF) ENTRY FORPRG NAME FORTCXX(R) /* //* //GO EXEC PGM=FORTCXX //STEPLIB DD DSN=your.load.library,DISP=SHR <== CHECK // DD DSN=local.fortran.VFORTLIB,DISP=SHR <== CHECK // DD DSN=prefix.LINKLIB,DISP=SHR <== CHECK //FT06F001 DD SYSOUT=* //SYSTERM DD SYSOUT=* //SYSPRINT DD SYSOUT=* //