home *** CD-ROM | disk | FTP | other *** search
/ APDL Public Domain 1 / APDL_PD1A.iso / printing / ghostscrip / source / specific / mak / vms_cc < prev    next >
Encoding:
Text File  |  1991-10-25  |  5.8 KB  |  245 lines

  1. $ !    Copyright (C) 1989, 1990 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 an empty object library
  86. $ !
  87. $ LIBRARY/CREATE GS.OLB
  88. $ !
  89. $ !
  90. $ ! Create a list of modules to compile and store in the object library
  91. $ !
  92. $ CREATE MODULES.LIS
  93. GDEVMEM
  94. GP_VMS
  95. GSCHAR
  96. GSCHAR0
  97. GSCOLOR
  98. GSCOORD
  99. GSDEVICE
  100. GSFILE
  101. GSFONT
  102. GSIM2OUT
  103. GSIMAGE
  104. GSLINE
  105. GSMATRIX
  106. GSMISC
  107. GSPAINT
  108. GSPATH
  109. GSPATH2
  110. GSSTATE
  111. GSTDEV
  112. GSTYPE1
  113. GXCACHE
  114. GXCOLOR
  115. GXDITHER
  116. GXDRAW
  117. GXFILL
  118. GXHT
  119. GXPATH
  120. GXPATH2
  121. GXSTROKE
  122. IALLOC
  123. IDEBUG
  124. IDICT
  125. IINIT
  126. INAME
  127. INTERP
  128. ISAVE
  129. ISCAN
  130. IUTIL
  131. STREAM
  132. ZARITH
  133. ZARRAY
  134. ZCHAR
  135. ZCOLOR
  136. ZCONTROL
  137. ZDEVICE
  138. ZDICT
  139. ZFILE
  140. ZFILEIO
  141. ZFONT
  142. ZFONT0
  143. ZFONT2
  144. ZGENERIC
  145. ZGSTATE
  146. ZHT
  147. ZMATH
  148. ZMATRIX
  149. ZMISC
  150. ZPACKED
  151. ZPAINT
  152. ZPATH
  153. ZPATH2
  154. ZRELBIT
  155. ZSTACK
  156. ZSTRING
  157. ZTYPE
  158. ZVMEM
  159. $ !
  160. $ !
  161. $ ! NOW COMPILE AWAY!
  162. $ !
  163. $ OPEN/READ MODULE_LIST MODULES.LIS
  164. $ !
  165. $ COMPILE_LOOP:
  166. $ READ/END=END_COMPILE MODULE_LIST MODULE
  167. $ ANSI2KNR 'MODULE'.C 'MODULE'.CC
  168. $ CC'CDEF/NOLIST/OBJECT='MODULE'.OBJ 'MODULE'.CC
  169. $ LIBRARY/INSERT GS.OLB 'MODULE'.OBJ
  170. $ DELETE 'MODULE'.OBJ.*
  171. $ IF CDEF .EQS. "" THEN DELETE 'MODULE'.CC.*
  172. $ GOTO COMPILE_LOOP
  173. $ !
  174. $ END_COMPILE:
  175. $ DELETE MODULES.LIS.*
  176. $ !
  177. $ !
  178. $ ! Is the DECwindows environment about?  Must be installed in order to
  179. $ ! build the executable programs gs.exe, gt.exe, and xlib.exe.
  180. $ !
  181. $ IF F$SEARCH("SYS$SHARE:DECW$XLIBSHR.EXE") .NES. "" THEN GOTO CHECK2
  182. $ WRITE SYS$OUTPUT "DECwindows user environment not installed;"
  183. $ WRITE SYS$OUTPUT "unable to build executable programs."
  184. $ GOTO DONE
  185. $ !
  186. $ CHECK2:
  187. $ IF F$TRNLNM("DECW$INCLUDE") .NES. "" THEN GOTO BUILD_EXES
  188. $ WRITE SYS$OUTPUT "You must invoke @DECW$STARTUP before using this"
  189. $ WRITE SYS$OUTPUT "command procedure to build the executable programs."
  190. $ GOTO DONE
  191. $ !
  192. $ ! Build the executables
  193. $ !
  194. $ BUILD_EXES:
  195. $ !
  196. $ DEFINE X11 DECW$INCLUDE
  197. $ !
  198. $ !
  199. $ CREATE GCONFIG.H
  200. d(gs_x11_device)
  201. $ !
  202. $ ANSI2KNR GCONFIG.C GCONFIG.CC
  203. $ LIBDEF = """GS_LIB_DEFAULT=""""" + ''GS_LIB_DEFAULT' + """"""""
  204. $ INIDEF = """GS_INIT=""""" + ''GS_INIT' + """"""""
  205. $ CC'CDEF/NOLIST/DEFINE=('LIBDEF','INIDEF')/OBJECT=GCONFIG.OBJ GCONFIG.CC
  206. $ !
  207. $ ANSI2KNR GDEVX.C GDEVX.CC
  208. $ CC'CDEF/NOLIST/OBJECT=GDEVX.OBJ GDEVX.CC
  209. $ !
  210. $ ANSI2KNR GSMAIN.C GSMAIN.CC
  211. $ CC'CDEF/NOLIST/OBJECT=GSMAIN.OBJ GSMAIN.CC
  212. $ !
  213. $ ANSI2KNR UTRACE.C UTRACE.CC
  214. $ CC'CDEF/NOLIST/OBJECT=UTRACE.OBJ UTRACE.CC
  215. $ !
  216. $ ! 
  217. $ ! GSMAIN and UTRACE are tossed into the GT link so that when a
  218. $ ! debugging configuration is built, the gs_log_error and gs_exit
  219. $ ! routines will be defined.
  220. $ !
  221. $ ANSI2KNR GS.C GS.CC
  222. $ CC'CDEF/NOLIST/OBJECT=GS.OBJ GS.CC
  223. $ LINK'LDEF/NOMAP/EXE=GS.EXE GS,GSMAIN,UTRACE,GDEVX,GCONFIG,-
  224.   GS/LIB/INCLUDE=(GDEVMEM,ZARITH,ZARRAY,ZCHAR,ZCOLOR,ZCONTROL,ZDEVICE,-
  225.   ZDICT,ZFILE,ZFILEIO,ZFONT,ZFONT0,ZFONT2,ZGENERIC,ZGSTATE,ZHT,ZMATH,-
  226.   ZMATRIX,ZMISC,ZPACKED,ZPAINT,ZPATH,ZPATH2,ZRELBIT,ZSTACK,ZSTRING,-
  227.   ZTYPE,ZVMEM),SYS$INPUT/OPT
  228. SYS$SHARE:DECW$XLIBSHR/SHARE
  229. $ !
  230. $ DELETE GDEVX.OBJ.*,GSMAIN.OBJ.*,UTRACE.OBJ.*,GS.OBJ.*,GCONFIG.OBJ.*
  231. $ IF CDEF .EQS. "" THEN -
  232.  DELETE GDEVX.CC.*,GSMAIN.CC.*,UTRACE.CC.*,GS.CC.*,GCONFIG.CC.*
  233. $ !
  234. $ DELETE ANSI2KNR.EXE.*
  235. $ !
  236. $ DEASSIGN X11
  237. $ !
  238. $ DONE:
  239. $ !
  240. $ DEASSIGN C$INCLUDE
  241. $ DEASSIGN VAXC$INCLUDE
  242. $ DEASSIGN SYS
  243. $ !
  244. $ ! ALL DONE
  245.