]>
Commit | Line | Data |
---|---|---|
c801d85f KB |
1 | $! make libz under VMS |
2 | $! written by Martin P.J. Zinser <m.zinser@gsi.de> | |
3 | $! | |
4 | $! Look for the compiler used | |
5 | $! | |
6 | $ ccopt = "" | |
7 | $ if f$getsyi("HW_MODEL").ge.1024 | |
8 | $ then | |
9 | $ ccopt = "/prefix=all"+ccopt | |
10 | $ comp = "__decc__=1" | |
11 | $ if f$trnlnm("SYS").eqs."" then define sys sys$library: | |
12 | $ else | |
13 | $ if f$search("SYS$SYSTEM:DECC$COMPILER.EXE").eqs."" | |
14 | $ then | |
15 | $ comp = "__vaxc__=1" | |
16 | $ if f$trnlnm("SYS").eqs."" then define sys sys$library: | |
17 | $ else | |
18 | $ if f$trnlnm("SYS").eqs."" then define sys decc$library_include: | |
19 | $ ccopt = "/decc/prefix=all"+ccopt | |
20 | $ comp = "__decc__=1" | |
21 | $ endif | |
22 | $ endif | |
23 | $! | |
24 | $! Build the thing plain or with mms | |
25 | $! | |
26 | $ write sys$output "Compiling Zlib sources ..." | |
27 | $ if f$search("SYS$SYSTEM:MMS.EXE").eqs."" | |
28 | $ then | |
29 | $ dele example.obj;*,minigzip.obj;* | |
30 | $ CALL MAKE adler32.OBJ "CC ''CCOPT' adler32" - | |
31 | adler32.c zutil.h zlib.h zconf.h | |
32 | $ CALL MAKE compress.OBJ "CC ''CCOPT' compress" - | |
33 | compress.c zlib.h zconf.h | |
34 | $ CALL MAKE crc32.OBJ "CC ''CCOPT' crc32" - | |
35 | crc32.c zutil.h zlib.h zconf.h | |
36 | $ CALL MAKE deflate.OBJ "CC ''CCOPT' deflate" - | |
37 | deflatec.c deflate.h zutil.h zlib.h zconf.h | |
38 | $ CALL MAKE gzio.OBJ "CC ''CCOPT' gzio" - | |
39 | gsio.c zutil.h zlib.h zconf.h | |
40 | $ CALL MAKE infblock.OBJ "CC ''CCOPT' infblock" - | |
41 | infblock.c zutil.h zlib.h zconf.h infblock.h | |
42 | $ CALL MAKE infcodes.OBJ "CC ''CCOPT' infcodes" - | |
43 | infcodes.c zutil.h zlib.h zconf.h inftrees.h | |
44 | $ CALL MAKE inffast.OBJ "CC ''CCOPT' inffast" - | |
45 | inffast.c zutil.h zlib.h zconf.h inffast.h | |
46 | $ CALL MAKE inflate.OBJ "CC ''CCOPT' inflate" - | |
47 | inflate.c zutil.h zlib.h zconf.h infblock.h | |
48 | $ CALL MAKE inftrees.OBJ "CC ''CCOPT' inftrees" - | |
49 | inftrees.c zutil.h zlib.h zconf.h inftrees.h | |
50 | $ CALL MAKE infutil.OBJ "CC ''CCOPT' infutil" - | |
51 | infutil.c zutil.h zlib.h zconf.h inftrees.h infutil.h | |
52 | $ CALL MAKE trees.OBJ "CC ''CCOPT' trees" - | |
53 | trees.c deflate.h zutil.h zlib.h zconf.h | |
54 | $ CALL MAKE uncompr.OBJ "CC ''CCOPT' uncompr" - | |
55 | uncompr.c zlib.h zconf.h | |
56 | $ CALL MAKE zutil.OBJ "CC ''CCOPT' zutil" - | |
57 | zutil.c zutil.h zlib.h zconf.h | |
58 | $ write sys$output "Building Zlib ..." | |
59 | $ CALL MAKE libz.OLB "lib/crea libz.olb *.obj" *.OBJ | |
60 | $ write sys$output "Building example..." | |
61 | $ CALL MAKE example.OBJ "CC ''CCOPT' example" - | |
62 | example.c zlib.h zconf.h | |
63 | $ call make example.exe "LINK example,libz.olb/lib" example.obj libz.olb | |
64 | $ write sys$output "Building minigzip..." | |
65 | $ CALL MAKE minigzip.OBJ "CC ''CCOPT' minigzip" - | |
66 | minigzip.c zlib.h zconf.h | |
67 | $ call make minigzip.exe - | |
68 | "LINK minigzip,libz.olb/lib,x11vms:xvmsutils.olb/lib" - | |
69 | minigzip.obj libz.olb | |
70 | $ else | |
71 | $ mms/macro=('comp') | |
72 | $ endif | |
73 | $ write sys$output "Zlib build completed" | |
74 | $ exit | |
75 | $! | |
76 | $! | |
77 | $MAKE: SUBROUTINE !SUBROUTINE TO CHECK DEPENDENCIES | |
78 | $ V = 'F$Verify(0) | |
79 | $! P1 = What we are trying to make | |
80 | $! P2 = Command to make it | |
81 | $! P3 - P8 What it depends on | |
82 | $ | |
83 | $ If F$Search(P1) .Eqs. "" Then Goto Makeit | |
84 | $ Time = F$CvTime(F$File(P1,"RDT")) | |
85 | $arg=3 | |
86 | $Loop: | |
87 | $ Argument = P'arg | |
88 | $ If Argument .Eqs. "" Then Goto Exit | |
89 | $ El=0 | |
90 | $Loop2: | |
91 | $ File = F$Element(El," ",Argument) | |
92 | $ If File .Eqs. " " Then Goto Endl | |
93 | $ AFile = "" | |
94 | $Loop3: | |
95 | $ OFile = AFile | |
96 | $ AFile = F$Search(File) | |
97 | $ If AFile .Eqs. "" .Or. AFile .Eqs. OFile Then Goto NextEl | |
98 | $ If F$CvTime(F$File(AFile,"RDT")) .Ges. Time Then Goto Makeit | |
99 | $ Goto Loop3 | |
100 | $NextEL: | |
101 | $ El = El + 1 | |
102 | $ Goto Loop2 | |
103 | $EndL: | |
104 | $ arg=arg+1 | |
105 | $ If arg .Le. 8 Then Goto Loop | |
106 | $ Goto Exit | |
107 | $ | |
108 | $Makeit: | |
109 | $ VV=F$VERIFY(0) | |
110 | $ write sys$output P2 | |
111 | $ 'P2 | |
112 | $ VV='F$Verify(VV) | |
113 | $Exit: | |
114 | $ If V Then Set Verify | |
115 | $ENDSUBROUTINE |