]> git.saurik.com Git - wxWidgets.git/blame - src/png/scripts/makevms.com
added dependency handling
[wxWidgets.git] / src / png / scripts / makevms.com
CommitLineData
c801d85f
KB
1$! make libpng under VMS
2$!
3$!
4$! Look for the compiler used
5$!
6$ zlibsrc = "[-.zlib]"
7$ ccopt="/include=''zlibsrc'"
8$ if f$getsyi("HW_MODEL").ge.1024
9$ then
10$ ccopt = "/prefix=all"+ccopt
11$ comp = "__decc__=1"
12$ if f$trnlnm("SYS").eqs."" then define sys sys$library:
13$ else
14$ if f$search("SYS$SYSTEM:DECC$COMPILER.EXE").eqs.""
15$ then
16$ if f$trnlnm("SYS").eqs."" then define sys sys$library:
17$ if f$search("SYS$SYSTEM:VAXC.EXE").eqs.""
18$ then
19$ comp = "__gcc__=1"
20$ CC :== GCC
21$ else
22$ comp = "__vaxc__=1"
23$ endif
24$ else
25$ if f$trnlnm("SYS").eqs."" then define sys decc$library_include:
26$ ccopt = "/decc/prefix=all"+ccopt
27$ comp = "__decc__=1"
28$ endif
29$ endif
30$!
31$! Build the thing plain or with mms
32$!
33$ write sys$output "Compiling Libpng sources ..."
34$ if f$search("SYS$SYSTEM:MMS.EXE").eqs.""
35$ then
36$ dele pngtest.obj;*
37$ CALL MAKE png.OBJ "cc ''CCOPT' png" -
38 png.c png.h pngconf.h
39$ CALL MAKE pngpread.OBJ "cc ''CCOPT' pngpread" -
40 pngpread.c png.h pngconf.h
41$ CALL MAKE pngset.OBJ "cc ''CCOPT' pngset" -
42 pngset.c png.h pngconf.h
43$ CALL MAKE pngget.OBJ "cc ''CCOPT' pngget" -
44 pngget.c png.h pngconf.h
45$ CALL MAKE pngread.OBJ "cc ''CCOPT' pngread" -
46 pngread.c png.h pngconf.h
47$ CALL MAKE pngpread.OBJ "cc ''CCOPT' pngpread" -
48 pngpread.c png.h pngconf.h
49$ CALL MAKE pngrtran.OBJ "cc ''CCOPT' pngrtran" -
50 pngrtran.c png.h pngconf.h
51$ CALL MAKE pngrutil.OBJ "cc ''CCOPT' pngrutil" -
52 pngrutil.c png.h pngconf.h
53$ CALL MAKE pngerror.OBJ "cc ''CCOPT' pngerror" -
54 pngerror.c png.h pngconf.h
55$ CALL MAKE pngmem.OBJ "cc ''CCOPT' pngmem" -
56 pngmem.c png.h pngconf.h
57$ CALL MAKE pngrio.OBJ "cc ''CCOPT' pngrio" -
58 pngrio.c png.h pngconf.h
59$ CALL MAKE pngwio.OBJ "cc ''CCOPT' pngwio" -
60 pngwio.c png.h pngconf.h
61$ CALL MAKE pngtrans.OBJ "cc ''CCOPT' pngtrans" -
62 pngtrans.c png.h pngconf.h
63$ CALL MAKE pngwrite.OBJ "cc ''CCOPT' pngwrite" -
64 pngwrite.c png.h pngconf.h
65$ CALL MAKE pngwtran.OBJ "cc ''CCOPT' pngwtran" -
66 pngwtran.c png.h pngconf.h
67$ CALL MAKE pngwutil.OBJ "cc ''CCOPT' pngwutil" -
68 pngwutil.c png.h pngconf.h
69$ write sys$output "Building Libpng ..."
70$ CALL MAKE libpng.OLB "lib/crea libpng.olb *.obj" *.OBJ
71$ write sys$output "Building pngtest..."
72$ CALL MAKE pngtest.OBJ "cc ''CCOPT' pngtest" -
73 pngtest.c png.h pngconf.h
74$ call make pngtest.exe -
75 "LINK pngtest,libpng.olb/lib,''zlibsrc'libgz.olb/lib" -
76 pngtest.obj libpng.olb
77$ write sys$output "Testing Libpng..."
78$ run pngtest
79$ else
80$ mms/macro=('comp',zlibsrc='zlibsrc')
81$ endif
82$ write sys$output "Libpng build completed"
83$ exit
84$!
85$!
86$MAKE: SUBROUTINE !SUBROUTINE TO CHECK DEPENDENCIES
87$ V = 'F$Verify(0)
88$! P1 = What we are trying to make
89$! P2 = Command to make it
90$! P3 - P8 What it depends on
91$
92$ If F$Search(P1) .Eqs. "" Then Goto Makeit
93$ Time = F$CvTime(F$File(P1,"RDT"))
94$arg=3
95$Loop:
96$ Argument = P'arg
97$ If Argument .Eqs. "" Then Goto Exit
98$ El=0
99$Loop2:
100$ File = F$Element(El," ",Argument)
101$ If File .Eqs. " " Then Goto Endl
102$ AFile = ""
103$Loop3:
104$ OFile = AFile
105$ AFile = F$Search(File)
106$ If AFile .Eqs. "" .Or. AFile .Eqs. OFile Then Goto NextEl
107$ If F$CvTime(F$File(AFile,"RDT")) .Ges. Time Then Goto Makeit
108$ Goto Loop3
109$NextEL:
110$ El = El + 1
111$ Goto Loop2
112$EndL:
113$ arg=arg+1
114$ If arg .Le. 8 Then Goto Loop
115$ Goto Exit
116$
117$Makeit:
118$ VV=F$VERIFY(0)
119$ write sys$output P2
120$ 'P2
121$ VV='F$Verify(VV)
122$Exit:
123$ If V Then Set Verify
124$ENDSUBROUTINE
125