22.12.2012 Views

z/TPF Program Management - IBM

z/TPF Program Management - IBM

z/TPF Program Management - IBM

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

|<br />

Update the FACE table<br />

v If a function is called before the data is referenced, code<br />

<strong>TPF</strong>_RUN_<strong>TPF</strong>SOCHK:=NO in the makefile for the program.<br />

v If the program will not be used before all programs not marked as DEMAND in<br />

the control files have been fetched during restart, ensure that the program is<br />

defined as DEFAULT in its control file and code <strong>TPF</strong>_RUN_<strong>TPF</strong>SOCHK:=NO in the<br />

makefile for the program.<br />

v If you must code the program as DEMAND in the control files or if it is coded as<br />

DEFAULT but may be used before all programs not marked as DEMAND in the<br />

control files have been fetched during restart, the programs that are importing the<br />

data objects that triggered the warning can ensure that the exporting program<br />

has been fully fetched by issuing the GETPC macro or getpc function, or by<br />

calling a function in the exporting program before referencing the exported data<br />

object. You also must code <strong>TPF</strong>_RUN_<strong>TPF</strong>SOCHK := NO in the makefile for the<br />

program to avoid the warning in the future.<br />

v You also can avoid this warning by marking the program as PRELOAD in its<br />

control file.<br />

See “Control files” on page 103 for reference information about coding control files.<br />

For more information about Makefiles, enter man maketpf.mak on your Linux build<br />

system for a complete list of Makefile variables that can be coded.<br />

To update the file address compute (FACE) program table, follow these steps:<br />

1. Copy the sip.asm file to your user directory. For example, if you are working on<br />

the basic subsystem (BSS), enter:<br />

mkdir -p /home/joe/mywork/bss/src<br />

cp /tpf/z11/bss/src/sip.asm /home/joe/mywork/bss/src/sip.asm<br />

2. Edit the sip.asm file that you just copied and update the data definition<br />

statements (RAMFIL, UFTFTI, ONLFIL, and others).<br />

3. Enter the bldtpf command to generate an alternate FACE table (FCTB). This<br />

example assumes that a file named maketpf.cfg exists in the<br />

/home/joe/mywork/build directory:<br />

cd /home/joe/mywork/build<br />

bldtpf -fctb /home/joe/mywork/bss/src/sip.asm<br />

Note: This command produces an updated FCTB (FCTB.so) and a set of source<br />

files and macros that are produced while assembling the FCTB.o object.<br />

See “bldtpf utility” on page 5 for more information on the bldtpf command; also,<br />

enter man bldtpf on your Linux system for more information, including the<br />

syntax.<br />

4. Enter the fctbval command to check your changes to the FCTB. For example:<br />

fctbval /tpf/z11/bss/load/FCTB.so /home/joe/mywork/bss/load/FCTB.so<br />

This command performs the same FCTB validations that are done online with<br />

the ZFCTB LOAD command and produces a list of differences to help you verify<br />

your changes. If there are validation errors or differences that you do not<br />

expect, repeat the procedure from step 2 and make any necessary corrections.<br />

See “fctbval utility” on page 5 for more information about the fctbval command;<br />

also, enter man fctbval on your Linux system for more information, including<br />

the syntax.<br />

5. Load the alternate FCTB to your z/<strong>TPF</strong> system. In this example, step 3 placed<br />

the FCTB in /home/joe/mywork/bss/load/FCTB.so.<br />

Assemble, compile, and link (build) application programs 71

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!