37888173ae601fe121d9907e6f7eb93f6f25ca21
[reactos.git] / reactos / lib / 3rdparty / zlib / Make_vms.com
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 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 zlib.h zconf.h
36 $ CALL MAKE deflate.OBJ "CC ''CCOPT' deflate" -
37 deflate.c deflate.h zutil.h zlib.h zconf.h
38 $ CALL MAKE gzio.OBJ "CC ''CCOPT' gzio" -
39 gzio.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