[1050] | 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) +
|
---|
| 108 | TEXT('ZLIB 1.2.8') TGTRLS(&TGTRLS)
|
---|
| 109 |
|
---|
| 110 | ENDPGM
|
---|