Commit | Line | Data |
---|---|---|
1ed5b2ee WJ |
1 | $ ! Copyright (C) 1989, 1992 Aladdin Enterprises. All rights reserved. |
2 | $ ! Distributed by Free Software Foundation, Inc. | |
3 | $ ! | |
4 | $ ! This file is part of Ghostscript. | |
5 | $ ! | |
6 | $ ! Ghostscript is distributed in the hope that it will be useful, but | |
7 | $ ! WITHOUT ANY WARRANTY. No author or distributor accepts responsibility | |
8 | $ ! to anyone for the consequences of using it or for whether it serves any | |
9 | $ ! particular purpose or works at all, unless he says so in writing. Refer | |
10 | $ ! to the Ghostscript General Public License for full details. | |
11 | $ ! | |
12 | $ ! Everyone is granted permission to copy, modify and redistribute | |
13 | $ ! Ghostscript, but only under the conditions described in the Ghostscript | |
14 | $ ! General Public License. A copy of this license is supposed to have been | |
15 | $ ! given to you along with Ghostscript so you can know your rights and | |
16 | $ ! responsibilities. It should be in a file named COPYING. Among other | |
17 | $ ! things, the copyright notice and this notice must be preserved on all | |
18 | $ ! copies. | |
19 | $ ! | |
20 | $ ! | |
21 | $ ! "makefile" for Ghostscript, VMS / VMS C / DECwindows (X11) configuration. | |
22 | $ ! | |
23 | $ ! | |
24 | $ ! Execute this command file while in the GhostScript directory! | |
25 | $ ! | |
26 | $ ! | |
27 | $ ! To build a debugging configuration, issue the command: | |
28 | $ ! | |
29 | $ ! $ @VMS-CC.MAK DEBUG | |
30 | $ ! | |
31 | $ ! Do not abbreviate "DEBUG". To specify an alternate directory for | |
32 | $ ! GS_LIB_DEFAULT, issue the command: | |
33 | $ ! | |
34 | $ ! $ @VMS-CC.MAK directory | |
35 | $ ! | |
36 | $ ! with "directory" a fully qualified directory name. "directory" cannot | |
37 | $ ! be DEBUG (otherwise it will be confused with the DEBUG switch). Both | |
38 | $ ! the DEBUG switch and a directory name may be specified on the same | |
39 | $ ! command line and in either order. | |
40 | $ ! | |
41 | $ CDEF = "" | |
42 | $ LDEF = "" | |
43 | $ ! | |
44 | $ GS_INIT = "GS_INIT.PS" | |
45 | $ GS_LIB_DEFAULT = F$ENVIRONMENT("DEFAULT") | |
46 | $ IF P1 .NES. "" .AND. P1 .NES. "DEBUG" THEN GS_LIB_DEFAULT = P1 | |
47 | $ IF P2 .NES. "" .AND. P2 .NES. "DEBUG" THEN GS_LIB_DEFAULT = P2 | |
48 | $ ! | |
49 | $ IF P1 .NES. "DEBUG" .AND. P2 .NES. "DEBUG" THEN GOTO NODEBUG | |
50 | $ CDEF = "/DEFINE=(""DEBUG"")/NOOPTIMIZE/DEBUG" | |
51 | $ LDEF = "/DEBUG" | |
52 | $ ! | |
53 | $ NODEBUG: | |
54 | $ ! | |
55 | $ ! Give ourself a healthy search list for C include files | |
56 | $ ! | |
57 | $ DEFINE C$INCLUDE 'F$ENVIRONMENT("DEFAULT"),DECW$INCLUDE,SYS$LIBRARY | |
58 | $ DEFINE VAXC$INCLUDE C$INCLUDE | |
59 | $ DEFINE SYS SYS$LIBRARY | |
60 | $ ! | |
61 | $ ! | |
62 | $ ! Build the ANSI C to Kernighan & Ritchie filter | |
63 | $ ! | |
64 | $ CC/NOLIST/OBJECT=ANSI2KNR.OBJ ANSI2KNR.C | |
65 | $ LINK/NOMAP/EXE=ANSI2KNR.EXE ANSI2KNR,SYS$INPUT/OPT | |
66 | SYS$SHARE:DECW$XLIBSHR/SHARE | |
67 | $ DELETE ANSI2KNR.OBJ.* | |
68 | $ ! | |
69 | $ ! Now define an ansi2knr symbol | |
70 | $ ! | |
71 | $ ANSI2KNR = "$" + F$ENVIRONMENT("DEFAULT") + "ANSI2KNR.EXE" | |
72 | $ ! | |
73 | $ ! | |
74 | $ ! Compile genarch.c and then run it to create the arch.h header file | |
75 | $ ! | |
76 | $ CC/NOLIST/OBJECT=GENARCH.OBJ GENARCH.C | |
77 | $ LINK/NOMAP/EXE=GENARCH.EXE GENARCH,SYS$INPUT/OPT | |
78 | SYS$SHARE:VAXCRTL/SHARE | |
79 | $ GENARCH = "$" + F$ENVIRONMENT("DEFAULT") + "GENARCH.EXE" | |
80 | $ GENARCH ARCH.H | |
81 | $ DELETE GENARCH.EXE.*,GENARCH.OBJ.* | |
82 | $ PURGE ARCH.H | |
83 | $ ! | |
84 | $ ! | |
85 | $ ! Create a minimal gconfig.h | |
86 | $ ! | |
87 | $ CREATE GCONFIG.H | |
88 | device_(gs_x11_device) | |
89 | $ ! | |
90 | $ ! Create an empty object library | |
91 | $ ! | |
92 | $ LIBRARY/CREATE GS.OLB | |
93 | $ ! | |
94 | $ ! | |
95 | $ ! Create a list of modules to compile and store in the object library | |
96 | $ ! | |
97 | $ CREATE MODULES.LIS | |
98 | GDEVMEM1 | |
99 | GDEVMEM2 | |
100 | GDEVMEM3 | |
101 | GP_VMS | |
102 | GSCHAR | |
103 | GSCHAR0 | |
104 | GSCOLOR | |
105 | GSCOORD | |
106 | GSDEVICE | |
107 | GSDPS1 | |
108 | GSFILE | |
109 | GSFONT | |
110 | GSIM2OUT | |
111 | GSIMAGE | |
112 | GSLINE | |
113 | GSMATRIX | |
114 | GSMISC | |
115 | GSPAINT | |
116 | GSPATH | |
117 | GSPATH2 | |
118 | GSSTATE | |
119 | GSTDEV | |
120 | GSTYPE1 | |
121 | GSUTIL | |
122 | GXCACHE | |
123 | GXCLIST | |
124 | GXCOLOR | |
125 | GXCPATH | |
126 | GXDITHER | |
127 | GXDRAW | |
128 | GXFILL | |
129 | GXHT | |
130 | GXPATH | |
131 | GXPATH2 | |
132 | GXSTROKE | |
133 | IALLOC | |
134 | IBNUM | |
135 | IBSCAN | |
136 | ICCFONT | |
137 | IDEBUG | |
138 | IDICT | |
139 | IINIT | |
140 | INAME | |
141 | INTERP | |
142 | ISAVE | |
143 | ISCAN | |
144 | IUTIL | |
145 | SFILTER | |
146 | SFILTER2 | |
147 | STREAM | |
148 | ZARITH | |
149 | ZARRAY | |
150 | ZBSEQ | |
151 | ZCHAR | |
152 | ZCOLOR | |
153 | ZCONTROL | |
154 | ZDEVICE | |
155 | ZDICT | |
156 | ZDPS1 | |
157 | ZFILE | |
158 | ZFILEIO | |
159 | ZFILTER | |
160 | ZFILTER2 | |
161 | ZFONT | |
162 | ZFONT0 | |
163 | ZFONT1 | |
164 | ZFONT2 | |
165 | ZGENERIC | |
166 | ZGSTATE | |
167 | ZHT | |
168 | ZMATH | |
169 | ZMATRIX | |
170 | ZMISC | |
171 | ZPACKED | |
172 | ZPAINT | |
173 | ZPATH | |
174 | ZPATH2 | |
175 | ZPROPS | |
176 | ZRELBIT | |
177 | ZSTACK | |
178 | ZSTRING | |
179 | ZTYPE | |
180 | ZUPATH | |
181 | ZVMEM | |
182 | $ ! | |
183 | $ ! | |
184 | $ ! NOW COMPILE AWAY! | |
185 | $ ! | |
186 | $ OPEN/READ MODULE_LIST MODULES.LIS | |
187 | $ ! | |
188 | $ COMPILE_LOOP: | |
189 | $ READ/END=END_COMPILE MODULE_LIST MODULE | |
190 | $ ANSI2KNR 'MODULE'.C 'MODULE'.CC | |
191 | $ CC'CDEF/NOLIST/OBJECT='MODULE'.OBJ 'MODULE'.CC | |
192 | $ LIBRARY/INSERT GS.OLB 'MODULE'.OBJ | |
193 | $ DELETE 'MODULE'.OBJ.* | |
194 | $ IF CDEF .EQS. "" THEN DELETE 'MODULE'.CC.* | |
195 | $ GOTO COMPILE_LOOP | |
196 | $ ! | |
197 | $ END_COMPILE: | |
198 | $ CLOSE MODULE_LIST | |
199 | $ DELETE MODULES.LIS.* | |
200 | $ ! | |
201 | $ ! | |
202 | $ ! Is the DECwindows environment about? Must be installed in order to | |
203 | $ ! build the executable programs gs.exe, gt.exe, and xlib.exe. | |
204 | $ ! | |
205 | $ IF F$SEARCH("SYS$SHARE:DECW$XLIBSHR.EXE") .NES. "" THEN GOTO CHECK2 | |
206 | $ WRITE SYS$OUTPUT "DECwindows user environment not installed;" | |
207 | $ WRITE SYS$OUTPUT "unable to build executable programs." | |
208 | $ GOTO DONE | |
209 | $ ! | |
210 | $ CHECK2: | |
211 | $ IF F$TRNLNM("DECW$INCLUDE") .NES. "" THEN GOTO BUILD_EXES | |
212 | $ WRITE SYS$OUTPUT "You must invoke @DECW$STARTUP before using this" | |
213 | $ WRITE SYS$OUTPUT "command procedure to build the executable programs." | |
214 | $ GOTO DONE | |
215 | $ ! | |
216 | $ ! Build the executables | |
217 | $ ! | |
218 | $ BUILD_EXES: | |
219 | $ ! | |
220 | $ DEFINE X11 DECW$INCLUDE | |
221 | $ ! | |
222 | $ ANSI2KNR GCONFIG.C GCONFIG.CC | |
223 | $ LIBDEF = """GS_LIB_DEFAULT=""""" + ''GS_LIB_DEFAULT' + """""""" | |
224 | $ INIDEF = """GS_INIT=""""" + ''GS_INIT' + """""""" | |
225 | $ CC'CDEF/NOLIST/DEFINE=('LIBDEF','INIDEF')/OBJECT=GCONFIG.OBJ GCONFIG.CC | |
226 | $ ! | |
227 | $ ANSI2KNR GDEVXINI.C GDEVXINI.CC | |
228 | $ CC'CDEF/NOLIST/OBJECT=GDEVXINI.OBJ GDEVXINI.CC | |
229 | $ ! | |
230 | $ ANSI2KNR GDEVX.C GDEVX.CC | |
231 | $ CC'CDEF/NOLIST/OBJECT=GDEVX.OBJ GDEVX.CC | |
232 | $ ! | |
233 | $ ANSI2KNR GSMAIN.C GSMAIN.CC | |
234 | $ CC'CDEF/NOLIST/OBJECT=GSMAIN.OBJ GSMAIN.CC | |
235 | $ ! | |
236 | $ ANSI2KNR UTRACE.C UTRACE.CC | |
237 | $ CC'CDEF/NOLIST/OBJECT=UTRACE.OBJ UTRACE.CC | |
238 | $ ! | |
239 | $ ! | |
240 | $ ! GSMAIN and UTRACE are tossed into the GT link so that when a | |
241 | $ ! debugging configuration is built, the gs_log_error and gs_exit | |
242 | $ ! routines will be defined. | |
243 | $ ! | |
244 | $ ANSI2KNR GS.C GS.CC | |
245 | $ CC'CDEF/NOLIST/OBJECT=GS.OBJ GS.CC | |
246 | $ LINK'LDEF/NOMAP/EXE=GS.EXE GS,GSMAIN,UTRACE,GDEVX,GDEVXINI,GCONFIG,- | |
247 | GS/LIB/INCLUDE=(GDEVMEM1,GDEVMEM2,GDEVMEM3,GXCLIST,- | |
248 | ZARITH,ZARRAY,ZBSEQ,ZCHAR,ZCOLOR,ZCONTROL,ZDEVICE,ZDPS1,- | |
249 | ZDICT,ZFILE,ZFILEIO,ZFILTER,ZFILTER2,ZFONT,ZFONT0,ZFONT1,ZFONT2,- | |
250 | ZGENERIC,ZGSTATE,ZHT,ZMATH,ZMATRIX,ZMISC,ZPACKED,ZPAINT,ZPATH,ZPATH2,- | |
251 | ZPROPS,ZRELBIT,ZSTACK,ZSTRING,ZTYPE,ZUPATH,ZVMEM),SYS$INPUT/OPT | |
252 | SYS$SHARE:DECW$DWTLIBSHR/SHARE | |
253 | $ ! | |
254 | $ DELETE GDEVX.OBJ.*,GDEVXINI.OBJ.*,GSMAIN.OBJ.*,UTRACE.OBJ.*,GS.OBJ.*,- | |
255 | GCONFIG.OBJ.* | |
256 | $ IF CDEF .EQS. "" THEN - | |
257 | DELETE GDEVX.CC.*,GDEVXINI.CC.*,GSMAIN.CC.*,UTRACE.CC.*,GS.CC.*,GCONFIG.CC.* | |
258 | $ ! | |
259 | $ DELETE ANSI2KNR.EXE.* | |
260 | $ ! | |
261 | $ DEASSIGN X11 | |
262 | $ ! | |
263 | $ DONE: | |
264 | $ ! | |
265 | $ DEASSIGN C$INCLUDE | |
266 | $ DEASSIGN VAXC$INCLUDE | |
267 | $ DEASSIGN SYS | |
268 | $ ! | |
269 | $ ! ALL DONE |