home *** CD-ROM | disk | FTP | other *** search
/ Power Programmierung 2 / Power-Programmierung CD 2 (Tewi)(1994).iso / gnu / gnulib / ghostscr / unix-ans.mak < prev    next >
Encoding:
Makefile  |  1992-03-26  |  42.9 KB  |  1,277 lines

  1. #    Copyright (C) 1989, 1990, 1991 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. # makefile for Ghostscript, Unix/ANSI C/X11 configuration.
  21.  
  22. # ------------------------------- Options ------------------------------- #
  23.  
  24. ####### The following are the only parts of the file you should need to edit.
  25.  
  26. # ------ Generic options ------ #
  27.  
  28. # Define the default directory/ies for the runtime
  29. # initialization and font files.  Separate multiple directories with a :.
  30. # `pwd` means use the directory in which the 'make' is being done.
  31.  
  32. GS_LIB_DEFAULT=`pwd`:`pwd`/fonts
  33.  
  34. # Define the name of the Ghostscript initialization file.
  35. # (There is no reason to change this.)
  36.  
  37. GS_INIT=gs_init.ps
  38.  
  39. # Choose generic configuration options.
  40.  
  41. # -DDEBUG
  42. #    includes debugging features (-Z switch) in the code.
  43. #      Code runs substantially slower even if no debugging switches
  44. #      are set.
  45. # -DNOPRIVATE
  46. #    makes private (static) procedures and variables public,
  47. #      so they are visible to the debugger and profiler.
  48. #      No execution time or space penalty.
  49.  
  50. GENOPT=
  51.  
  52. # ------ Platform-specific options ------ #
  53.  
  54. # Define the name of the C compiler.  If the standard compiler for your
  55. # platform is ANSI-compatible, leave this line commented out; if not,
  56. # uncomment the line and insert the proper definition.
  57.  
  58. #CC=some_C_compiler
  59.  
  60. # Define the other compilation flags.
  61. # Add -DBSD4_2 for 4.2bsd systems.
  62. # Add -DSYSV for System V or DG/UX.
  63. # Add -DSVR4 (not -DSYSV) for System V release 4.
  64. # The HP 400 seems to want -Aa -w -D_HPUX_SOURCE.
  65. # XCFLAGS can be set from the command line.
  66.  
  67. CFLAGS=-O $(XCFLAGS)
  68.  
  69. # Define platform flags for ld.
  70. # SunOS and some others want -X; Ultrix wants -x.
  71. # SunOS 4.n may need -Bstatic.
  72. # XLDFLAGS can be set from the command line.
  73.  
  74. LDFLAGS=$(XLDFLAGS)
  75.  
  76. # Define any extra libraries to link into the executable.
  77. # (Libraries required by individual drivers are handled automatically.)
  78.  
  79. EXTRALIBS=
  80.  
  81. # Define the include switch(es) for the X11 header files.
  82. # This can be null if handled in some other way (e.g., the files are
  83. # in /usr/include, or the directory is supplied by an environment variable).
  84.  
  85. XINCLUDE=-I/usr/local/X/include
  86.  
  87. # Define the directory/ies for the X11 library files.
  88. # This can be null if these files are in the default linker search path.
  89.  
  90. XLIBDIRS=-L/usr/local/X/lib
  91.  
  92. # Define the installation commands and target directories for
  93. # executables and files.  Only relevant to `make install'.
  94.  
  95. INSTALL = install -c
  96. INSTALL_PROGRAM = $(INSTALL) -m 775
  97. INSTALL_DATA = $(INSTALL) -m 664
  98.  
  99. prefix = /usr/local
  100. bindir = $(prefix)/bin
  101. libdir = $(prefix)/lib/ghostscript
  102.  
  103. # ------ Devices and features ------ #
  104.  
  105. # Choose the language feature(s) to include.  See gs.mak for details.
  106.  
  107. FEATURE_DEVS=filter.dev dps.dev level2.dev
  108.  
  109. # Choose the device(s) to include.  See devs.mak for details.
  110.  
  111. DEVICE_DEVS=x11.dev
  112.  
  113. # ---------------------------- End of options --------------------------- #
  114.  
  115. # Define the name of the makefile -- used in dependencies.
  116.  
  117. MAKEFILE=unix-ansi.mak
  118.  
  119. # Define the ANSI-to-K&R dependency (none for ANSI compilers).
  120.  
  121. AK=
  122.  
  123. # Define the compilation rules and flags.
  124.  
  125. CCC=$(CC) $(CCFLAGS) -c
  126.  
  127. # --------------------------- Generic makefile ---------------------------- #
  128.  
  129. # The remainder of the makefile (unixhead.mak, gs.mak, devs.mak, unixtail.mak)
  130. # is generic.  tar_cat concatenates all these together.
  131. #    Copyright (C) 1990, 1991 Aladdin Enterprises.  All rights reserved.
  132. #    Distributed by Free Software Foundation, Inc.
  133. #
  134. # This file is part of Ghostscript.
  135. #
  136. # Ghostscript is distributed in the hope that it will be useful, but
  137. # WITHOUT ANY WARRANTY.  No author or distributor accepts responsibility
  138. # to anyone for the consequences of using it or for whether it serves any
  139. # particular purpose or works at all, unless he says so in writing.  Refer
  140. # to the Ghostscript General Public License for full details.
  141. #
  142. # Everyone is granted permission to copy, modify and redistribute
  143. # Ghostscript, but only under the conditions described in the Ghostscript
  144. # General Public License.  A copy of this license is supposed to have been
  145. # given to you along with Ghostscript so you can know your rights and
  146. # responsibilities.  It should be in a file named COPYING.  Among other
  147. # things, the copyright notice and this notice must be preserved on all
  148. # copies.
  149.  
  150. # Partial makefile for Ghostscript, common to all Unix configurations.
  151.  
  152. # This part of the makefile gets inserted after the compiler-specific part
  153. # (xxx-head.mak) and before gs.mak and devs.mak.
  154.  
  155. # ----------------------------- Generic stuff ----------------------------- #
  156.  
  157. # Define the platform name.
  158.  
  159. PLATFORM=unix_
  160.  
  161. # Define the extensions for the object and executable files.
  162.  
  163. OBJ=o
  164. XE=
  165.  
  166. # Define the need for uniq.
  167.  
  168. UNIQ=
  169.  
  170. # Define the current directory prefix, shell quote string, and shell names.
  171.  
  172. EXP=./
  173. QQ=\"
  174. SHELL=/bin/sh
  175. SH=$(SHELL)
  176. SHP=$(SH) $(EXP)
  177.  
  178. # Define the compilation rules and flags.
  179.  
  180. CCFLAGS=$(GENOPT) $(CFLAGS)
  181.  
  182. .c.o:
  183.     $(CCC) $*.c
  184.  
  185. CC0=$(CCC)
  186. CCINT=$(CCC)
  187. #    Copyright (C) 1989, 1992 Aladdin Enterprises.  All rights reserved.
  188. #    Distributed by Free Software Foundation, Inc.
  189. #
  190. # This file is part of Ghostscript.
  191. #
  192. # Ghostscript is distributed in the hope that it will be useful, but
  193. # WITHOUT ANY WARRANTY.  No author or distributor accepts responsibility
  194. # to anyone for the consequences of using it or for whether it serves any
  195. # particular purpose or works at all, unless he says so in writing.  Refer
  196. # to the Ghostscript General Public License for full details.
  197. #
  198. # Everyone is granted permission to copy, modify and redistribute
  199. # Ghostscript, but only under the conditions described in the Ghostscript
  200. # General Public License.  A copy of this license is supposed to have been
  201. # given to you along with Ghostscript so you can know your rights and
  202. # responsibilities.  It should be in a file named COPYING.  Among other
  203. # things, the copyright notice and this notice must be preserved on all
  204. # copies.
  205.  
  206. # Generic makefile for Ghostscript.
  207. # The platform-specific makefiles `include' this file.
  208. # They define the following symbols:
  209. #    GS_INIT - the name of the initialization file for Ghostscript,
  210. #        normally gs_init.ps.
  211. #    GS_LIB_DEFAULT - the default directory/ies for searching for the
  212. #        initialization and font files at run time.
  213. #    DEVICE_DEVS - the devices to include in the executable.
  214. #        See devs.mak for details.
  215. #    FEATURE_DEVS - the optional features to include in the
  216. #        executable.  Current features are:
  217. #            dps - support for Display PostScript extensions.
  218. #            *** PARTIALLY IMPLEMENTED, SEE language.doc. ***
  219. #            level2 - support for PostScript Level 2 extensions.
  220. #            *** PARTIALLY IMPLEMENTED, SEE language.doc. ***
  221. #            compfont - support for composite (type 0) fonts.
  222. #            *** NOT IMPLEMENTED YET. ***
  223. #            filter - support for Level 2 filters (other than eexec,
  224. #            ASCIIHexEncode/Decode, and PFBDecode, which are
  225. #            always included).
  226. #            ccfonts - precompile fonts into C, and link them
  227. #            with the executable.  In the standard makefiles,
  228. #            this is only implemented for a very few fonts:
  229. #            see fonts.doc for details.
  230. # It is very unlikely that anyone would want to edit the remaining
  231. #   symbols, but we describe them here for completeness:
  232. #    PLATFORM - a "device" name for the platform, so that platforms can
  233. #        add various kinds of resources like devices and features.
  234. #    QQ - a " preceded by whatever escape characters are needed to
  235. #        persuade the shell to pass a " to a program (" on MS-DOS,
  236. #        \" on Unix).
  237. #    XE - the extension for executable files (e.g., null or .exe).
  238. #    OBJ - the extension for relocatable object files (e.g., o or obj).
  239. #    CCC - the C invocation for normal compilation.
  240. #    CC0 - a C invocation with the fewest possible flags.  Needed because
  241. #        MS-DOS limits the length of command lines to 128 characters.
  242. #    CCINT - the C invocation for compiling the main interpreter module,
  243. #        normally the same as CCC: this is needed because the
  244. #        Borland compiler generates *worse* code for this module
  245. #        (but only this module) when optimization (-O) is turned on.
  246. #    AK - if source files must be converted from ANSI to K&R syntax,
  247. #        this is ansi2knr$(XE); if not, it is null.
  248. #    UNIQ - null on systems that provide the uniq utility,
  249. #        uniq$(XE) on systems where we have to provide our own.
  250. #    SHP - the prefix for invoking a shell script in the current directory
  251. #        (null for MS-DOS, $(SH) ./ for Unix).
  252. #    EXPP, EXP - the prefix for invoking an executable program in the
  253. #        current directory (null for MS-DOS, ./ for Unix).
  254. #    SH - the shell for scripts (null on MS-DOS, sh on Unix).
  255. # The platform-specific makefiles must also include rules for creating
  256. #   ansi2knr$(XE) and genarch$(XE) from the corresponding .c files,
  257. #   and for making arch.h by executing genarch$(XE).  (This
  258. #   shouldn't really be necessary, but Turbo C and Unix C treat the -o
  259. #   switch slightly differently (Turbo C requires no following space,
  260. #   Unix C requires a following space), and I haven't found a way to capture
  261. #   the difference in a macro; also, Unix requires ./ because . may not be
  262. #   in the search path, whereas MS-DOS always looks in the current
  263. #   directory first.)
  264.  
  265. all default: gs$(XE)
  266.  
  267. test: gt$(XE)
  268.  
  269. mostlyclean realclean distclean clean:
  270.     rm -f *.$(OBJ) *.a core gmon.out
  271.     rm -f *.dev gconfig.h obj*.tr lib*.tr
  272.     rm -f t _temp_* _temp_*.* *.map *.sym
  273.     rm -f ansi2knr$(XE) genarch$(XE) uniq$(XE) arch.h gs$(XE)
  274.  
  275. # Auxiliary programs
  276.  
  277. # genarch may cause a (deliberate) addressing fault,
  278. # so we invoke it with a preceding -.
  279.  
  280. arch.h: genarch$(XE)
  281.     - $(EXPP) $(EXP)genarch arch.h
  282.  
  283. # -------------------------------- Library -------------------------------- #
  284.  
  285. # Define the inter-dependencies of the .h files.
  286. # Since not all versions of `make' defer expansion of macros,
  287. # we must list these in bottom-to-top order.
  288.  
  289. # Generic files
  290.  
  291. arch_h=arch.h
  292. std_h=std.h $(arch_h)
  293. gs_h=gs.h $(std_h)
  294. gx_h=gx.h $(gs_h)
  295.  
  296. # C library interfaces
  297.  
  298. # Because of variations in the "standard" header files between systems,
  299. # we define local include files named *_.h to substitute for <*.h>.
  300.  
  301. vmsmath_h=vmsmath.h
  302.  
  303. dos__h=dos_.h
  304. malloc__h=malloc_.h
  305. math__h=math_.h $(vmsmath_h)
  306. memory__h=memory_.h
  307. stat__h=stat_.h
  308. string__h=string_.h
  309. time__h=time_.h
  310.  
  311. # Miscellaneous
  312.  
  313. gserrors_h=gserrors.h
  314.  
  315. GX=$(AK) $(gx_h)
  316. GXERR=$(GX) $(gserrors_h)
  317.  
  318. ###### Low-level facilities and utilities
  319.  
  320. ### Include files
  321.  
  322. gschar_h=gschar.h
  323. gscolor_h=gscolor.h
  324. gscoord_h=gscoord.h
  325. gsfont_h=gsfont.h
  326. gsmatrix_h=gsmatrix.h
  327. gspaint_h=gspaint.h
  328. gspath_h=gspath.h
  329. gsprops_h=gsprops.h
  330. gsstate_h=gsstate.h $(gscolor_h)
  331. gstype1_h=gstype1.h
  332. gsutil_h=gsutil.h
  333.  
  334. gxarith_h=gxarith.h
  335. gxbitmap_h=gxbitmap.h
  336. gxcache_h=gxcache.h
  337. gxchar_h=gxchar.h $(gschar_h)
  338. gxclist_h=gxclist.h
  339. gxcpath_h=gxcpath.h
  340. gxdevice_h=gxdevice.h $(gsmatrix_h) $(gxbitmap_h)
  341. gxdevmem_h=gxdevmem.h
  342. gxfdir_h=gxfdir.h
  343. gxfixed_h=gxfixed.h
  344. gxfont_h=gxfont.h $(gsfont_h)
  345. gximage_h=gximage.h
  346. gxmatrix_h=gxmatrix.h $(gsmatrix_h)
  347. gxop1_h=gxop1.h
  348. gxpath_h=gxpath.h
  349. gxtype1_h=gxtype1.h $(gstype1_h)
  350.  
  351. gzcolor_h=gzcolor.h $(gscolor_h)
  352. gzdevice_h=gzdevice.h $(gxdevice_h)
  353. gzht_h=gzht.h
  354. gzline_h=gzline.h
  355. gzpath_h=gzpath.h $(gxpath_h)
  356. gzstate_h=gzstate.h $(gsstate_h)
  357.  
  358. ### Executable code
  359.  
  360. gsutil.$(OBJ): gsutil.c \
  361.   $(std_h) $(gsprops_h) $(gsutil_h)
  362.  
  363. gxcache.$(OBJ): gxcache.c $(GXERR) \
  364.   $(gxfixed_h) $(gxmatrix_h) $(gspaint_h) $(gzdevice_h) $(gzcolor_h) \
  365.   $(gxcpath_h) $(gxdevmem_h) $(gxfont_h) $(gxfdir_h) $(gxchar_h) \
  366.   $(gxcache_h) $(gzstate_h) $(gzpath_h)
  367.  
  368. gxclist.$(OBJ): gxclist.c $(GXERR) \
  369.   $(gsmatrix_h) $(gxbitmap_h) $(gxclist_h) $(gxdevice_h) $(gxdevmem_h)
  370.  
  371. gxcolor.$(OBJ): gxcolor.c $(GXERR) \
  372.   $(gxfixed_h) $(gxmatrix_h) $(gxdevice_h) $(gzcolor_h) $(gzht_h) $(gzstate_h)
  373.  
  374. gxcpath.$(OBJ): gxcpath.c $(GXERR) \
  375.   $(gxdevice_h) $(gxfixed_h) $(gzcolor_h) $(gzpath_h) $(gxcpath_h)
  376.  
  377. gxdither.$(OBJ): gxdither.c $(GX) \
  378.   $(gxfixed_h) $(gxmatrix_h) $(gzstate_h) $(gzdevice_h) $(gzcolor_h) $(gzht_h)
  379.  
  380. gxdraw.$(OBJ): gxdraw.c $(GX) \
  381.   $(gxfixed_h) $(gxmatrix_h) $(gxbitmap_h) $(gzcolor_h) $(gzdevice_h) $(gzstate_h)
  382.  
  383. gxfill.$(OBJ): gxfill.c $(GXERR) \
  384.   $(gxfixed_h) $(gxmatrix_h) $(gxdevice_h) $(gzcolor_h) $(gzpath_h) $(gzstate_h) $(gxcpath_h)
  385.  
  386. gxht.$(OBJ): gxht.c $(GXERR) \
  387.   $(gxfixed_h) $(gxmatrix_h) $(gxbitmap_h) $(gzstate_h) $(gzcolor_h) $(gzdevice_h) $(gzht_h)
  388.  
  389. gxpath.$(OBJ): gxpath.c $(GXERR) \
  390.   $(gxfixed_h) $(gzpath_h)
  391.  
  392. gxpath2.$(OBJ): gxpath2.c $(GXERR) \
  393.   $(gxfixed_h) $(gxarith_h) $(gzpath_h)
  394.  
  395. gxstroke.$(OBJ): gxstroke.c $(GXERR) \
  396.   $(gxfixed_h) $(gxarith_h) $(gxmatrix_h) $(gzstate_h) $(gzcolor_h) $(gzdevice_h) $(gzline_h) $(gzpath_h)
  397.  
  398. ###### High-level facilities
  399.  
  400. gschar.$(OBJ): gschar.c $(GXERR) \
  401.   $(gxfixed_h) $(gxarith_h) $(gxmatrix_h) $(gzdevice_h) $(gxdevmem_h) $(gxfont_h) $(gxchar_h) $(gxcache_h) $(gstype1_h) $(gspath_h) $(gzpath_h) $(gzcolor_h) $(gzstate_h)
  402.  
  403. gscolor.$(OBJ): gscolor.c $(GXERR) \
  404.   $(gxfixed_h) $(gxmatrix_h) $(gxdevice_h) $(gzstate_h) $(gzcolor_h) $(gzht_h)
  405.  
  406. gscoord.$(OBJ): gscoord.c $(GXERR) \
  407.   $(gxarith_h) $(gxfixed_h) $(gxmatrix_h) $(gzdevice_h) $(gzstate_h) $(gscoord_h)
  408.  
  409. gsdevice.$(OBJ): gsdevice.c $(GXERR) \
  410.   $(gsarith_h) $(gsprops_h) $(gsutil_h) $(gxfixed_h) $(gxmatrix_h) $(gxbitmap_h) $(gxdevmem_h) $(gzstate_h) $(gzdevice_h)
  411.  
  412. gsfile.$(OBJ): gsfile.c $(GXERR) \
  413.   $(gsmatrix_h) $(gxdevice_h) $(gxdevmem_h)
  414.  
  415. gsfont.$(OBJ): gsfont.c $(GXERR) \
  416.   $(gxdevice_h) $(gxfixed_h) $(gxmatrix_h) $(gxfont_h) $(gxfdir_h) $(gzstate_h)
  417.  
  418. gsimage.$(OBJ): gsimage.c $(GXERR) \
  419.   $(gxfixed_h) $(gxarith_h) $(gxmatrix_h) $(gspaint_h) $(gzcolor_h) $(gzdevice_h) $(gzpath_h) $(gzstate_h) $(gxcpath_h) $(gxdevmem_h) $(gximage_h)
  420.  
  421. gsim2out.$(OBJ): gsim2out.c $(GXERR) \
  422.   $(gsstate_h) $(gsmatrix_h) $(gscoord_h) $(gxfixed_h) $(gxtype1_h)
  423.  
  424. gsline.$(OBJ): gsline.c $(GXERR) \
  425.   $(gxfixed_h) $(gxmatrix_h) $(gzstate_h) $(gzline_h)
  426.  
  427. gsmatrix.$(OBJ): gsmatrix.c $(GXERR) \
  428.   $(gxfixed_h) $(gxarith_h) $(gxmatrix_h)
  429.  
  430. gsmisc.$(OBJ): gsmisc.c $(GX) $(MAKEFILE)
  431.     $(CCC) -DUSE_ASM=0$(USE_ASM) gsmisc.c
  432.  
  433. gspaint.$(OBJ): gspaint.c $(GXERR) \
  434.   $(gxfixed_h) $(gxmatrix_h) $(gspaint_h) $(gzpath_h) $(gzstate_h) $(gzdevice_h) $(gxcpath_h) $(gxdevmem_h) $(gximage_h)
  435.  
  436. gspath.$(OBJ): gspath.c $(GXERR) \
  437.   $(gxfixed_h) $(gxmatrix_h) $(gxpath_h) $(gzstate_h)
  438.  
  439. gspath2.$(OBJ): gspath2.c $(GXERR) \
  440.   $(gspath_h) $(gxfixed_h) $(gxmatrix_h) $(gzstate_h) $(gzpath_h) $(gzdevice_h)
  441.  
  442. gsstate.$(OBJ): gsstate.c $(GXERR) \
  443.   $(gxfixed_h) $(gxmatrix_h) $(gzstate_h) $(gzcolor_h) $(gzdevice_h) $(gzht_h) $(gzline_h) $(gzpath_h)
  444.  
  445. gstdev.$(OBJ): gstdev.c $(GX) \
  446.   $(gxbitmap_h) $(gxdevice_h) $(gxfixed_h) $(gxmatrix_h)
  447.  
  448. gstype1.$(OBJ): gstype1.c $(GXERR) \
  449.   $(gxarith_h) $(gxfixed_h) $(gxmatrix_h) $(gxchar_h) $(gxdevmem_h) $(gxop1_h) $(gxtype1_h) \
  450.   $(gzstate_h) $(gzdevice_h) $(gzpath_h)
  451.  
  452. ###### The internal devices
  453.  
  454. gdevmem_h=gdevmem.h
  455.  
  456. gdevmem1.$(OBJ): gdevmem1.c $(AK) \
  457.   $(gs_h) $(gxdevice_h) $(gxdevmem_h) $(gdevmem_h)
  458.  
  459. gdevmem2.$(OBJ): gdevmem2.c $(AK) \
  460.   $(gs_h) $(gxdevice_h) $(gxdevmem_h) $(gdevmem_h)
  461.  
  462. ###### Files dependent on the installed devices, features, and platform.
  463. ###### Generating gconfig.h also generates obj*.tr and lib.tr.
  464.  
  465. gconfig.h gconfig.ps obj.tr lib.tr: devs.mak $(MAKEFILE) $(UNIQ) $(DEVICE_DEVS) $(FEATURE_DEVS) $(PLATFORM).dev
  466.     $(SHP)gsconfig $(DEVICE_DEVS) +
  467.     $(SHP)gsconfig + $(FEATURE_DEVS) $(PLATFORM).dev
  468.  
  469. gconfig.$(OBJ): gconfig.c $(AK) gconfig.h $(MAKEFILE)
  470.     $(CC0) -DGS_LIB_DEFAULT=$(QQ)$(GS_LIB_DEFAULT)$(QQ) -DGS_INIT=$(QQ)$(GS_INIT)$(QQ) gconfig.c
  471.  
  472. ###### On Unix, we pre-link all of the library except the back end.
  473. ###### On MS-DOS, we have to do the whole thing at once.
  474.  
  475. LIB=gschar.$(OBJ) gscolor.$(OBJ) gscoord.$(OBJ) \
  476.  gsdevice.$(OBJ) gsfile.$(OBJ) gsfont.$(OBJ) \
  477.  gsimage.$(OBJ) gsim2out.$(OBJ) \
  478.  gsline.$(OBJ) gsmatrix.$(OBJ) gsmisc.$(OBJ) \
  479.  gspaint.$(OBJ) gspath.$(OBJ) gspath2.$(OBJ) \
  480.  gsstate.$(OBJ) gstdev.$(OBJ) gstype1.$(OBJ) gsutil.$(OBJ) \
  481.  gxcache.$(OBJ) gxclist.$(OBJ) gxcolor.$(OBJ) gxcpath.$(OBJ) \
  482.  gxdither.$(OBJ) gxdraw.$(OBJ) gxfill.$(OBJ) \
  483.  gxht.$(OBJ) gxpath.$(OBJ) gxpath2.$(OBJ) gxstroke.$(OBJ) \
  484.  gdevmem1.$(OBJ) gdevmem2.$(OBJ) gconfig.$(OBJ)
  485.  
  486. # ------------------------------ Interpreter ------------------------------ #
  487.  
  488. ###### Include files
  489.  
  490. alloc_h=alloc.h
  491. astate_h=astate.h
  492. ccfont_h=ccfont.h
  493. dict_h=dict.h
  494. errors_h=errors.h
  495. estack_h=estack.h
  496. file_h=file.h
  497. font_h=font.h
  498. ghost_h=ghost.h $(gx_h)
  499. gp_h=gp.h
  500. iutil_h=iutil.h
  501. name_h=name.h
  502. opdef_h=opdef.h
  503. ostack_h=ostack.h
  504. overlay_h=overlay.h
  505. packed_h=packed.h
  506. save_h=save.h
  507. scanchar_h=scanchar.h
  508. state_h=state.h
  509. store_h=store.h
  510. stream_h=stream.h
  511. # Nested include files
  512. oper_h=oper.h $(gsutil_h) $(iutil_h) $(opdef_h) $(ostack_h)
  513. # Include files for optional features
  514. bnum_h=bnum.h
  515. bseq_h=bseq.h
  516. btoken_h=btoken.h
  517.  
  518. comp1_h=comp1.h $(ghost_h) $(oper_h) $(gserrors_h) $(gxfixed_h) $(gxop1_h)
  519.  
  520. gdevpcl_h=gdevpcl.h
  521. gdevprn_h=gdevprn.h $(memory__h) $(string__h) $(gs_h) \
  522.   $(gsmatrix_h) $(gxdevice_h) $(gxdevmem_h) $(gxclist_h)
  523. gdevx_h=gdevx.h
  524.  
  525. ###### Utilities
  526.  
  527. GH=$(AK) $(ghost_h)
  528.  
  529. ialloc.$(OBJ): ialloc.c $(AK) $(gs_h) $(alloc_h) $(astate_h)
  530.  
  531. iccfont.$(OBJ): iccfont.c $(GH) \
  532.  $(ghost_h) $(alloc_h) $(ccfont_h) $(dict_h) $(errors_h) $(name_h) $(save_h) $(store_h)
  533.  
  534. idebug.$(OBJ): idebug.c $(GH) \
  535.  $(iutil_h) $(dict_h) $(name_h) $(ostack_h) $(opdef_h) $(packed_h) $(store_h)
  536.  
  537. idict.$(OBJ): idict.c $(GH) $(alloc_h) $(errors_h) $(name_h) $(packed_h) $(save_h) $(store_h) $(iutil_h) $(dict_h)
  538.  
  539. iinit.$(OBJ): iinit.c $(GH) gconfig.h $(alloc_h) $(dict_h) $(errors_h) $(name_h) $(oper_h) $(store_h)
  540.  
  541. iname.$(OBJ): iname.c $(GH) $(alloc_h) $(errors_h) $(name_h) $(store_h)
  542.  
  543. isave.$(OBJ): isave.c $(GH) $(alloc_h) $(astate_h) $(name_h) $(packed_h) $(save_h) $(store_h)
  544.  
  545. iscan.$(OBJ): iscan.c $(GH) $(alloc_h) $(dict_h) $(errors_h) $(iutil_h) \
  546.  $(name_h) $(ostack_h) $(packed_h) $(store_h) $(stream_h) $(scanchar_h)
  547.  
  548. iutil.$(OBJ): iutil.c $(GH) \
  549.  $(errors_h) $(alloc_h) $(dict_h) $(iutil_h) $(name_h) $(ostack_h) $(opdef_h) $(store_h) \
  550.  $(gsmatrix_h) $(gxdevice_h) $(gzcolor_h)
  551.  
  552. sfilter.$(OBJ): sfilter.c $(AK) $(std_h) $(scanchar_h) $(stream_h) \
  553.  $(gxfixed_h) $(gstype1_h)
  554.  
  555. stream.$(OBJ): stream.c $(AK) $(std_h) $(stream_h) $(scanchar_h)
  556.  
  557. ###### Operators
  558.  
  559. OP=$(GH) $(errors_h) $(oper_h)
  560.  
  561. ### Non-graphics operators
  562.  
  563. zarith.$(OBJ): zarith.c $(OP) $(store_h)
  564.  
  565. zarray.$(OBJ): zarray.c $(OP) $(alloc_h) $(packed_h) $(store_h)
  566.  
  567. zcontrol.$(OBJ): zcontrol.c $(OP) $(estack_h) $(iutil_h) $(store_h)
  568.  
  569. zdict.$(OBJ): zdict.c $(OP) $(dict_h) $(store_h)
  570.  
  571. zfile.$(OBJ): zfile.c $(OP) $(gp_h) \
  572.   $(alloc_h) $(estack_h) $(file_h) $(iutil_h) $(save_h) $(stream_h) $(store_h)
  573.  
  574. zfileio.$(OBJ): zfileio.c $(OP) $(gp_h) \
  575.   $(estack_h) $(file_h) $(store_h) $(stream_h) \
  576.   $(gsmatrix_h) $(gxdevice_h) $(gxdevmem_h)
  577.  
  578. zfilter.$(OBJ): zfilter.c $(OP) $(alloc_h) $(stream_h)
  579.  
  580. zgeneric.$(OBJ): zgeneric.c $(OP) $(dict_h) $(estack_h) $(name_h) $(packed_h) $(store_h)
  581.  
  582. zmath.$(OBJ): zmath.c $(OP) $(store_h)
  583.  
  584. zmisc.$(OBJ): zmisc.c $(OP) $(gp_h) $(alloc_h) $(dict_h) $(name_h) $(packed_h) $(store_h) \
  585.   $(gstype1_h) $(gxfixed_h)
  586.  
  587. zpacked.$(OBJ): zpacked.c $(OP) \
  588.   $(alloc_h) $(dict_h) $(name_h) $(packed_h) $(save_h) $(store_h)
  589.  
  590. zprops.$(OBJ): zprops.c $(OP) \
  591.   $(alloc_h) $(dict_h) $(name_h) $(store_h) \
  592.   $(gsprops_h) $(gsmatrix_h) $(gxdevice_h)
  593.  
  594. zrelbit.$(OBJ): zrelbit.c $(OP) $(store_h) $(dict_h)
  595.  
  596. zstack.$(OBJ): zstack.c $(OP) $(store_h)
  597.  
  598. zstring.$(OBJ): zstring.c $(OP) $(alloc_h) $(iutil_h) $(name_h) $(store_h) $(stream_h)
  599.  
  600. ztype.$(OBJ): ztype.c $(OP) $(dict_h) $(iutil_h) $(name_h) $(stream_h) $(store_h)
  601.  
  602. zvmem.$(OBJ): zvmem.c $(OP) $(alloc_h) $(dict_h) $(estack_h) $(save_h) $(state_h) $(store_h) \
  603.   $(gsmatrix_h) $(gsstate_h)
  604.  
  605. ###### Graphics operators
  606.  
  607. zchar.$(OBJ): zchar.c $(OP) $(gxmatrix_h) $(gschar_h) $(gstype1_h) $(gxdevice_h) $(gxfixed_h) $(gxfont_h) $(gzpath_h) $(gzstate_h) $(alloc_h) $(dict_h) $(font_h) $(estack_h) $(state_h) $(store_h)
  608.  
  609. zcolor.$(OBJ): zcolor.c $(OP) $(alloc_h) $(estack_h) $(gxfixed_h) $(gxmatrix_h) $(gzstate_h) $(gxdevice_h) $(gzcolor_h) $(iutil_h) $(state_h) $(store_h)
  610.  
  611. zdevice.$(OBJ): zdevice.c $(OP) $(alloc_h) $(state_h) $(gsmatrix_h) $(gsstate_h) $(gxdevice_h) $(store_h)
  612.  
  613. zfont.$(OBJ): zfont.c $(OP) $(gsmatrix_h) $(gxdevice_h) $(gxfont_h) $(gxfdir_h) \
  614.  $(alloc_h) $(font_h) $(dict_h) $(name_h) $(packed_h) $(save_h) $(state_h) $(store_h)
  615.  
  616. zfont1.$(OBJ): zfont1.c $(OP) $(gsmatrix_h) $(gxdevice_h) $(gschar_h) $(gxfixed_h) $(gxfont_h) \
  617.  $(dict_h) $(font_h) $(name_h) $(store_h)
  618.  
  619. zfont2.$(OBJ): zfont2.c $(OP) $(gsmatrix_h) $(gxdevice_h) $(gschar_h) $(gxfixed_h) $(gxfont_h) \
  620.  $(alloc_h) $(dict_h) $(font_h) $(name_h) $(packed_h) $(store_h)
  621.  
  622. zgstate.$(OBJ): zgstate.c $(OP) $(alloc_h) $(gsmatrix_h) $(gsstate_h) $(state_h) $(store_h)
  623.  
  624. zht.$(OBJ): zht.c $(OP) $(alloc_h) $(estack_h) $(gsmatrix_h) $(gsstate_h) $(state_h) $(store_h)
  625.  
  626. zmatrix.$(OBJ): zmatrix.c $(OP) $(gsmatrix_h) $(state_h) $(gscoord_h) $(store_h)
  627.  
  628. zpaint.$(OBJ): zpaint.c $(OP) $(alloc_h) $(estack_h) $(gsmatrix_h) $(gspaint_h) $(state_h) $(store_h)
  629.  
  630. zpath.$(OBJ): zpath.c $(OP) $(gsmatrix_h) $(gspath_h) $(state_h) $(store_h)
  631.  
  632. zpath2.$(OBJ): zpath2.c $(OP) $(alloc_h) $(estack_h) $(gspath_h) $(state_h) $(store_h)
  633.  
  634. ###### Linking
  635.  
  636. INT=ialloc.$(OBJ) idebug.$(OBJ) idict.$(OBJ) iinit.$(OBJ) iname.$(OBJ) \
  637.  interp.$(OBJ) isave.$(OBJ) iscan.$(OBJ) iutil.$(OBJ) \
  638.  sfilter.$(OBJ) stream.$(OBJ) \
  639.  zarith.$(OBJ) zarray.$(OBJ) zcontrol.$(OBJ) zdict.$(OBJ) \
  640.  zfile.$(OBJ) zfileio.$(OBJ) zfilter.$(OBJ) zgeneric.$(OBJ) \
  641.  zmath.$(OBJ) zmisc.$(OBJ) zpacked.$(OBJ) zprops.$(OBJ) zrelbit.$(OBJ) \
  642.  zstack.$(OBJ) zstring.$(OBJ) ztype.$(OBJ) zvmem.$(OBJ) \
  643.  zchar.$(OBJ) zcolor.$(OBJ) zfont.$(OBJ) zfont1.$(OBJ) zfont2.$(OBJ) \
  644.  zdevice.$(OBJ) zgstate.$(OBJ) zht.$(OBJ) zmatrix.$(OBJ) \
  645.  zpaint.$(OBJ) zpath.$(OBJ) zpath2.$(OBJ)
  646.  
  647. # -------------------------- Optional features ---------------------------- #
  648.  
  649. ### Additions common to Display PostScript and Level 2
  650.  
  651. dpsand2_=gsdps1.$(OBJ) ibnum.$(OBJ) ibscan.$(OBJ) \
  652.  zbseq.$(OBJ) zdps1.$(OBJ) zupath.$(OBJ)
  653. dpsand2.dev: $(dpsand2_)
  654.     $(SHP)gssetmod dpsand2 $(dpsand2_)
  655.     $(SHP)gsaddmod dpsand2 -oper zbseq zdps1 zupath
  656.     $(SHP)gsaddmod dpsand2 -ps gs_dps1
  657.  
  658. gsdps1.$(OBJ): gsdps1.c $(GXERR) $(gsmatrix_h) $(gspath_h)
  659.  
  660. ibnum.$(OBJ): ibnum.c $(GH) $(errors_h) $(stream_h) $(bnum_h) $(btoken_h)
  661.  
  662. ibscan.$(OBJ): ibscan.c $(GH) $(errors_h) $(alloc_h) $(dict_h) $(iutil_h) $(name_h) $(ostack_h) $(save_h) $(store_h) $(stream_h) $(bseq_h) $(btoken_h) $(bnum_h)
  663.  
  664. zbseq.$(OBJ): zbseq.c $(OP) $(save_h) $(store_h) $(stream_h) $(file_h) $(name_h) $(bnum_h) $(btoken_h) $(bseq_h)
  665.  
  666. zdps1.$(OBJ): zdps1.c $(OP) $(gsmatrix_h) $(gspath_h) $(gsstate_h) \
  667.  $(state_h) $(store_h) $(stream_h) $(bnum_h)
  668.  
  669. zupath.$(OBJ): zupath.c $(OP) \
  670.  $(dict_h) $(iutil_h) $(state_h) $(store_h) $(stream_h) $(bnum_h) \
  671.  $(gscoord_h) $(gsmatrix_h) $(gspaint_h) $(gspath_h) $(gsstate_h) \
  672.  $(gxfixed_h) $(gxdevice_h) $(gxpath_h)
  673.  
  674. ### Display PostScript
  675.  
  676. # We should include zcontext, but it isn't in good enough shape yet.
  677. dps_=
  678. dps.dev: dpsand2.dev $(dps_)
  679.     $(SHP)gssetmod dps $(dps_)
  680.     $(SHP)gsaddmod dps -include dpsand2
  681.  
  682. zcontext.$(OBJ): zcontext.c $(OP) \
  683.  $(alloc_h) $(dict_h) $(estack_h) $(state_h) $(store_h)
  684.  
  685. ### Level 2 additions -- currently just things common to DPS and Level 2.
  686. # Should also include
  687. #    $(SHP)gsaddmod level2 -ps gs_lev2
  688.  
  689. level2_=
  690. level2.dev: dpsand2.dev $(level2_)
  691.     $(SHP)gssetmod level2 $(level2_)
  692.     $(SHP)gsaddmod level2 -include dpsand2
  693.  
  694. ### Composite font support
  695.  
  696. gschar0.$(OBJ): gschar0.c $(GXERR) \
  697.   $(gxfixed_h) $(gxmatrix_h) $(gzdevice_h) $(gxdevmem_h) $(gxfont_h) $(gxchar_h) $(gzstate_h)
  698.  
  699. zfont0.$(OBJ): zfont0.c $(OP) $(gsmatrix_h) $(gxdevice_h) $(gxfont_h) \
  700.  $(alloc_h) $(font_h) $(dict_h) $(name_h) $(state_h) $(store_h)
  701.  
  702. compfont_=zfont0.$(OBJ) gschar0.$(OBJ)
  703. compfont.dev: $(compfont_)
  704.     $(SHP)gssetmod compfont $(compfont_)
  705.     $(SHP)gsaddmod compfont -oper zfont0
  706.  
  707. ### Filters other than eexec and ASCIIHex
  708.  
  709. sfilter2.$(OBJ): sfilter2.c $(AK) $(std_h) $(scanchar_h) $(stream_h)
  710.  
  711. zfilter2.$(OBJ): zfilter2.c $(OP) $(alloc_h) $(stream_h)
  712.  
  713. filter_=zfilter2.$(OBJ) sfilter2.$(OBJ)
  714. filter.dev: $(filter_)
  715.     $(SHP)gssetmod filter $(filter_)
  716.     $(SHP)gsaddmod filter -oper zfilter2
  717.  
  718. ### LZW encoding/decoding
  719. ### Not included, because Unisys has been awarded a legal monopoly
  720. ### (patent) on the right to implement the freely published algorithms.
  721.  
  722. lzw_=zlzwd.$(OBJ) zlzwe.$(OBJ) slzwd.$(OBJ) slzwe.$(OBJ)
  723. lzw.dev: $(lzw_)
  724.     $(SHP)gssetmod lzw $(lzw_)
  725.     $(SHP)gsaddmod lzw -oper zlzwd zlzwe
  726.  
  727. slzwd.$(OBJ): slzwd.c $(AK) std.h stream.h
  728.  
  729. slzwe.$(OBJ): slzwe.c $(AK) std.h stream.h
  730.  
  731. zlzwd.$(OBJ): zlzwd.c $(OP) $(alloc_h) $(stream_h)
  732.  
  733. zlzwe.$(OBJ): zlzwe.c $(OP) $(alloc_h) $(stream_h)
  734.  
  735. ### Precompiled fonts.  See fonts.doc for more information.
  736.  
  737. CCFONT=$(OP) $(ccfont_h)
  738.  
  739. ccfonts_=ugly.$(OBJ) cour.$(OBJ)
  740. ccfonts.dev: $(ccfonts_) iccfont.$(OBJ)
  741.     $(SHP)gssetmod ccfonts $(ccfonts_) iccfont.$(OBJ)
  742.     $(SHP)gsaddmod ccfonts -oper font_Ugly font_Courier
  743.     $(SHP)gsaddmod ccfonts -ps gs_ccfnt
  744.  
  745. ugly.$(OBJ): ugly.c $(CCFONT)
  746.  
  747. cour.$(OBJ): cour.c $(CCFONT)
  748.  
  749. # ----------------------------- Main program ------------------------------ #
  750.  
  751. # Utilities shared between platforms
  752.  
  753. gsmain.$(OBJ): gsmain.c $(GX) \
  754.   $(gp_h) $(gsmatrix_h) $(gxdevice_h)
  755.  
  756. # Interpreter main program
  757.  
  758. interp.$(OBJ): interp.c $(GH) \
  759.   $(errors_h) $(estack_h) $(name_h) $(dict_h) $(oper_h) $(ostack_h) $(packed_h) $(save_h) $(store_h) $(stream_h)
  760.     $(CCINT) interp.c
  761.  
  762. gs.$(OBJ): gs.c $(GH) $(alloc_h) $(estack_h) $(ostack_h) $(store_h) $(stream_h)
  763. #    Copyright (C) 1989, 1992 Aladdin Enterprises.  All rights reserved.
  764. #    Distributed by Free Software Foundation, Inc.
  765. #
  766. # This file is part of Ghostscript.
  767. #
  768. # Ghostscript is distributed in the hope that it will be useful, but
  769. # WITHOUT ANY WARRANTY.  No author or distributor accepts responsibility
  770. # to anyone for the consequences of using it or for whether it serves any
  771. # particular purpose or works at all, unless he says so in writing.  Refer
  772. # to the Ghostscript General Public License for full details.
  773. #
  774. # Everyone is granted permission to copy, modify and redistribute
  775. # Ghostscript, but only under the conditions described in the Ghostscript
  776. # General Public License.  A copy of this license is supposed to have been
  777. # given to you along with Ghostscript so you can know your rights and
  778. # responsibilities.  It should be in a file named COPYING.  Among other
  779. # things, the copyright notice and this notice must be preserved on all
  780. # copies.
  781.  
  782. # makefile for Ghostscript device drivers.
  783.  
  784. # -------------------------------- Catalog ------------------------------- #
  785.  
  786. # It is possible to build Ghostscript with an arbitrary collection of
  787. # device drivers, although some drivers are supported only on a subset
  788. # of the target platforms.  The currently available drivers are:
  789.  
  790. # Displays:
  791. #   MS-DOS EGA and VGA:
  792. #    ega    EGA (640x350, 16-color)
  793. #    vga    VGA (640x480, 16-color)
  794. #   MS-DOS SuperVGA:
  795. #   ****** NOTE: these devices do not work with the Watcom (32-bit MS-DOS)
  796. #   ****** compiler or executable.
  797. # +    atiw    ATI Wonder SuperVGA
  798. # *    mdb10    EIZO MDB-10 (1024 x 768)
  799. #    tseng    SuperVGA using Tseng Labs ET3000/4000 chips
  800. #    tseng16  Tseng Labs SuperVGA in 800x600, 16-color mode (256K memory)
  801. # +    tvga16    Trident SuperVGA in 800x600, 16-color mode (256K memory)
  802. #    vesa    SuperVGA with VESA standard API
  803. #   MS-DOS other:
  804. #    bgi    Borland Graphics Interface (CGA and Hercules)
  805. # *    pe    Private Eye
  806. #   Unix and VMS:
  807. # *    sonyfb    Sony Microsystems monochrome display   [Sony only]
  808. # *    sunview  SunView window system   [SunOS only]
  809. #    x11    X Windows version 11, release >=3   [Unix and VMS only]
  810. # Printers:
  811. #    bj10e    Canon BubbleJet BJ10e
  812. # *    cdeskjet  H-P DeskJet 500C
  813. # +    deskjet  H-P DeskJet and DeskJet Plus
  814. # *    dfaxhigh  DigiBoard, Inc.'s DigiFAX software format (high resolution)
  815. # *    dfaxlow  DigiFAX low (normal) resolution
  816. #    djet500  H-P DeskJet 500
  817. # *    djet500c  H-P DeskJet 500C
  818. #    epson    Epson-compatible dot matrix printers (9- or 24-pin)
  819. # *    epsonc    Epson LQ-2550 and Fujitsu 3400/2400/1200 color printers
  820. # +    laserjet  H-P LaserJet
  821. # *    lbp8    Canon LBP-8II laser printer
  822. # *    ln03    DEC LN03 printer   [Ultrix only?]
  823. # +    ljet2p    H-P LaserJet IId/IIp/III* with TIFF compression
  824. # +    ljet3    H-P LaserJet III* with Delta Row compression
  825. # *    ljetplus  H-P LaserJet Plus
  826. # *    nwp533  Sony Microsystems NWP533 laser printer   [Sony only]
  827. #    paintjet  H-P PaintJet color printer
  828. # *    r4081    Ricoh 4081 laser printer
  829. # *    trufax    TruFax facsimile driver  [Unix only]
  830. # File formats and others:
  831. #    bit    A "bit bucket" device for time benchmarking
  832.  
  833. # User-contributed drivers marked with * require hardware or software
  834. # that is not available to Aladdin Enterprises.  Please contact the
  835. # original contributors, not Aladdin Enterprises, if you have questions.
  836. # Contact information appears in the driver entry below.
  837. #
  838. # Drivers marked with a + are maintained by Aladdin Enterprises with
  839. # the assistance of users, since Aladdin Enterprises doesn't have access to
  840. # the hardware for these either.
  841.  
  842. # If you add drivers, it would be nice if you kept each list
  843. # in alphabetical order.
  844.  
  845. # Each platform-specific makefile must contain a line of the form
  846. #    DEVICE_DEVS=<dev1>.dev ... <devn>.dev
  847. # where dev1 ... devn are the devices to be included in the build.
  848. # dev1 will be used as the default device.
  849. # On MS-DOS platforms, this line must appear before the lines
  850. #    (!)include gs.mak
  851. #    (!)include devs.mak
  852. # in the makefile; on Unix systems, the device definition line
  853. # may appear anywhere in the makefile.
  854.  
  855. # ---------------------------- End of catalog ---------------------------- #
  856.  
  857. # If you want to add a new device driver, the examples below should be
  858. # enough of a guide to the correct form for the makefile rules.
  859.  
  860. # All device drivers depend on the following:
  861. GDEV=$(AK) $(gx_h) $(gxdevice_h)
  862.  
  863. ###### ------------------- MS-DOS display devices ------------------- ######
  864.  
  865. # There are really only two drivers: an EGA/VGA driver (4 bit-planes,
  866. # plane-addressed) and a SuperVGA driver (8 bit-planes, byte addressed).
  867.  
  868. ### ----------------------- EGA and VGA displays ----------------------- ###
  869.  
  870. gdevegaa.$(OBJ): gdevegaa.asm
  871.  
  872. ETEST=ega.$(OBJ) trace.$(OBJ) $(ega_)
  873. ega.exe: $(ETEST) libc$(MM).tr
  874.     tlink /m /l $(LIBDIR)\c0$(MM) @ega.tr @libc$(MM).tr
  875.  
  876. ega.$(OBJ): ega.c $(GDEV)
  877.  
  878. # The shared MS-DOS makefile defines PCFBASM as either gdevegaa.$(OBJ)
  879. # or an empty string.
  880.  
  881. EGAVGA=gdevpcfb.$(OBJ) $(PCFBASM)
  882.  
  883. gdevpcfb.$(OBJ): gdevpcfb.c $(GDEV) $(MAKEFILE) $(dos__h)
  884.     $(CCC) -DUSE_ASM=0$(USE_ASM) gdevpcfb.c
  885.  
  886. # The EGA/VGA family includes: EGA, VGA, MDB-10, and the
  887. # Tseng ET3000/4000 and Trident SuperVGA in 16-color mode.
  888.  
  889. ega.dev: $(EGAVGA)
  890.     $(SHP)gssetdev ega $(EGAVGA)
  891.  
  892. vga.dev: $(EGAVGA)
  893.     $(SHP)gssetdev vga $(EGAVGA)
  894.  
  895. mdb10.dev: $(EGAVGA)
  896.     $(SHP)gssetdev mdb10 $(EGAVGA)
  897.  
  898. tseng16.dev: $(EGAVGA)
  899.     $(SHP)gssetdev tseng16 $(EGAVGA)
  900.  
  901. tvga16.dev: $(EGAVGA)
  902.     $(SHP)gssetdev tvga16 $(EGAVGA)
  903.  
  904. ### ------------------------- SuperVGA displays ------------------------ ###
  905.  
  906. SVGA=gdevsvga.$(OBJ) $(PCFBASM)
  907.  
  908. gdevsvga.$(OBJ): gdevsvga.c $(GDEV) $(MAKEFILE) $(dos__h)
  909.     $(CCC) -DUSE_ASM=0$(USE_ASM) gdevsvga.c
  910.  
  911. # The SuperVGA family includes: ATI Wonder, Tseng ET3000/4000, and VESA.
  912.  
  913. atiw.dev: $(SVGA)
  914.     $(SHP)gssetdev atiw $(SVGA)
  915.  
  916. tseng.dev: $(SVGA)
  917.     $(SHP)gssetdev tseng $(SVGA)
  918.  
  919. vesa.dev: $(SVGA)
  920.     $(SHP)gssetdev vesa $(SVGA)
  921.  
  922. ### ------------ The BGI (Borland Graphics Interface) device ----------- ###
  923.  
  924. # We should use an implicit rule for running bgiobj,
  925. # but a bug in Borland's `make' utility makes this not work.
  926.  
  927. cga.$(OBJ): $(BGIDIR)\cga.bgi
  928.     $(BGIDIR)\bgiobj $(BGIDIR)\$&
  929.  
  930. egavga.$(OBJ): $(BGIDIR)\egavga.bgi
  931.     $(BGIDIR)\bgiobj $(BGIDIR)\$&
  932.  
  933. herc.$(OBJ): $(BGIDIR)\herc.bgi
  934.     $(BGIDIR)\bgiobj $(BGIDIR)\$&
  935.  
  936. # Include egavga.$(OBJ) for debugging only.
  937. bgi_=gdevbgi.$(OBJ) cga.$(OBJ) herc.$(OBJ)
  938. bgi.dev: $(bgi_)
  939.     $(SHP)gssetdev bgi $(bgi_)
  940.     $(SHP)gsaddmod bgi -lib $(LIBDIR)\graphics
  941.  
  942. gdevbgi.$(OBJ): gdevbgi.c $(GDEV) $(MAKEFILE)
  943.     $(CCC) -DBGI_LIB=$(QQ)$(BGIDIR)$(QQ) gdevbgi.c
  944.  
  945. ###### ------------------- The Private Eye display ------------------- ######
  946. ### Note: this driver was contributed by a user:                          ###
  947. ###   please contact narf@media-lab.media.mit.edu if you have questions.  ###
  948.  
  949. pe_=gdevpe.$(OBJ)
  950. pe.dev: $(pe_)
  951.     $(SHP)gssetdev pe $(pe_)
  952.  
  953. gdevpe.$(OBJ): gdevpe.c $(GDEV)
  954.  
  955. ###### --------------- Memory-buffered printer devices --------------- ######
  956.  
  957. PDEVH=$(GDEV) $(gxdevmem_h) $(gxclist_h) $(gdevprn_h)
  958.  
  959. gdevprn.$(OBJ): gdevprn.c $(PDEVH) $(gp_h) $(gsprops_h)
  960.  
  961. ### ----------------- The Canon BubbleJet BJ10e device ----------------- ###
  962.  
  963. bj10e_=gdevbj10.$(OBJ) gdevprn.$(OBJ)
  964. bj10e.dev: $(bj10e_)
  965.     $(SHP)gssetdev bj10e $(bj10e_)
  966.  
  967. gdevbj10.$(OBJ): gdevbj10.c $(PDEVH)
  968.  
  969. ### -------------------------- The DigiFAX device ----------------------- ###
  970. ###    This driver outputs images in a format suitable for use with       ###
  971. ###    DigiBoard, Inc.'s DigiFAX software.  Use -sDEVICE=dfaxhigh for     ###
  972. ###    high resolution output, -sDEVICE=dfaxlow for normal output.        ###
  973. ### Note: this driver was contributed by a user: please contact           ###
  974. ###       Rick Richardson (rick@digibd.com) if you have questions.        ###
  975.  
  976. digifax_=gdevdfax.$(OBJ) gdevprn.$(OBJ)
  977. dfaxhigh.dev: $(digifax_)
  978.     $(SHP)gssetdev dfaxhigh $(digifax_)
  979.  
  980. dfaxlow.dev: $(digifax_)
  981.     $(SHP)gssetdev dfaxlow $(digifax_)
  982.  
  983. gdevdfax.$(OBJ): gdevdfax.c $(GDEV) $(gdevprn_h) gdevdfg3.h
  984.  
  985. ### ----------- The H-P DeskJet and LaserJet printer devices ----------- ###
  986.  
  987. ### These are essentially the same device.
  988.  
  989. HPPCL=gdevprn.$(OBJ) gdevpcl.$(OBJ)
  990. HPMONO=gdevdjet.$(OBJ) $(HPPCL)
  991.  
  992. gdevpcl.$(OBJ): gdevpcl.c $(PDEVH) $(gdevpcl_h)
  993.  
  994. gdevdjet.$(OBJ): gdevdjet.c $(PDEVH) $(gdevpcl_h)
  995.  
  996. deskjet.dev: $(HPMONO)
  997.     $(SHP)gssetdev deskjet $(HPMONO)
  998.  
  999. djet500.dev: $(HPMONO)
  1000.     $(SHP)gssetdev djet500 $(HPMONO)
  1001.  
  1002. laserjet.dev: $(HPMONO)
  1003.     $(SHP)gssetdev laserjet $(HPMONO)
  1004.  
  1005. ljetplus.dev: $(HPMONO)
  1006.     $(SHP)gssetdev ljetplus $(HPMONO)
  1007.  
  1008. ### Selecting ljet2p provides TIFF (mode 2) compression on LaserJet III,
  1009. ### IIIp, IIId, IIIsi, IId, and IIp. 
  1010.  
  1011. ljet2p.dev: $(HPMONO)
  1012.     $(SHP)gssetdev ljet2p $(HPMONO)
  1013.  
  1014. ### Selecting ljet3 provides Delta Row (mode 3) compression on LaserJet III,
  1015. ### IIIp, IIId, IIIsi.
  1016.  
  1017. ljet3.dev: $(HPMONO)
  1018.     $(SHP)gssetdev ljet3 $(HPMONO)
  1019.  
  1020. ### ------------ The H-P DeskJet 500C color printer device -------------- ###
  1021. ### Note: there are two different 500C drivers, both contributed by users.###
  1022. ###   If you have questions about the djet500c driver,                    ###
  1023. ###       please contact AKayser@et.tudelft.nl.                           ###
  1024. ###   If you have questions about the cdeskjet driver,                    ###
  1025. ###       please contact g.cameron@aberdeen.ac.uk.                        ###
  1026.  
  1027. cdeskjet_=gdevcdj.$(OBJ) $(HPPCL)
  1028. cdeskjet.dev: $(cdeskjet_)
  1029.     $(SHP)gssetdev cdeskjet $(cdeskjet_)
  1030.  
  1031. gdevcdj.$(OBJ): gdevcdj.c $(PDEVH) $(gdevpcl_h)
  1032.  
  1033. djet500c_=gdevdjtc.$(OBJ) $(HPPCL)
  1034. djet500c.dev: $(djet500c_)
  1035.     $(SHP)gssetdev djet500c $(djet500c_)
  1036.  
  1037. gdevdjtc.$(OBJ): gdevdjtc.c $(PDEVH) $(gdevpcl_h)
  1038.  
  1039. ### ----------------- The generic Epson printer device ----------------- ###
  1040.  
  1041. epson_=gdevepsn.$(OBJ) gdevprn.$(OBJ)
  1042. epson.dev: $(epson_)
  1043.     $(SHP)gssetdev epson $(epson_)
  1044.  
  1045. gdevepsn.$(OBJ): gdevepsn.c $(PDEVH) devs.mak
  1046.  
  1047. ### -------------- The Epson LQ-2550 color printer device -------------- ###
  1048. ### Note: this driver was contributed by users: please contact           ###
  1049. ###       Dave St. Clair (dave@exlog.com) if you have questions.         ###
  1050.  
  1051. epsonc_=gdevepsc.$(OBJ) gdevprn.$(OBJ)
  1052. epsonc.dev: $(epsonc_)
  1053.     $(SHP)gssetdev epsonc $(epsonc_)
  1054.  
  1055. gdevepsc.$(OBJ): gdevepsc.c $(PDEVH) devs.mak
  1056.  
  1057. ### ------------ The H-P PaintJet color printer device ----------------- ###
  1058.  
  1059. paintjet_=gdevpjet.$(OBJ) $(HPPCL)
  1060. paintjet.dev: $(paintjet_)
  1061.     $(SHP)gssetdev paintjet $(paintjet_)
  1062.  
  1063. gdevpjet.$(OBJ): gdevpjet.c $(PDEVH) $(gdevpcl_h)
  1064.  
  1065. ### ----------------- The Canon LBP-8II printer device ----------------- ###
  1066. ### Note: this driver was contributed by users: please contact           ###
  1067. ###       Tom Quinn (trq@prg.oxford.ac.uk) if you have questions.        ###
  1068. ### Note that the standard paper size for this driver is the European    ###
  1069. ###   A4 size, not the American 8.5" x 11" size.                         ###
  1070.  
  1071. lbp8_=gdevlbp8.$(OBJ) gdevprn.$(OBJ)
  1072. lbp8.dev: $(lbp8_)
  1073.     $(SHP)gssetdev lbp8 $(lbp8_)
  1074.  
  1075. gdevlbp8.$(OBJ): gdevlbp8.c $(PDEVH)
  1076.  
  1077. ### ----------------- The DEC LN03 printer device ---------------------- ###
  1078. ### Note: this driver was contributed by users: please contact           ###
  1079. ###       Ulrich Mueller (ulm@vsnhd1.cern.ch) if you have questions.     ###
  1080. ### A more general sixel driver is available from                        ###
  1081. ###       Ian MacPhedran (macphed@dvinci.USask.CA).                      ###
  1082.  
  1083. ln03_=gdevln03.$(OBJ) gdevprn.$(OBJ)
  1084. ln03.dev: $(ln03_)
  1085.     $(SHP)gssetdev ln03 $(ln03_)
  1086.  
  1087. gdevln03.$(OBJ): gdevln03.c $(PDEVH)
  1088.  
  1089. ### ------------- The Ricoh 4081 laser printer device ------------------ ###
  1090. ### Note: this driver was contributed by users:                          ###
  1091. ###       please contact kdw@oasis.icl.co.uk if you have questions.      ###
  1092.  
  1093. r4081_=gdev4081.$(OBJ) gdevprn.$(OBJ)
  1094. r4081.dev: $(r4081_)
  1095.     $(SHP)gssetdev r4081 $(r4081_)
  1096.  
  1097. gdev4081.$(OBJ): gdev4081.c $(PDEVH)
  1098.  
  1099. ###### ------------------------ Sony devices ------------------------ ######
  1100. ### Note: these drivers were contributed by users: please contact        ###
  1101. ###       Mike Smolenski (mike@srava.sra.co.jp) if you have questions.   ###
  1102.  
  1103. ### ------------------- Sony NeWS frame buffer device ------------------ ###
  1104.  
  1105. sonyfb_=gdevsnfb.$(OBJ) gdevprn.$(OBJ)
  1106. sonyfb.dev: $(sonyfb_)
  1107.     $(SHP)gssetdev sonyfb $(sonyfb_)
  1108.  
  1109. gdevsnfb.$(OBJ): gdevsnfb.c $(PDEVH)
  1110.  
  1111. ### -------------------- Sony NWP533 printer device -------------------- ###
  1112.  
  1113. nwp533_=gdevn533.$(OBJ) gdevprn.$(OBJ)
  1114. nwp533.dev: $(nwp533_)
  1115.     $(SHP)gssetdev nwp533 $(nwp533_)
  1116.  
  1117. gdevn533.$(OBJ): gdevn533.c $(PDEVH)
  1118.  
  1119. ###### --------------------- The SunView device --------------------- ######
  1120.  
  1121. sunview_=gdevsun.$(OBJ)
  1122. sunview.dev: $(sunview_)
  1123.     $(SHP)gssetdev sunview $(sunview_)
  1124.     $(SHP)gsaddmod sunview -lib suntool sunwindow pixrect
  1125.  
  1126. gdevsun.$(OBJ): gdevsun.c $(GDEV) $(arch_h)
  1127.  
  1128. ### ----------------- The TruFax facsimile device ---------------------- ###
  1129. ### Note: this driver was contributed by users:                          ###
  1130. ###       please contact nao@maestro.bellcore.com if you have questions. ###
  1131. ### Note that the driver requires a file encode_l.o supplied by the      ###
  1132. ###   makers of the TruFax product.                                      ###
  1133.  
  1134. trufax_=gdevtrfx.$(OBJ) gdevprn.$(OBJ) encode_l.$(OBJ)
  1135. trufax.dev: $(trufax_)
  1136.     $(SHP)gssetdev trufax $(trufax_)
  1137.  
  1138. gdevtrfx.$(OBJ): gdevtrfx.c $(GDEV)
  1139.  
  1140. ###### ----------------------- The X11 device ----------------------- ######
  1141.  
  1142. # Note that this includes some extra libraries to support Ghostview.
  1143. # Xt and Xext are included because on SunOS, some routine in Xmu calls
  1144. # XtMalloc, and something in Xt calls something in Xext, and Sun's
  1145. # dynamic library scheme requires pulling in all 3 libraries.
  1146. # On other operating systems, only Xmu is needed.
  1147.  
  1148. # Aladdin Enterprises does not support Ghostview.  For more information
  1149. # about Ghostview, contact Tim Theisen (ghostview@cs.wisc.edu).
  1150.  
  1151. x11_=gdevx.$(OBJ) gdevxini.$(OBJ)
  1152. x11.dev: $(x11_)
  1153.     $(SHP)gssetdev x11 $(x11_)
  1154.     $(SHP)gsaddmod x11 -lib Xmu Xt Xext X11
  1155.  
  1156. # See the main makefile for the definition of XINCLUDE.
  1157. GDEVX=$(GDEV) x_.h gdevx.h $(MAKEFILE)
  1158. gdevx.$(OBJ): gdevx.c $(GDEVX)
  1159.     $(CCC) $(XINCLUDE) gdevx.c
  1160.  
  1161. gdevxini.$(OBJ): gdevxini.c $(GDEVX)
  1162.     $(CCC) $(XINCLUDE) gdevxini.c
  1163.  
  1164. ### ---------------------- The bit bucket device ----------------------- ###
  1165.  
  1166. bit_=gdevbit.$(OBJ) gdevprn.$(OBJ)
  1167. bit.dev: $(bit_)
  1168.     $(SHP)gssetdev bit $(bit_)
  1169.  
  1170. gdevbit.$(OBJ): gdevbit.c $(PDEVH)
  1171. #    Copyright (C) 1990, 1992 Aladdin Enterprises.  All rights reserved.
  1172. #    Distributed by Free Software Foundation, Inc.
  1173. #
  1174. # This file is part of Ghostscript.
  1175. #
  1176. # Ghostscript is distributed in the hope that it will be useful, but
  1177. # WITHOUT ANY WARRANTY.  No author or distributor accepts responsibility
  1178. # to anyone for the consequences of using it or for whether it serves any
  1179. # particular purpose or works at all, unless he says so in writing.  Refer
  1180. # to the Ghostscript General Public License for full details.
  1181. #
  1182. # Everyone is granted permission to copy, modify and redistribute
  1183. # Ghostscript, but only under the conditions described in the Ghostscript
  1184. # General Public License.  A copy of this license is supposed to have been
  1185. # given to you along with Ghostscript so you can know your rights and
  1186. # responsibilities.  It should be in a file named COPYING.  Among other
  1187. # things, the copyright notice and this notice must be preserved on all
  1188. # copies.
  1189.  
  1190. # Partial makefile for Ghostscript, common to all Unix configurations.
  1191.  
  1192. # This is the last part of the makefile for Unix configurations.
  1193. # Since Unix make doesn't have an 'include' facility, we concatenate
  1194. # the various parts of the makefile together by brute force (in tar_cat).
  1195.  
  1196. # The following prevents GNU make from constructing argument lists that
  1197. # include all environment variables, which can easily be longer than
  1198. # brain-damaged system V allows.
  1199.  
  1200. .NOEXPORT:
  1201.  
  1202. # -------------------------------- Library -------------------------------- #
  1203.  
  1204. ## The Unix platform
  1205.  
  1206. unix__=gp_unix.$(OBJ)
  1207. unix_.dev: $(unix__)
  1208.     $(SHP)gssetmod unix_ $(unix__)
  1209.  
  1210. gp_unix.$(OBJ): gp_unix.c $(memory__h) $(string__h) $(gx_h) $(gp_h) \
  1211.  $(stat__h) $(time__h)
  1212.  
  1213. # -------------------------- Auxiliary programs --------------------------- #
  1214.  
  1215. ansi2knr$(XE):
  1216.     $(CC) -o ansi2knr$(XE) $(CFLAGS) ansi2knr.c $(EXTRALIBS)
  1217.  
  1218. genarch$(XE): genarch.c
  1219.     $(CC) -o genarch$(XE) $(CFLAGS) genarch.c $(EXTRALIBS)
  1220.  
  1221. # ----------------------------- Main program ------------------------------ #
  1222.  
  1223. # (Dummy) tracing package
  1224.  
  1225. utrace.$(OBJ): utrace.c
  1226.  
  1227. # Main program
  1228.  
  1229. ALLUNIX=gsmain.$(OBJ) utrace.$(OBJ) $(LIB)
  1230.  
  1231. # Interpreter main program
  1232.  
  1233. GSUNIX=gs.$(OBJ) $(INT) $(ALLUNIX)
  1234.  
  1235. gs: $(GSUNIX) obj.tr lib.tr
  1236.     $(SHP)echoq $(CC) $(LDFLAGS) $(XLIBDIRS) -o gs $(GSUNIX) >_temp_
  1237.     cat obj.tr >>_temp_
  1238.     cat lib.tr >>_temp_
  1239.     echo $(EXTRALIBS) -lm >>_temp_
  1240.     $(SH) <_temp_
  1241.  
  1242. # Installation
  1243.  
  1244. TAGS:
  1245.     etags -t *.c *.h
  1246.  
  1247. install: gs
  1248.     -mkdir $(bindir)
  1249.     $(INSTALL_PROGRAM) gs $(bindir)
  1250.     $(INSTALL_PROGRAM) gsnd $(bindir)
  1251.     $(INSTALL_PROGRAM) bdftops $(bindir)
  1252.     $(INSTALL_PROGRAM) font2c $(bindir)
  1253.     $(INSTALL_PROGRAM) pfbtogs $(bindir)
  1254.     -mkdir $(libdir)
  1255.     $(INSTALL_DATA) gs_init.ps $(libdir)
  1256.     $(INSTALL_DATA) gs_2asc.ps $(libdir)
  1257.     $(INSTALL_DATA) gs_ccfnt.ps $(libdir)
  1258.     $(INSTALL_DATA) gs_dps1.ps $(libdir)
  1259.     $(INSTALL_DATA) gs_fonts.ps $(libdir)
  1260.     $(INSTALL_DATA) gs_lev2.ps $(libdir)
  1261.     $(INSTALL_DATA) gs_statd.ps $(libdir)
  1262.     $(INSTALL_DATA) sym__enc.ps $(libdir)
  1263.     $(INSTALL_DATA) gconfig.ps $(libdir)
  1264.     $(INSTALL_DATA) quit.ps $(libdir)
  1265.     $(INSTALL_DATA) Fontmap $(libdir)
  1266.     $(INSTALL_DATA) uglyr.gsf $(libdir)
  1267.     $(INSTALL_DATA) chess.ps $(libdir)
  1268.     $(INSTALL_DATA) cheq.ps $(libdir)
  1269.     $(INSTALL_DATA) golfer.ps $(libdir)
  1270.     $(INSTALL_DATA) escher.ps $(libdir)
  1271.     $(INSTALL_DATA) decrypt.ps $(libdir)
  1272.     $(INSTALL_DATA) bdftops.ps $(libdir)
  1273.     $(INSTALL_DATA) font2c.ps $(libdir)
  1274.     $(INSTALL_DATA) pfbtogs.ps $(libdir)
  1275.     $(INSTALL_DATA) pstoppm.ps $(libdir)
  1276.     $(INSTALL_DATA) prfont.ps $(libdir)
  1277.