Commit | Line | Data |
---|---|---|
5ca28f79 L |
1 | /******************************************************************************/ |
2 | /* */ | |
3 | /* ZLIB */ | |
4 | /* */ | |
5 | /* Compile sources into modules and link them into a service program. */ | |
6 | /* */ | |
7 | /******************************************************************************/ | |
8 | ||
9 | PGM | |
10 | ||
11 | /* Configuration adjustable parameters. */ | |
12 | ||
13 | DCL VAR(&SRCLIB) TYPE(*CHAR) LEN(10) + | |
14 | VALUE('ZLIB') /* Source library. */ | |
15 | DCL VAR(&SRCFILE) TYPE(*CHAR) LEN(10) + | |
16 | VALUE('SOURCES') /* Source member file. */ | |
17 | DCL VAR(&CTLFILE) TYPE(*CHAR) LEN(10) + | |
18 | VALUE('TOOLS') /* Control member file. */ | |
19 | ||
20 | DCL VAR(&MODLIB) TYPE(*CHAR) LEN(10) + | |
21 | VALUE('ZLIB') /* Module library. */ | |
22 | ||
23 | DCL VAR(&SRVLIB) TYPE(*CHAR) LEN(10) + | |
24 | VALUE('LGPL') /* Service program library. */ | |
25 | ||
26 | DCL VAR(&CFLAGS) TYPE(*CHAR) + | |
27 | VALUE('OPTIMIZE(40)') /* Compile options. */ | |
28 | ||
29 | DCL VAR(&TGTRLS) TYPE(*CHAR) + | |
30 | VALUE('V5R3M0') /* Target release. */ | |
31 | ||
32 | ||
33 | /* Working storage. */ | |
34 | ||
35 | DCL VAR(&CMDLEN) TYPE(*DEC) LEN(15 5) VALUE(300) /* Command length. */ | |
36 | DCL VAR(&CMD) TYPE(*CHAR) LEN(512) | |
37 | DCL VAR(&FIXDCMD) TYPE(*CHAR) LEN(512) | |
38 | ||
39 | ||
40 | /* Compile sources into modules. */ | |
41 | ||
42 | CHGVAR VAR(&FIXDCMD) VALUE('CRTCMOD' *BCAT &CFLAGS *BCAT + | |
43 | 'SYSIFCOPT(*IFS64IO)' *BCAT + | |
44 | 'DEFINE(''_LARGEFILE64_SOURCE''' *BCAT + | |
45 | '''_LFS64_LARGEFILE=1'') TGTRLS(' *TCAT &TGTRLS *TCAT + | |
46 | ') SRCFILE(' *TCAT &SRCLIB *TCAT '/' *TCAT + | |
47 | &SRCFILE *TCAT ') MODULE(' *TCAT &MODLIB *TCAT '/') | |
48 | ||
49 | ||
50 | CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'ADLER32)') | |
51 | CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN) | |
52 | ||
53 | CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'COMPRESS)') | |
54 | CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN) | |
55 | ||
56 | CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'CRC32)') | |
57 | CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN) | |
58 | ||
59 | CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'DEFLATE)') | |
60 | CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN) | |
61 | ||
62 | CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'GZCLOSE)') | |
63 | CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN) | |
64 | ||
65 | CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'GZLIB)') | |
66 | CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN) | |
67 | ||
68 | CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'GZREAD)') | |
69 | CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN) | |
70 | ||
71 | CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'GZWRITE)') | |
72 | CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN) | |
73 | ||
74 | CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'INFBACK)') | |
75 | CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN) | |
76 | ||
77 | CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'INFFAST)') | |
78 | CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN) | |
79 | ||
80 | CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'INFLATE)') | |
81 | CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN) | |
82 | ||
83 | CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'INFTREES)') | |
84 | CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN) | |
85 | ||
86 | CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'TREES)') | |
87 | CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN) | |
88 | ||
89 | CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'UNCOMPR)') | |
90 | CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN) | |
91 | ||
92 | CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'ZUTIL)') | |
93 | CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN) | |
94 | ||
95 | ||
96 | /* Link modules into a service program. */ | |
97 | ||
98 | CRTSRVPGM SRVPGM(&SRVLIB/ZLIB) + | |
99 | MODULE(&MODLIB/ADLER32 &MODLIB/COMPRESS + | |
100 | &MODLIB/CRC32 &MODLIB/DEFLATE + | |
101 | &MODLIB/GZCLOSE &MODLIB/GZLIB + | |
102 | &MODLIB/GZREAD &MODLIB/GZWRITE + | |
103 | &MODLIB/INFBACK &MODLIB/INFFAST + | |
104 | &MODLIB/INFLATE &MODLIB/INFTREES + | |
105 | &MODLIB/TREES &MODLIB/UNCOMPR + | |
106 | &MODLIB/ZUTIL) + | |
107 | SRCFILE(&SRCLIB/&CTLFILE) SRCMBR(BNDSRC) + | |
da09a436 | 108 | TEXT('ZLIB 1.2.8') TGTRLS(&TGTRLS) |
5ca28f79 L |
109 | |
110 | ENDPGM |