Chapter Contents

Previous

Next
Systems Programming with the SAS/C Compiler

Linking for SPE


Under OS/390

In general, the autocall (SYSLIB) input data set for SPE programs is a concatenation of these elements in the following order:

  1. your own autocall libraries (including modified versions of SPE routines)

  2. the data set SASC.SPEOBJ (the SPE object library)

  3. the base resident library data set SASC.BASEOBJ.

You can use the SPE operand of the COOL CLIST or the ENV=SPE operand of the cataloged procedures to define these libraries in the correct order.


Under CMS

To create a MODULE file for a program using the SPE framework, issue the CMS GLOBAL command for these elements in the following order before issuing the LOAD and GENMOD commands:

  1. your autocall TXTLIB(s) (including modified versions of SPE routines)

  2. LC370SPE TXTLIB (the SPE TEXT library)

  3. the base resident library LC370BAS TXTLIB.

You can use the SPE operand of the COOL EXEC to make these GLOBAL libraries in the correct order.


Under CICS

The autocall (SYSLIB) input data set for CICS SPE programs is a concatenation of these elements in the following order:

  1. your own autocall libraries (including modified versions of CICS SPE routines)

  2. the data set SASC.CICS.SPEOBJ (the CICS SPE object library)

  3. the base resident library data set SASC.BASEOBJ.

You can use the LCCCL cataloged procedure under OS/390 and specify the symbolic parameters ENV=CICS.SPE and ENTRY=CSPE to define these libraries in the correct order and to select the correct entry point. You can also use the CICS and SPE operands in the COOL clist on TSO to perform the same function.

If you are developing your CICS SPE application under CMS, you can specify the CICS and SPE operands when you invoke the COOL EXEC. The resulting object code must be shipped to the OS system containing the CICS system on which you plan to run. The object code must also be link-edited with the CICS command-level stubs.

Use the following linkage editor control statements when you build your load module:

INCLUDE SYSLIB (DFHEAI)
INCLUDE SYSLIB (DFHEAI0)
ORDER DFHEAI

where the DDname SYSLIB points to the CICS load library containing the command-level stubs.

If your SPE application is targeted for a CICS/VSE system and you are using INDEP, you must include manually the VSE version of L$UPREP that is named L$UPREPD.


Caution

If your program calls a function that is not supported in the SPE framework and you use the standard resident library data set as an autocall library, no error occurs when the program is linked. At execution time, the library may issue a user ABEND 1212 or there may be other, unpredictable results. Refer to "The SPE Library" earlier in this chapter for information on the functions that can be used in the SPE framework.


Chapter Contents

Previous

Next

Top of Page

Copyright © 2001 by SAS Institute Inc., Cary, NC, USA. All rights reserved.