home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 4 / FreshFish_May-June1994.bin / bbs / gnu / gs-2.6.1.4-src.lha / src / amiga / ghostscript-2.6.1 / unix-ansi.mak < prev    next >
Encoding:
Makefile  |  1994-01-28  |  67.1 KB  |  1,958 lines

  1. #    Copyright (C) 1989, 1990, 1991, 1993 Aladdin Enterprises.  All rights reserved.
  2. #
  3. # This file is part of Ghostscript.
  4. #
  5. # Ghostscript is distributed in the hope that it will be useful, but
  6. # WITHOUT ANY WARRANTY.  No author or distributor accepts responsibility
  7. # to anyone for the consequences of using it or for whether it serves any
  8. # particular purpose or works at all, unless he says so in writing.  Refer
  9. # to the Ghostscript General Public License for full details.
  10. #
  11. # Everyone is granted permission to copy, modify and redistribute
  12. # Ghostscript, but only under the conditions described in the Ghostscript
  13. # General Public License.  A copy of this license is supposed to have been
  14. # given to you along with Ghostscript so you can know your rights and
  15. # responsibilities.  It should be in a file named COPYING.  Among other
  16. # things, the copyright notice and this notice must be preserved on all
  17. # copies.
  18.  
  19. # makefile for Ghostscript, Unix/ANSI C/X11 configuration.
  20.  
  21. # ------------------------------- Options ------------------------------- #
  22.  
  23. ####### The following are the only parts of the file you should need to edit.
  24.  
  25. # ------ Generic options ------ #
  26.  
  27. # Define the installation commands and target directories for
  28. # executables and files.  Only relevant to `make install'.
  29.  
  30. INSTALL = install -c
  31. INSTALL_PROGRAM = $(INSTALL) -m 775
  32. INSTALL_DATA = $(INSTALL) -m 664
  33.  
  34. prefix = /usr/local
  35. exec_prefix = $(prefix)
  36. bindir = $(exec_prefix)/bin
  37. datadir = $(prefix)/lib
  38. gsdatadir = $(datadir)/ghostscript
  39.  
  40. # Define the default directory/ies for the runtime
  41. # initialization and font files.  Separate multiple directories with a :.
  42.  
  43. GS_LIB_DEFAULT=$(gsdatadir):$(gsdatadir)/fonts
  44.  
  45. # Define the name of the Ghostscript initialization file.
  46. # (There is no reason to change this.)
  47.  
  48. GS_INIT=gs_init.ps
  49.  
  50. # Choose generic configuration options.
  51.  
  52. # -DDEBUG
  53. #    includes debugging features (-Z switch) in the code.
  54. #      Code runs substantially slower even if no debugging switches
  55. #      are set.
  56. # -DNOPRIVATE
  57. #    makes private (static) procedures and variables public,
  58. #      so they are visible to the debugger and profiler.
  59. #      No execution time or space penalty.
  60.  
  61. GENOPT=
  62.  
  63. # Define the name of the executable file.
  64.  
  65. GS=gs
  66.  
  67. # ------ Platform-specific options ------ #
  68.  
  69. # Define the name of the C compiler.  If the standard compiler for your
  70. # platform is ANSI-compatible, leave this line commented out; if not,
  71. # uncomment the line and insert the proper definition.
  72.  
  73. #CC=some_C_compiler
  74.  
  75. # Define the other compilation flags.
  76. # Add -DBSD4_2 for 4.2bsd systems.
  77. # Add -DSYSV for System V or DG/UX.
  78. # Add -DSVR4 (not -DSYSV) for System V release 4.
  79. # The HP 400 seems to want -Aa -w -D_HPUX_SOURCE.
  80. # XCFLAGS can be set from the command line.
  81.  
  82. CFLAGS=-O $(XCFLAGS)
  83.  
  84. # Define platform flags for ld.
  85. # SunOS and some others want -X; Ultrix wants -x.
  86. # SunOS 4.n may need -Bstatic.
  87. # Apollos running DomainOS don't support -X (and -x has no effect).
  88. # XLDFLAGS can be set from the command line.
  89.  
  90. LDFLAGS=$(XLDFLAGS)
  91.  
  92. # Define any extra libraries to link into the executable.
  93. # ISC Unix 2.2 wants -linet.
  94. # SCO Unix needs -lsocket if you aren't including the X11 driver.
  95. # (Libraries required by individual drivers are handled automatically.)
  96.  
  97. EXTRALIBS=
  98.  
  99. # Define the include switch(es) for the X11 header files.
  100. # This can be null if handled in some other way (e.g., the files are
  101. # in /usr/include, or the directory is supplied by an environment variable).
  102. # Note that x_.h expects to find the header files in $(XINCLUDE)/X11,
  103. # not in $(XINCLUDE).
  104.  
  105. XINCLUDE=-I/usr/local/X/include
  106.  
  107. # Define the directory/ies for the X11 library files.
  108. # This can be null if these files are in the default linker search path.
  109.  
  110. XLIBDIRS=-L/usr/local/X/lib
  111.  
  112. # ------ Devices and features ------ #
  113.  
  114. # Choose the language feature(s) to include.  See gs.mak for details.
  115.  
  116. FEATURE_DEVS=filter.dev dps.dev level2.dev
  117.  
  118. # Choose the device(s) to include.  See devs.mak for details.
  119.  
  120. DEVICE_DEVS=x11.dev
  121. DEVICE_DEVS9=pbm.dev pbmraw.dev pgm.dev pgmraw.dev ppm.dev ppmraw.dev bit.dev
  122.  
  123. # ---------------------------- End of options --------------------------- #
  124.  
  125. # Define the name of the makefile -- used in dependencies.
  126.  
  127. MAKEFILE=unix-ansi.mak
  128.  
  129. # Define the ANSI-to-K&R dependency (none for ANSI compilers).
  130.  
  131. AK=
  132.  
  133. # Define the compilation rules and flags.
  134.  
  135. CCC=$(CC) $(CCFLAGS) -c
  136.  
  137. # --------------------------- Generic makefile ---------------------------- #
  138.  
  139. # The remainder of the makefile (unixhead.mak, gs.mak, devs.mak, unixtail.mak)
  140. # is generic.  tar_cat concatenates all these together.
  141. #    Copyright (C) 1990, 1991, 1993 Aladdin Enterprises.  All rights reserved.
  142. #
  143. # This file is part of Ghostscript.
  144. #
  145. # Ghostscript is distributed in the hope that it will be useful, but
  146. # WITHOUT ANY WARRANTY.  No author or distributor accepts responsibility
  147. # to anyone for the consequences of using it or for whether it serves any
  148. # particular purpose or works at all, unless he says so in writing.  Refer
  149. # to the Ghostscript General Public License for full details.
  150. #
  151. # Everyone is granted permission to copy, modify and redistribute
  152. # Ghostscript, but only under the conditions described in the Ghostscript
  153. # General Public License.  A copy of this license is supposed to have been
  154. # given to you along with Ghostscript so you can know your rights and
  155. # responsibilities.  It should be in a file named COPYING.  Among other
  156. # things, the copyright notice and this notice must be preserved on all
  157. # copies.
  158.  
  159. # Partial makefile for Ghostscript, common to all Unix configurations.
  160.  
  161. # This part of the makefile gets inserted after the compiler-specific part
  162. # (xxx-head.mak) and before gs.mak and devs.mak.
  163.  
  164. # ----------------------------- Generic stuff ----------------------------- #
  165.  
  166. # Define the platform name.  For a "stock" System V platform,
  167. # use sysv_ instead of unix_.
  168.  
  169. PLATFORM=unix_
  170.  
  171. # Define the extensions for the object and executable files.
  172.  
  173. OBJ=o
  174. XE=
  175.  
  176. # Define the current directory prefix, shell quote string, and shell names.
  177.  
  178. EXP=./
  179. QQ=\"
  180. SHELL=/bin/sh
  181. SH=$(SHELL)
  182. SHP=$(SH) $(EXP)
  183.  
  184. # Define the compilation rules and flags.
  185.  
  186. CCFLAGS=$(GENOPT) $(CFLAGS)
  187.  
  188. .c.o: $(AK)
  189.     $(CCC) $*.c
  190.  
  191. CCCF=$(CCC)
  192. CCD=$(CCC)
  193. CCINT=$(CCC)
  194. #    Copyright (C) 1989, 1992, 1993 Aladdin Enterprises.  All rights reserved.
  195. #
  196. # This file is part of Ghostscript.
  197. #
  198. # Ghostscript is distributed in the hope that it will be useful, but
  199. # WITHOUT ANY WARRANTY.  No author or distributor accepts responsibility
  200. # to anyone for the consequences of using it or for whether it serves any
  201. # particular purpose or works at all, unless he says so in writing.  Refer
  202. # to the Ghostscript General Public License for full details.
  203. #
  204. # Everyone is granted permission to copy, modify and redistribute
  205. # Ghostscript, but only under the conditions described in the Ghostscript
  206. # General Public License.  A copy of this license is supposed to have been
  207. # given to you along with Ghostscript so you can know your rights and
  208. # responsibilities.  It should be in a file named COPYING.  Among other
  209. # things, the copyright notice and this notice must be preserved on all
  210. # copies.
  211.  
  212. # Generic makefile for Ghostscript.
  213. # The platform-specific makefiles `include' this file.
  214. # They define the following symbols:
  215. #    GS - the name of the executable (without the extension, if any).
  216. #    GS_LIB_DEFAULT - the default directory/ies for searching for the
  217. #        initialization and font files at run time.
  218. #    DEVICE_DEVS - the devices to include in the executable.
  219. #        See devs.mak for details.
  220. #    DEVICE_DEVS1...DEVICE_DEVS9 - additional devices, if the definition of
  221. #        DEVICE_DEVS doesn't fit on one line.
  222. #        See devs.mak for details.
  223. #    FEATURE_DEVS - the optional features to include in the
  224. #        executable.  Current features are:
  225. #            dps - (partial) support for Display PostScript extensions:
  226. #            see language.doc for details.
  227. #            level2 - (partial) support for PostScript Level 2
  228. #            extensions: see language.doc for details.
  229. #            compfont - support for composite (type 0) fonts.
  230. #            *** NOT IMPLEMENTED YET. ***
  231. #            filter - support for Level 2 filters (other than eexec,
  232. #            ASCIIHexEncode/Decode, NullEncode, PFBDecode,
  233. #            and SubFileDecode, which are always included).
  234. #            ccfonts - precompile fonts into C, and link them
  235. #            with the executable.  In the standard makefiles,
  236. #            this is only implemented for a very few fonts:
  237. #            see fonts.doc for details.
  238. # It is very unlikely that anyone would want to edit the remaining
  239. #   symbols, but we describe them here for completeness:
  240. #    GS_INIT - the name of the initialization file for Ghostscript,
  241. #        normally gs_init.ps.
  242. #    PLATFORM - a "device" name for the platform, so that platforms can
  243. #        add various kinds of resources like devices and features.
  244. #    QQ - a " preceded by whatever escape characters are needed to
  245. #        persuade the shell to pass a " to a program (" on MS-DOS,
  246. #        \" on Unix).
  247. #    XE - the extension for executable files (e.g., null or .exe).
  248. #    OBJ - the extension for relocatable object files (e.g., o or obj).
  249. #    BEGINFILES - the list of files that `make begin' should delete.
  250. #    CCBEGIN - the compilation command for `make begin', normally
  251. #        $(CCC) *.c.
  252. #    CCC - the C invocation for normal compilation.
  253. #    CCD - the C invocation for files that store into frame buffers or
  254. #        device registers.  Needed because some optimizing compilers
  255. #        will eliminate necessary stores.
  256. #    CCCF - the C invocation for compiled fonts and other large,
  257. #        self-contained data modules.  Needed because MS-DOS
  258. #        requires using the 'huge' memory model for these.
  259. #    CCINT - the C invocation for compiling the main interpreter module,
  260. #        normally the same as CCC: this is needed because the
  261. #        Borland compiler generates *worse* code for this module
  262. #        (but only this module) when optimization (-O) is turned on.
  263. #    AK - if source files must be converted from ANSI to K&R syntax,
  264. #        this is ansi2knr$(XE); if not, it is null.
  265. #        If a particular platform requires other utility programs
  266. #        to be built, AK must include them too.
  267. #    SHP - the prefix for invoking a shell script in the current directory
  268. #        (null for MS-DOS, $(SH) ./ for Unix).
  269. #    EXPP, EXP - the prefix for invoking an executable program in the
  270. #        current directory (null for MS-DOS, ./ for Unix).
  271. #    SH - the shell for scripts (null on MS-DOS, sh on Unix).
  272. # The platform-specific makefiles must also include rules for creating
  273. #   ansi2knr$(XE), genarch$(XE), and genconf$(XE) from the corresponding
  274. #   .c files -- this is needed because Turbo C and Unix C treat the -o
  275. #   switch slightly differently (Turbo C requires no following space,
  276. #   Unix C requires a following space), and I haven't found a way to capture
  277. #   the difference in a macro.
  278.  
  279. all default: $(GS)$(XE)
  280.  
  281. distclean realclean: clean
  282.     rm -f makefile
  283.  
  284. clean mostlyclean:
  285.     rm -f *.$(OBJ) *.a core gmon.out
  286.     rm -f *.dev *.d_* arch.h gconfig*.h o*.tr l*.tr
  287.     rm -f t _temp_* _temp_*.* *.map *.sym
  288.     rm -f ansi2knr$(XE) echogs$(XE) genarch$(XE) genconf$(XE)
  289.     rm -f $(GS)$(XE) $(BEGINFILES)
  290.  
  291. # A rule to do a quick and dirty compilation attempt when first installing
  292. # Ghostscript.  Many of the compilations will fail: follow this with 'make'.
  293.  
  294. begin:
  295.     rm -f arch.h genarch$(XE) $(GS)$(XE) $(BEGINFILES)
  296.     make arch.h
  297.     - $(CCBEGIN)
  298.     rm -f gconfig.$(OBJ) gdev*.$(OBJ) gp_*.$(OBJ) gsmisc.$(OBJ)
  299.     rm -f iccfont.$(OBJ) iinit.$(OBJ) interp.$(OBJ) zfiledev.$(OBJ)
  300.  
  301. # Auxiliary programs
  302.  
  303. arch.h: genarch$(XE)
  304.     $(EXPP) $(EXP)genarch arch.h
  305.  
  306. # -------------------------------- Library -------------------------------- #
  307.  
  308. # Define the inter-dependencies of the .h files.
  309. # Since not all versions of `make' defer expansion of macros,
  310. # we must list these in bottom-to-top order.
  311.  
  312. # Generic files
  313.  
  314. arch_h=arch.h
  315. std_h=std.h $(arch_h)
  316.  
  317. # Platform interfaces
  318.  
  319. gp_h=gp.h
  320. gpcheck_h=gpcheck.h
  321.  
  322. # C library interfaces
  323.  
  324. # Because of variations in the "standard" header files between systems, and
  325. # because we must include std.h before any file that includes sys/types.h,
  326. # we define local include files named *_.h to substitute for <*.h>.
  327.  
  328. vmsmath_h=vmsmath.h
  329.  
  330. dos__h=dos_.h
  331. ctype__h=ctype_.h $(std_h)
  332. errno__h=errno_.h
  333. malloc__h=malloc_.h $(std_h)
  334. math__h=math_.h $(std_h) $(vmsmath_h)
  335. memory__h=memory_.h $(std_h)
  336. stat__h=stat_.h $(std_h)
  337. stdio__h=stdio_.h $(std_h)
  338. string__h=string_.h $(std_h)
  339. time__h=time_.h $(std_h)
  340. windows__h=windows_.h
  341.  
  342. # Miscellaneous
  343.  
  344. gdebug_h=gdebug.h
  345. gsio_h=gsio.h
  346. gstypes_h=gstypes.h
  347. gs_h=gs.h $(stdio__h) $(gsio_h) $(gstypes_h)
  348. gx_h=gx.h $(gs_h) $(gdebug_h)
  349. gconfig_h=gconfig.h gsconfig.h
  350. gserrors_h=gserrors.h
  351.  
  352. GX=$(AK) $(gx_h)
  353. GXERR=$(GX) $(gserrors_h)
  354.  
  355. ###### Low-level facilities and utilities
  356.  
  357. ### Include files
  358.  
  359. gsccode_h=gsccode.h
  360. gschar_h=gschar.h $(gsccode_h)
  361. gscie_h=gscie.h
  362. gscolor_h=gscolor.h
  363. gscolor2_h=gscolor2.h
  364. gscoord_h=gscoord.h
  365. gscrypt1_h=gscrypt1.h
  366. gscspace_h=gscspace.h
  367. gsfont_h=gsfont.h
  368. gsimage_h=gsimage.h
  369. gsmatrix_h=gsmatrix.h
  370. gspaint_h=gspaint.h
  371. gspath_h=gspath.h
  372. gsprops_h=gsprops.h
  373. gsstate_h=gsstate.h $(gscolor_h)
  374. gstype1_h=gstype1.h
  375. gsuid_h=gsuid.h
  376. gsutil_h=gsutil.h
  377. gsxfont_h=gsxfont.h
  378.  
  379. gxarith_h=gxarith.h
  380. gxbitmap_h=gxbitmap.h
  381. gxcache_h=gxcache.h $(gsuid_h) $(gsxfont_h)
  382. gxcdir_h=gxcdir.h
  383. gxchar_h=gxchar.h $(gschar_h)
  384. gxclist_h=gxclist.h
  385. # gxcldev is out of order because it include gxclist.
  386. gxcldev_h=gxcldev.h $(gxclist_h)
  387. gxcpath_h=gxcpath.h
  388. gxdevice_h=gxdevice.h $(gsmatrix_h) $(gsxfont_h) $(gxbitmap_h)
  389. gxdevmem_h=gxdevmem.h
  390. gxfdir_h=gxfdir.h $(gxcdir_h)
  391. gxfixed_h=gxfixed.h
  392. gxfont_h=gxfont.h $(gsfont_h) $(gsuid_h)
  393. gxfrac_h=gxfrac.h
  394. gximage_h=gximage.h $(gscspace_h) $(gsimage_h)
  395. gxlum_h=gxlum.h
  396. gxmatrix_h=gxmatrix.h $(gsmatrix_h)
  397. gxop1_h=gxop1.h
  398. gxpath_h=gxpath.h
  399. gxrefct_h=gxrefct.h
  400. gxtype1_h=gxtype1.h $(gscrypt1_h) $(gstype1_h)
  401. gxxfont_h=gxxfont.h $(gsccode_h) $(gsmatrix_h) $(gsuid_h) $(gsxfont_h)
  402. # gxcolor and gxfmap are out of order because they include other files.
  403. gxcolor_h=gxcolor.h $(gxfrac_h) $(gsuid_h)
  404. gxfmap_h=gxfmap.h $(gxfrac_h) $(gxrefct_h)
  405.  
  406. gzcolor_h=gzcolor.h $(gscolor_h) $(gxfmap_h) $(gxlum_h)
  407. gzdevice_h=gzdevice.h $(gxdevice_h)
  408. gzht_h=gzht.h
  409. gzline_h=gzline.h
  410. gzpath_h=gzpath.h $(gxpath_h)
  411. gzstate_h=gzstate.h $(gsstate_h) $(gxfixed_h) $(gxmatrix_h)
  412.  
  413. ### Executable code
  414.  
  415. gp_nofb.$(OBJ): gp_nofb.c $(AK) \
  416.   $(gx_h) $(gp_h) $(gxdevice_h)
  417.  
  418. gsutil.$(OBJ): gsutil.c $(AK) \
  419.   $(std_h) $(gsprops_h) $(gsutil_h)
  420.  
  421. gxccache.$(OBJ): gxccache.c $(GXERR) $(gpcheck_h) \
  422.   $(gxfixed_h) $(gxmatrix_h) $(gzdevice_h) $(gzcolor_h) \
  423.   $(gxcpath_h) $(gxdevmem_h) $(gxfont_h) $(gxfdir_h) $(gxchar_h) \
  424.   $(gxcache_h) $(gxxfont_h) $(gzstate_h) $(gzpath_h) \
  425.   $(gscspace_h) $(gsimage_h)
  426.  
  427. gxccman.$(OBJ): gxccman.c $(GXERR) $(gpcheck_h) \
  428.   $(gxfixed_h) $(gxmatrix_h) $(gzdevice_h) $(gzcolor_h) \
  429.   $(gxcpath_h) $(gxdevmem_h) $(gxfont_h) $(gxfdir_h) $(gxchar_h) \
  430.   $(gxcache_h) $(gxxfont_h) $(gzstate_h) $(gzpath_h)
  431.  
  432. gxclist.$(OBJ): gxclist.c $(GXERR) $(gpcheck_h) \
  433.   $(gsmatrix_h) $(gxbitmap_h) $(gxcldev_h) $(gxdevice_h) $(gxdevmem_h)
  434.  
  435. gxclread.$(OBJ): gxclread.c $(GXERR) $(gpcheck_h) \
  436.   $(gsmatrix_h) $(gxbitmap_h) $(gxcldev_h) $(gxdevice_h) $(gxdevmem_h)
  437.  
  438. gxcmap.$(OBJ): gxcmap.c $(GXERR) \
  439.   $(gscspace_h) \
  440.   $(gxcolor_h) $(gxdevice_h) $(gxfrac_h) $(gxlum_h) \
  441.   $(gzcolor_h) $(gzstate_h)
  442.  
  443. gxcpath.$(OBJ): gxcpath.c $(GXERR) \
  444.   $(gxdevice_h) $(gxfixed_h) $(gzcolor_h) $(gzpath_h) $(gxcpath_h)
  445.  
  446. gxdither.$(OBJ): gxdither.c $(GX) \
  447.   $(gxfixed_h) $(gxlum_h) $(gxmatrix_h) $(gzstate_h) $(gzdevice_h) $(gzcolor_h) $(gzht_h)
  448.  
  449. gxdraw.$(OBJ): gxdraw.c $(GXERR) $(gpcheck_h) \
  450.   $(gxfixed_h) $(gxmatrix_h) $(gxbitmap_h) $(gzcolor_h) $(gzdevice_h) $(gzstate_h)
  451.  
  452. gxfill.$(OBJ): gxfill.c $(GXERR) \
  453.   $(gxfixed_h) $(gxmatrix_h) $(gxdevice_h) $(gzcolor_h) $(gzpath_h) $(gzstate_h) $(gxcpath_h)
  454.  
  455. gxhint1.$(OBJ): gxhint1.c $(GXERR) \
  456.   $(gxarith_h) $(gxfixed_h) $(gxmatrix_h) $(gxdevmem_h) $(gxchar_h) $(gxfont_h) $(gxtype1_h) \
  457.   $(gzdevice_h) $(gzstate_h)
  458.  
  459. gxhint2.$(OBJ): gxhint2.c $(GXERR) \
  460.   $(gxarith_h) $(gxfixed_h) $(gxmatrix_h) $(gxdevmem_h) $(gxchar_h) $(gxfont_h) $(gxtype1_h) $(gxop1_h) \
  461.   $(gzdevice_h) $(gzstate_h)
  462.  
  463. gxht.$(OBJ): gxht.c $(GXERR) \
  464.   $(gxfixed_h) $(gxmatrix_h) $(gxbitmap_h) $(gzstate_h) $(gzcolor_h) $(gzdevice_h) $(gzht_h)
  465.  
  466. gxpath.$(OBJ): gxpath.c $(GXERR) \
  467.   $(gxfixed_h) $(gzpath_h)
  468.  
  469. gxpath2.$(OBJ): gxpath2.c $(GXERR) \
  470.   $(gxfixed_h) $(gxarith_h) $(gzpath_h)
  471.  
  472. gxpcopy.$(OBJ): gxpcopy.c $(GXERR) \
  473.   $(gxfixed_h) $(gxarith_h) $(gzpath_h)
  474.  
  475. gxstroke.$(OBJ): gxstroke.c $(GXERR) $(gpcheck_h) \
  476.   $(gscoord_h) $(gxfixed_h) $(gxarith_h) $(gxmatrix_h) \
  477.   $(gzstate_h) $(gzcolor_h) $(gzdevice_h) $(gzline_h) $(gzpath_h)
  478.  
  479. ###### High-level facilities
  480.  
  481. gschar.$(OBJ): gschar.c $(GXERR) \
  482.   $(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)
  483.  
  484. gscolor.$(OBJ): gscolor.c $(GXERR) \
  485.   $(gscspace_h) $(gxcolor_h) $(gxdevice_h) $(gxrefct_h) \
  486.   $(gzstate_h) $(gzcolor_h)
  487.  
  488. gscoord.$(OBJ): gscoord.c $(GXERR) \
  489.   $(gsccode_h) $(gxarith_h) $(gxfixed_h) $(gxfont_h) $(gxmatrix_h) \
  490.   $(gzdevice_h) $(gzstate_h) $(gscoord_h)
  491.  
  492. gsdevice.$(OBJ): gsdevice.c $(GXERR) \
  493.   $(gxarith_h) $(gsprops_h) $(gsutil_h) $(gxbitmap_h) $(gxdevmem_h) \
  494.   $(gzstate_h) $(gzdevice_h)
  495.  
  496. gsfile.$(OBJ): gsfile.c $(GXERR) \
  497.   $(gsmatrix_h) $(gxdevice_h) $(gxdevmem_h)
  498.  
  499. gsfont.$(OBJ): gsfont.c $(GXERR) \
  500.   $(gxdevice_h) $(gxfixed_h) $(gxmatrix_h) $(gxfont_h) $(gxfdir_h) \
  501.   $(gzstate_h)
  502.  
  503. gsht.$(OBJ): gsht.c $(GXERR) \
  504.   $(gzht_h) $(gzstate_h)
  505.  
  506. gsimage.$(OBJ): gsimage.c $(GXERR) $(gpcheck_h) \
  507.   $(gxfixed_h) $(gxarith_h) $(gxmatrix_h) $(gspaint_h) \
  508.   $(gzcolor_h) $(gzdevice_h) $(gzpath_h) $(gzstate_h) \
  509.   $(gxcolor_h) $(gxcpath_h) $(gxdevmem_h) $(gximage_h)
  510.  
  511. gsimage1.$(OBJ): gsimage1.c $(GXERR) $(gpcheck_h) \
  512.   $(gxfixed_h) $(gxarith_h) $(gxmatrix_h) $(gscspace_h) $(gspaint_h) \
  513.   $(gzcolor_h) $(gzdevice_h) $(gzpath_h) $(gzstate_h) \
  514.   $(gxcolor_h) $(gxcpath_h) $(gxdevmem_h) $(gximage_h)
  515.  
  516. gsimage2.$(OBJ): gsimage2.c $(GXERR) $(gpcheck_h) \
  517.   $(gxfixed_h) $(gxarith_h) $(gxmatrix_h) $(gscspace_h) $(gspaint_h) \
  518.   $(gzcolor_h) $(gzdevice_h) $(gzpath_h) $(gzstate_h) \
  519.   $(gxcolor_h) $(gxcpath_h) $(gxdevmem_h) $(gximage_h)
  520.  
  521. gsimpath.$(OBJ): gsimpath.c $(GXERR) \
  522.   $(gsmatrix_h) $(gsstate_h) $(gspath_h)
  523.  
  524. gsline.$(OBJ): gsline.c $(GXERR) \
  525.   $(gxfixed_h) $(gxmatrix_h) $(gzstate_h) $(gzline_h)
  526.  
  527. gsmatrix.$(OBJ): gsmatrix.c $(GXERR) \
  528.   $(gxfixed_h) $(gxarith_h) $(gxmatrix_h)
  529.  
  530. gsmisc.$(OBJ): gsmisc.c $(GX) $(errno__h) $(malloc__h) $(memory__h) $(MAKEFILE)
  531.     $(CCC) -DUSE_ASM=0$(USE_ASM) gsmisc.c
  532.  
  533. gspaint.$(OBJ): gspaint.c $(GXERR) $(gpcheck_h) \
  534.   $(gxfixed_h) $(gxmatrix_h) $(gspaint_h) $(gzpath_h) $(gzstate_h) $(gzdevice_h) $(gxcpath_h) $(gxdevmem_h) $(gximage_h)
  535.  
  536. gspath.$(OBJ): gspath.c $(GXERR) \
  537.   $(gxfixed_h) $(gxmatrix_h) $(gxpath_h) $(gzstate_h)
  538.  
  539. gspath2.$(OBJ): gspath2.c $(GXERR) \
  540.   $(gspath_h) $(gxfixed_h) $(gxmatrix_h) $(gzstate_h) $(gzpath_h) $(gzdevice_h)
  541.  
  542. gsstate.$(OBJ): gsstate.c $(GXERR) \
  543.   $(gscie_h) $(gscolor2_h) $(gscspace_h) $(gxcolor_h) $(gxrefct_h) \
  544.   $(gzstate_h) $(gzcolor_h) $(gzdevice_h) $(gzht_h) $(gzline_h) $(gzpath_h)
  545.  
  546. gstdev.$(OBJ): gstdev.c $(GXERR) \
  547.   $(gxbitmap_h) $(gxdevice_h) $(gxfixed_h) $(gxmatrix_h)
  548.  
  549. gstype1.$(OBJ): gstype1.c $(GXERR) \
  550.   $(gxarith_h) $(gxfixed_h) $(gxmatrix_h) $(gxchar_h) $(gxdevmem_h) $(gxop1_h) $(gxtype1_h) \
  551.   $(gzstate_h) $(gzdevice_h) $(gzpath_h)
  552.  
  553. ###### The internal devices
  554.  
  555. gdevmem_h=gdevmem.h
  556.  
  557. gdevemap.$(OBJ): gdevemap.c $(AK) $(std_h)
  558.  
  559. gdevmem1.$(OBJ): gdevmem1.c $(AK) \
  560.   $(gx_h) $(gserrors_h) $(gxdevice_h) $(gxdevmem_h) $(gdevmem_h)
  561.  
  562. gdevmem2.$(OBJ): gdevmem2.c $(AK) \
  563.   $(gx_h) $(gxdevice_h) $(gxdevmem_h) $(gdevmem_h)
  564.  
  565. gdevmem3.$(OBJ): gdevmem3.c $(AK) \
  566.   $(gx_h) $(gxdevice_h) $(gxdevmem_h) $(gdevmem_h)
  567.  
  568. ###### Files dependent on the installed devices, features, and platform.
  569. # Generating gconfig.h also generates o*.tr and l*.tr.
  570.  
  571. # gconfig.h shouldn't have to depend on ALL_DEVS, but that would
  572. # involve rewriting gsconfig to only save the device name, not the
  573. # contents of the <device>.D_# files.
  574.  
  575. ALL_DEVS=$(FEATURE_DEVS) $(PLATFORM).dev \
  576.   $(DEVICE_DEVS) $(DEVICE_DEVS1) \
  577.   $(DEVICE_DEVS2) $(DEVICE_DEVS3) $(DEVICE_DEVS4) $(DEVICE_DEVS5)\
  578.   $(DEVICE_DEVS6) $(DEVICE_DEVS7) $(DEVICE_DEVS8) $(DEVICE_DEVS9)
  579.  
  580. gconfig.h obj.tr objw.tr ld.tr lib.tr: \
  581.   devs.mak $(MAKEFILE) echogs$(XE) genconf$(XE) $(ALL_DEVS)
  582.     $(EXP)echogs -w t.cfg - $(FEATURE_DEVS) $(PLATFORM).dev
  583.     $(EXP)echogs -a t.cfg - $(DEVICE_DEVS)
  584.     $(EXP)echogs -a t.cfg - $(DEVICE_DEVS1)
  585.     $(EXP)echogs -a t.cfg - $(DEVICE_DEVS2)
  586.     $(EXP)echogs -a t.cfg - $(DEVICE_DEVS3)
  587.     $(EXP)echogs -a t.cfg - $(DEVICE_DEVS4)
  588.     $(EXP)echogs -a t.cfg - $(DEVICE_DEVS5)
  589.     $(EXP)echogs -a t.cfg - $(DEVICE_DEVS6)
  590.     $(EXP)echogs -a t.cfg - $(DEVICE_DEVS7)
  591.     $(EXP)echogs -a t.cfg - $(DEVICE_DEVS8)
  592.     $(EXP)echogs -a t.cfg - $(DEVICE_DEVS9)
  593.     $(EXP)genconf @t.cfg -h gconfig.h -l lib.tr -o obj.tr -u ld.tr -w objw.tr
  594.     rm t.cfg
  595.     $(EXP)echogs -a gconfig.h -x 23 define GS_LIB_DEFAULT -x 2022 $(GS_LIB_DEFAULT) -x 22
  596.     $(EXP)echogs -a gconfig.h -x 23 define GS_INIT -x 2022 $(GS_INIT) -x 22
  597.  
  598. gconfig.$(OBJ): gconfig.c $(AK) $(gconfig_h) $(MAKEFILE)
  599.  
  600. ###### On Unix, we pre-link all of the library except the back end.
  601. ###### On MS-DOS, we have to do the whole thing at once.
  602.  
  603. LIBGS=gschar.$(OBJ) gscolor.$(OBJ) gscoord.$(OBJ) \
  604.  gsdevice.$(OBJ) gsfile.$(OBJ) gsfont.$(OBJ) gsht.$(OBJ) \
  605.  gsimage.$(OBJ) gsimage1.$(OBJ) gsimage2.$(OBJ) \
  606.  gsimpath.$(OBJ) gsline.$(OBJ) gsmatrix.$(OBJ) gsmisc.$(OBJ) \
  607.  gspaint.$(OBJ) gspath.$(OBJ) gspath2.$(OBJ) \
  608.  gsstate.$(OBJ) gstdev.$(OBJ) gstype1.$(OBJ) gsutil.$(OBJ) \
  609.  gxccache.$(OBJ) gxccman.$(OBJ) gxclist.$(OBJ) gxclread.$(OBJ) \
  610.  gxcmap.$(OBJ) gxcpath.$(OBJ) \
  611.  gxdither.$(OBJ) gxdraw.$(OBJ) gxfill.$(OBJ) \
  612.  gxhint1.$(OBJ) gxhint2.$(OBJ) gxht.$(OBJ) \
  613.  gxpath.$(OBJ) gxpath2.$(OBJ) gxpcopy.$(OBJ) gxstroke.$(OBJ) \
  614.  gdevmem1.$(OBJ) gdevmem2.$(OBJ) gdevmem3.$(OBJ) gconfig.$(OBJ)
  615.  
  616. # ------------------------------ Interpreter ------------------------------ #
  617.  
  618. ###### Include files
  619.  
  620. alloc_h=alloc.h
  621. astate_h=astate.h
  622. ccfont_h=ccfont.h
  623. dict_h=dict.h
  624. dparam_h=dparam.h
  625. dstack_h=dstack.h
  626. errors_h=errors.h
  627. estack_h=estack.h
  628. filedev_h=filedev.h
  629. files_h=files.h
  630. font_h=font.h
  631. ilevel_h=ilevel.h
  632. iname_h=iname.h
  633. iref_h=iref.h
  634. iscan_h=iscan.h
  635. ivmspace_h=ivmspace.h
  636. iutil_h=iutil.h
  637. main_h=main.h
  638. opdef_h=opdef.h
  639. ostack_h=ostack.h
  640. overlay_h=overlay.h
  641. packed_h=packed.h
  642. save_h=save.h
  643. scanchar_h=scanchar.h
  644. sbits_h=sbits.h
  645. shc_h=shc.h
  646. state_h=state.h
  647. store_h=store.h
  648. stream_h=stream.h
  649. # Nested include files
  650. bfont_h=bfont.h $(font_h)
  651. ghost_h=ghost.h $(gx_h) $(iref_h)
  652. oper_h=oper.h $(gsutil_h) $(iutil_h) $(opdef_h) $(ostack_h)
  653. scf_h=scf.h $(shc_h)
  654. sdct_h=sdct.h $(shc_h)
  655. # Include files for optional features
  656. bnum_h=bnum.h
  657. bseq_h=bseq.h
  658. btoken_h=btoken.h
  659.  
  660. comp1_h=comp1.h $(ghost_h) $(oper_h) $(gserrors_h) $(gxfixed_h) $(gxop1_h)
  661.  
  662. gdevprn_h=gdevprn.h $(memory__h) $(string__h) $(gx_h) \
  663.   $(gserrors_h) $(gsmatrix_h) $(gxdevice_h) $(gxdevmem_h) $(gxclist_h)
  664.  
  665. ###### Utilities
  666.  
  667. GH=$(AK) $(ghost_h)
  668.  
  669. ialloc.$(OBJ): ialloc.c $(AK) $(gx_h) $(alloc_h) $(astate_h) $(ivmspace_h)
  670.  
  671. iccfont.$(OBJ): iccfont.c $(GH) gconfigf.h \
  672.   $(ghost_h) $(alloc_h) $(ccfont_h) $(dict_h) $(dstack_h) $(errors_h) \
  673.   $(font_h) $(iutil_h) $(iname_h) $(oper_h) $(save_h) $(store_h)
  674.  
  675. idebug.$(OBJ): idebug.c $(GH) \
  676.   $(iutil_h) $(dict_h) $(iname_h) $(ostack_h) $(opdef_h) $(packed_h) $(store_h)
  677.  
  678. idict.$(OBJ): idict.c $(GH) \
  679.   $(alloc_h) $(errors_h) $(ivmspace_h) $(iname_h) $(packed_h) \
  680.   $(save_h) $(store_h) $(iutil_h) $(dict_h) $(dstack_h)
  681.  
  682. idparam.$(OBJ): idparam.c $(GH) \
  683.   $(gsmatrix_h) $(dict_h) $(dparam_h) $(errors_h) $(iutil_h)
  684.  
  685. iinit.$(OBJ): iinit.c $(GH) $(gconfig_h) \
  686.   $(alloc_h) $(dict_h) $(dstack_h) $(errors_h) $(ilevel_h) $(iname_h) $(oper_h) $(store_h)
  687.  
  688. iname.$(OBJ): iname.c $(GH) $(alloc_h) $(errors_h) $(ivmspace_h) $(iname_h) $(store_h)
  689.  
  690. isave.$(OBJ): isave.c $(GH) $(alloc_h) $(astate_h) $(errors_h) $(iname_h) $(packed_h) $(save_h) $(store_h)
  691.  
  692. iscan.$(OBJ): iscan.c $(GH) $(ctype__h) \
  693.   $(alloc_h) $(dict_h) $(dstack_h) $(errors_h) \
  694.   $(ilevel_h) $(iutil_h) $(iscan_h) $(ivmspace_h) \
  695.   $(iname_h) $(ostack_h) $(packed_h) $(store_h) $(stream_h) $(scanchar_h)
  696.  
  697. iutil.$(OBJ): iutil.c $(GH) \
  698.   $(errors_h) $(alloc_h) $(dict_h) $(iutil_h) $(ivmspace_h) \
  699.   $(iname_h) $(ostack_h) $(opdef_h) $(packed_h) $(store_h) \
  700.   $(gsmatrix_h) $(gxdevice_h) $(gzcolor_h)
  701.  
  702. sfilter.$(OBJ): sfilter.c $(AK) $(stdio__h) \
  703.   $(scanchar_h) $(stream_h) $(gscrypt1_h)
  704.  
  705. stream.$(OBJ): stream.c $(AK) $(stdio__h) $(memory__h) \
  706.   $(gpcheck_h) $(scanchar_h) $(stream_h)
  707.  
  708. ###### Operators
  709.  
  710. OP=$(GH) $(errors_h) $(oper_h)
  711.  
  712. ### Non-graphics operators
  713.  
  714. zarith.$(OBJ): zarith.c $(OP) $(store_h)
  715.  
  716. zarray.$(OBJ): zarray.c $(OP) $(alloc_h) $(packed_h) $(store_h)
  717.  
  718. zcontrol.$(OBJ): zcontrol.c $(OP) $(estack_h) $(iutil_h) $(store_h)
  719.  
  720. zdict.$(OBJ): zdict.c $(OP) $(dict_h) $(dstack_h) $(iname_h) $(store_h)
  721.  
  722. zfile.$(OBJ): zfile.c $(OP) $(gp_h) \
  723.   $(alloc_h) $(estack_h) $(filedev_h) $(files_h) $(ilevel_h) $(iutil_h) \
  724.   $(save_h) $(stream_h) $(store_h)
  725.  
  726. zfiledev.$(OBJ): zfiledev.c $(OP) $(string__h) $(gp_h) $(gconfig_h) \
  727.   $(filedev_h) $(files_h) $(stream_h)
  728.  
  729. zfileio.$(OBJ): zfileio.c $(OP) $(gp_h) \
  730.   $(estack_h) $(files_h) $(iscan_h) $(store_h) $(stream_h) \
  731.   $(gsmatrix_h) $(gxdevice_h) $(gxdevmem_h)
  732.  
  733. zfilter.$(OBJ): zfilter.c $(OP) $(alloc_h) $(stream_h)
  734.  
  735. zgeneric.$(OBJ): zgeneric.c $(OP) \
  736.   $(dict_h) $(estack_h) $(ivmspace_h) $(iname_h) $(packed_h) $(store_h)
  737.  
  738. zmath.$(OBJ): zmath.c $(OP) $(store_h)
  739.  
  740. zmisc.$(OBJ): zmisc.c $(OP) $(gp_h) $(errno__h) $(memory__h) $(string__h) \
  741.   $(alloc_h) $(dict_h) $(dstack_h) $(iname_h) $(ivmspace_h) $(packed_h) $(store_h) \
  742.   $(gscrypt1_h)
  743.  
  744. zpacked.$(OBJ): zpacked.c $(OP) \
  745.   $(alloc_h) $(dict_h) $(ivmspace_h) $(iname_h) $(packed_h) $(save_h) $(store_h)
  746.  
  747. zprops.$(OBJ): zprops.c $(OP) \
  748.   $(alloc_h) $(dict_h) $(iname_h) $(state_h) $(store_h) \
  749.   $(gsprops_h) $(gsmatrix_h) $(gxdevice_h) $(gsstate_h)
  750.  
  751. zrelbit.$(OBJ): zrelbit.c $(OP) $(store_h) $(dict_h)
  752.  
  753. zstack.$(OBJ): zstack.c $(OP) $(store_h)
  754.  
  755. zstring.$(OBJ): zstring.c $(OP) \
  756.   $(alloc_h) $(iscan_h) $(iutil_h) $(iname_h) $(store_h) $(stream_h)
  757.  
  758. ztype.$(OBJ): ztype.c $(OP) \
  759.   $(dict_h) $(iscan_h) $(iutil_h) $(iname_h) $(stream_h) $(store_h)
  760.  
  761. zvmem.$(OBJ): zvmem.c $(OP) $(alloc_h) $(dict_h) $(dstack_h) $(estack_h) $(save_h) $(state_h) $(store_h) \
  762.   $(gsmatrix_h) $(gsstate_h)
  763.  
  764. ###### Graphics operators
  765.  
  766. zchar.$(OBJ): zchar.c $(OP) $(gxarith_h) $(gxfixed_h) $(gxmatrix_h) \
  767.   $(gschar_h) $(gxtype1_h) $(gxdevice_h) $(gxfont_h) $(gzpath_h) $(gzstate_h) \
  768.   $(alloc_h) $(dict_h) $(font_h) $(estack_h) $(ilevel_h) $(iname_h) $(state_h) $(store_h)
  769.  
  770. 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)
  771.  
  772. zdevice.$(OBJ): zdevice.c $(OP) $(alloc_h) $(state_h) $(gsmatrix_h) $(gsstate_h) $(gxdevice_h) $(store_h)
  773.  
  774. zfont.$(OBJ): zfont.c $(OP) \
  775.   $(gsmatrix_h) $(gxdevice_h) $(gxfont_h) $(gxfdir_h) $(gxcache_h) \
  776.   $(alloc_h) $(bfont_h) $(dict_h) $(iname_h) $(packed_h) $(save_h) $(state_h) $(store_h)
  777.  
  778. zfont1.$(OBJ): zfont1.c $(OP) $(gsmatrix_h) $(gxdevice_h) $(gschar_h) $(gxfixed_h) $(gxfont_h) \
  779.   $(bfont_h) $(dict_h) $(dparam_h) $(iname_h) $(store_h)
  780.  
  781. zfont2.$(OBJ): zfont2.c $(OP) $(gsmatrix_h) $(gxdevice_h) $(gschar_h) $(gxfixed_h) $(gxfont_h) \
  782.   $(alloc_h) $(bfont_h) $(dict_h) $(dparam_h) $(ilevel_h) $(iname_h) \
  783.   $(packed_h) $(save_h) $(store_h)
  784.  
  785. zgstate.$(OBJ): zgstate.c $(OP) $(alloc_h) $(gsmatrix_h) $(gsstate_h) $(state_h) $(store_h)
  786.  
  787. zht.$(OBJ): zht.c $(OP) $(alloc_h) $(estack_h) $(gsmatrix_h) $(gsstate_h) $(state_h) $(store_h)
  788.  
  789. zmatrix.$(OBJ): zmatrix.c $(OP) $(gsmatrix_h) $(state_h) $(gscoord_h) $(store_h)
  790.  
  791. zpaint.$(OBJ): zpaint.c $(OP) \
  792.   $(alloc_h) $(estack_h) $(ilevel_h) $(state_h) $(store_h) $(stream_h) \
  793.   $(gsimage_h) $(gsmatrix_h) $(gspaint_h)
  794.  
  795. zpath.$(OBJ): zpath.c $(OP) $(gsmatrix_h) $(gspath_h) $(state_h) $(store_h)
  796.  
  797. zpath2.$(OBJ): zpath2.c $(OP) $(alloc_h) $(estack_h) $(gspath_h) $(state_h) $(store_h)
  798.  
  799. ###### Linking
  800.  
  801. INT=ialloc.$(OBJ) idebug.$(OBJ) idict.$(OBJ) idparam.$(OBJ) \
  802.  iinit.$(OBJ) iname.$(OBJ) \
  803.  interp.$(OBJ) isave.$(OBJ) iscan.$(OBJ) iutil.$(OBJ) \
  804.  sfilter.$(OBJ) stream.$(OBJ) \
  805.  zarith.$(OBJ) zarray.$(OBJ) zcontrol.$(OBJ) zdict.$(OBJ) \
  806.  zfile.$(OBJ) zfiledev.$(OBJ) zfileio.$(OBJ) zfilter.$(OBJ) zgeneric.$(OBJ) \
  807.  zmath.$(OBJ) zmisc.$(OBJ) zpacked.$(OBJ) zprops.$(OBJ) zrelbit.$(OBJ) \
  808.  zstack.$(OBJ) zstring.$(OBJ) ztype.$(OBJ) zvmem.$(OBJ) \
  809.  zchar.$(OBJ) zcolor.$(OBJ) zfont.$(OBJ) zfont1.$(OBJ) zfont2.$(OBJ) \
  810.  zdevice.$(OBJ) zgstate.$(OBJ) zht.$(OBJ) zmatrix.$(OBJ) \
  811.  zpaint.$(OBJ) zpath.$(OBJ) zpath2.$(OBJ)
  812.  
  813. # -------------------------- Optional features ---------------------------- #
  814.  
  815. ### Additions common to Display PostScript and Level 2
  816.  
  817. # We have to split up the module list because of limitations
  818. # on the number of arguments to a DOS batch file.
  819. dpsand2a_=gsdps1.$(OBJ) ibnum.$(OBJ) iscan2.$(OBJ)
  820. dpsand2b_=zbseq.$(OBJ) zchar2.$(OBJ) zdps1.$(OBJ) zupath.$(OBJ) zvmem2.$(OBJ)
  821. dpsand2_=$(dpsand2a_) $(dpsand2b_)
  822. dpsand2.dev: $(dpsand2_)
  823.     $(SHP)gssetmod dpsand2 $(dpsand2a_)
  824.     $(SHP)gsaddmod dpsand2 -obj $(dpsand2b_)
  825.     $(SHP)gsaddmod dpsand2 -oper2 zbseq zchar2 zdps1 zupath zvmem2
  826.     $(SHP)gsaddmod dpsand2 -ps gs_dps1
  827.  
  828. gsdps1.$(OBJ): gsdps1.c $(GXERR) $(gxfixed_h) $(gxmatrix_h) $(gzpath_h) $(gzstate_h)
  829.  
  830. ibnum.$(OBJ): ibnum.c $(GH) $(errors_h) $(stream_h) $(bnum_h) $(btoken_h)
  831.  
  832. iscan2.$(OBJ): iscan2.c $(GH) $(errors_h) \
  833.   $(alloc_h) $(dict_h) $(dstack_h) $(iscan_h) $(iutil_h) $(ivmspace_h) \
  834.   $(iname_h) $(ostack_h) $(save_h) $(store_h) $(stream_h) \
  835.   $(bseq_h) $(btoken_h) $(bnum_h)
  836.  
  837. zbseq.$(OBJ): zbseq.c $(OP) $(save_h) $(store_h) $(stream_h) $(files_h) $(iname_h) $(bnum_h) $(btoken_h) $(bseq_h)
  838.  
  839. zchar2.$(OBJ): zchar2.c $(OP) $(gschar_h) $(gsmatrix_h) $(gxfixed_h) $(gxfont_h) \
  840.   $(alloc_h) $(estack_h) $(font_h) $(iname_h) $(state_h) $(store_h) $(stream_h) $(bnum_h)
  841.  
  842. zdps1.$(OBJ): zdps1.c $(OP) $(gsmatrix_h) $(gspath_h) $(gsstate_h) \
  843.   $(alloc_h) $(ivmspace_h) $(state_h) $(store_h) $(stream_h) $(bnum_h)
  844.  
  845. zupath.$(OBJ): zupath.c $(OP) \
  846.   $(dict_h) $(dstack_h) $(iutil_h) $(state_h) $(store_h) $(stream_h) $(bnum_h) \
  847.   $(gscoord_h) $(gsmatrix_h) $(gspaint_h) $(gspath_h) $(gsstate_h) \
  848.   $(gxfixed_h) $(gxdevice_h) $(gxpath_h)
  849.  
  850. zvmem2.$(OBJ): zvmem2.c $(OP) \
  851.   $(ivmspace_h) $(store_h)
  852.  
  853. ### Display PostScript
  854. # We should include zcontext, but it isn't in good enough shape yet:
  855. #    $(SHP)gsaddmod dps -oper2 zcontext
  856.  
  857. dps_=
  858. dps.dev: dpsand2.dev $(dps_)
  859.     $(SHP)gssetmod dps $(dps_)
  860.     $(SHP)gsaddmod dps -include dpsand2
  861.  
  862. zcontext.$(OBJ): zcontext.c $(OP) \
  863.   $(alloc_h) $(dict_h) $(dstack_h) $(estack_h) $(state_h) $(store_h)
  864.  
  865. ### Composite font support
  866.  
  867. gschar0.$(OBJ): gschar0.c $(GXERR) \
  868.   $(gxfixed_h) $(gxmatrix_h) $(gzdevice_h) $(gxdevmem_h) $(gxfont_h) $(gxchar_h) $(gzstate_h)
  869.  
  870. zfont0.$(OBJ): zfont0.c $(OP) $(gsmatrix_h) $(gxdevice_h) $(gxfont_h) \
  871.   $(alloc_h) $(bfont_h) $(dict_h) $(iname_h) $(state_h) $(store_h)
  872.  
  873. compfont_=zchar2.$(OBJ) zfont0.$(OBJ) gschar0.$(OBJ)
  874. compfont.dev: $(compfont_)
  875.     $(SHP)gssetmod compfont $(compfont_)
  876.     $(SHP)gsaddmod compfont -oper zfont0 zchar2
  877.     $(SHP)gsaddmod compfont -ps gs_type0
  878.  
  879. ### Level 2 additions
  880.  
  881. # We have to split up the module list because of limitations
  882. # on the number of arguments to a DOS batch file.
  883. level2a_=gscie.$(OBJ) gscolor2.$(OBJ) zcie.$(OBJ) zcolor2.$(OBJ)
  884. level2b_=zcspace2.$(OBJ) zht2.$(OBJ) zimage2.$(OBJ) zmisc2.$(OBJ)
  885. level2_=$(level2a_) $(level2b_)
  886. level2.dev: compfont.dev dpsand2.dev filter.dev $(level2_)
  887.     $(SHP)gssetmod level2 $(level2a_)
  888.     $(SHP)gsaddmod level2 -obj $(level2b_)
  889.     $(SHP)gsaddmod level2 -include compfont dpsand2 filter
  890.     $(SHP)gsaddmod level2 -oper zmisc2_level
  891.     $(SHP)gsaddmod level2 -oper2 zcie zcolor2 zcspace2
  892.     $(SHP)gsaddmod level2 -oper2 zht2 zimage2 zmisc2
  893.     $(SHP)gsaddmod level2 -ps gs_lev2
  894.  
  895. gscie.$(OBJ): gscie.c $(GXERR) \
  896.   $(gscspace_h) $(gscie_h) $(gscolor2_h) \
  897.   $(gxarith_h) $(gxcolor_h) $(gxdevice_h) $(gxrefct_h) \
  898.   $(gzcolor_h) $(gzstate_h)
  899.  
  900. gscolor2.$(OBJ): gscolor2.c $(GXERR) \
  901.   $(gscie_h) $(gscolor2_h) $(gscspace_h) \
  902.   $(gxcolor_h) $(gxdevice_h) $(gxfixed_h) $(gxmatrix_h) $(gxrefct_h) \
  903.   $(gzcolor_h) $(gzstate_h)
  904.  
  905. zcie.$(OBJ): zcie.c $(OP) \
  906.   $(gscspace_h) $(gscolor2_h) $(gscie_h) $(gxcolor_h) $(gxrefct_h) \
  907.   $(alloc_h) $(dict_h) $(dparam_h) $(estack_h) $(save_h) $(state_h) $(store_h)
  908.  
  909. zcolor2.$(OBJ): zcolor2.c $(OP) \
  910.   $(gscolor_h) $(gxcolor_h) $(gscolor2_h) $(gscspace_h) $(gsmatrix_h) \
  911.   $(dict_h) $(dparam_h) $(iname_h) $(state_h) $(store_h)
  912.  
  913. zcspace2.$(OBJ): zcspace2.c $(OP) \
  914.   $(gscolor_h) $(gxcolor_h) $(gscolor2_h) $(gscspace_h) $(gsmatrix_h) \
  915.   $(dict_h) $(dparam_h) $(estack_h) $(iname_h) $(state_h) $(store_h)
  916.  
  917. zht2.$(OBJ): zht2.c $(OP) \
  918.   $(dict_h) $(dparam_h) $(iname_h) $(state_h) $(store_h)
  919.  
  920. zimage2.$(OBJ): zimage2.c $(OP) \
  921.   $(gscolor_h) $(gscolor2_h) $(gscspace_h) $(gsmatrix_h) $(gxcolor_h) \
  922.   $(dict_h) $(dparam_h) $(ilevel_h) $(state_h)
  923.  
  924. zmisc2.$(OBJ): zmisc2.c $(OP) \
  925.   $(gsfont_h) \
  926.   $(dict_h) $(dparam_h) $(dstack_h) $(estack_h) $(ilevel_h) $(iname_h) $(store_h)
  927.  
  928. ### Filters other than the ones in sfilter.c
  929.  
  930. sbits.$(OBJ): sbits.c $(AK) $(stdio__h) $(sbits_h) $(stream_h)
  931.  
  932. scftab.$(OBJ): scftab.c $(AK) $(std_h) $(scf_h)
  933.  
  934. scfdtab.$(OBJ): scfdtab.c $(AK) $(std_h) $(scf_h)
  935.  
  936. scfd.$(OBJ): scfd.c $(AK) $(stdio__h) $(gdebug_h)\
  937.   $(sbits_h) $(scf_h) $(stream_h)
  938.  
  939. scfe.$(OBJ): scfe.c $(AK) $(stdio__h) $(gdebug_h)\
  940.   $(sbits_h) $(scf_h) $(stream_h)
  941.  
  942. sdctd.$(OBJ): sdctd.c $(AK) $(stdio__h) $(gdebug_h) $(stream_h)
  943.  
  944. sdcte.$(OBJ): sdcte.c $(AK) $(stdio__h) $(gdebug_h) $(stream_h)
  945.  
  946. sfilter2.$(OBJ): sfilter2.c $(AK) $(stdio__h) $(scanchar_h) $(stream_h)
  947.  
  948. slzwd.$(OBJ): slzwd.c $(AK) $(stdio__h) $(gdebug_h) $(stream_h)
  949.  
  950. slzwe.$(OBJ): slzwe.c $(AK) $(stdio__h) $(gdebug_h) $(stream_h)
  951.  
  952. zfilter2.$(OBJ): zfilter2.c $(OP) $(alloc_h) $(dict_h) $(dparam_h) $(sdct_h) $(stream_h)
  953.  
  954. # Because of size limits on the DOS command line,
  955. # we have to break this up into two parts.
  956. filter_1=zfilter2.$(OBJ) sfilter2.$(OBJ) sbits.$(OBJ)
  957. filter_2=scfdtab.$(OBJ) scftab.$(OBJ) scfd.$(OBJ) scfe.$(OBJ) 
  958. filter_3=sdctd.$(OBJ) sdcte.$(OBJ) slzwd.$(OBJ) slzwe.$(OBJ)
  959. filter.dev: $(filter_1) $(filter_2) $(filter_3)
  960.     $(SHP)gssetmod filter $(filter_1)
  961.     $(SHP)gsaddmod filter -obj $(filter_2)
  962.     $(SHP)gsaddmod filter -obj $(filter_3)
  963.     $(SHP)gsaddmod filter -oper zfilter2
  964.  
  965. ### Precompiled fonts.  See fonts.doc for more information.
  966.  
  967. CCFONT=$(OP) $(ccfont_h)
  968.  
  969. # List the fonts we are going to compile.
  970. # Because of intrinsic limitations in `make', we have to list
  971. # the object file names and the font names separately.
  972. ccfonts1_=uglyr.$(OBJ)
  973. ccfonts1=uglyr
  974.  
  975. ccfonts.dev: $(MAKEFILE) gs.mak iccfont.$(OBJ) \
  976.   $(ccfonts1_) $(ccfonts2_) $(ccfonts3_) $(ccfonts4_) $(ccfonts5_)
  977.     $(SHP)gssetmod ccfonts iccfont.$(OBJ)
  978.     $(SHP)gsaddmod ccfonts -obj $(ccfonts1_)
  979.     $(SHP)gsaddmod ccfonts -obj $(ccfonts2_)
  980.     $(SHP)gsaddmod ccfonts -obj $(ccfonts3_)
  981.     $(SHP)gsaddmod ccfonts -obj $(ccfonts4_)
  982.     $(SHP)gsaddmod ccfonts -obj $(ccfonts5_)
  983.     $(SHP)gsaddmod ccfonts -oper ccfonts
  984.  
  985. gconfigf.h: $(MAKEFILE) gs.mak genconf$(XE)
  986.     $(SHP)gssetmod ccfonts_
  987.     $(SHP)gsaddmod ccfonts_ -font $(ccfonts1)
  988.     $(SHP)gsaddmod ccfonts_ -font $(ccfonts2)
  989.     $(SHP)gsaddmod ccfonts_ -font $(ccfonts3)
  990.     $(SHP)gsaddmod ccfonts_ -font $(ccfonts4)
  991.     $(SHP)gsaddmod ccfonts_ -font $(ccfonts5)
  992.     $(EXP)genconf ccfonts_.dev -f gconfigf.h
  993.  
  994. uglyr.$(OBJ): uglyr.c $(CCFONT)
  995.     $(CCCF) uglyr.c
  996.  
  997. ncrr.$(OBJ): ncrr.c $(CCFONT)
  998.     $(CCCF) ncrr.c
  999.  
  1000. pagk.$(OBJ): pagk.c $(CCFONT)
  1001.     $(CCCF) pagk.c
  1002.  
  1003. psyr.$(OBJ): psyr.c $(CCFONT)
  1004.     $(CCCF) psyr.c
  1005.  
  1006. ptmr.$(OBJ): ptmr.c $(CCFONT)
  1007.     $(CCCF) ptmr.c
  1008.  
  1009. pzdr.$(OBJ): pzdr.c $(CCFONT)
  1010.     $(CCCF) pzdr.c
  1011.  
  1012. # ----------------------------- Main program ------------------------------ #
  1013.  
  1014. # Interpreter main program
  1015.  
  1016. gs.$(OBJ): gs.c $(GH) $(ctype__h) \
  1017.   $(gxdevice_h) $(gxdevmem_h) \
  1018.   $(alloc_h) $(errors_h) $(estack_h) $(files_h) $(iscan_h) $(main_h) $(ostack_h) $(store_h) $(stream_h)
  1019.  
  1020. gsmain.$(OBJ): gsmain.c $(GH) \
  1021.   $(gp_h) $(gsmatrix_h) $(gxdevice_h) $(gserrors_h) \
  1022.   $(estack_h) $(files_h) $(iscan_h) $(main_h) $(ostack_h) $(store_h)
  1023.  
  1024. interp.$(OBJ): interp.c $(GH) \
  1025.   $(errors_h) $(estack_h) $(iname_h) $(dict_h) $(dstack_h) $(iscan_h) $(oper_h) $(ostack_h) $(packed_h) $(save_h) $(store_h) $(stream_h)
  1026.     $(CCINT) interp.c
  1027. #    Copyright (C) 1989, 1992, 1993 Aladdin Enterprises.  All rights reserved.
  1028. #
  1029. # This file is part of Ghostscript.
  1030. #
  1031. # Ghostscript is distributed in the hope that it will be useful, but
  1032. # WITHOUT ANY WARRANTY.  No author or distributor accepts responsibility
  1033. # to anyone for the consequences of using it or for whether it serves any
  1034. # particular purpose or works at all, unless he says so in writing.  Refer
  1035. # to the Ghostscript General Public License for full details.
  1036. #
  1037. # Everyone is granted permission to copy, modify and redistribute
  1038. # Ghostscript, but only under the conditions described in the Ghostscript
  1039. # General Public License.  A copy of this license is supposed to have been
  1040. # given to you along with Ghostscript so you can know your rights and
  1041. # responsibilities.  It should be in a file named COPYING.  Among other
  1042. # things, the copyright notice and this notice must be preserved on all
  1043. # copies.
  1044.  
  1045. # makefile for Ghostscript device drivers.
  1046.  
  1047. # -------------------------------- Catalog ------------------------------- #
  1048.  
  1049. # It is possible to build Ghostscript with an arbitrary collection of
  1050. # device drivers, although some drivers are supported only on a subset
  1051. # of the target platforms.  The currently available drivers are:
  1052.  
  1053. # Displays:
  1054. #   MS-DOS EGA and VGA:
  1055. #    ega    EGA (640x350, 16-color)
  1056. #    vga    VGA (640x480, 16-color)
  1057. #   MS-DOS SuperVGA:
  1058. # +    atiw    ATI Wonder SuperVGA, 256-color modes
  1059. # +     atiw16  ATI Wonder SuperVGA in 800x600, 16-color mode
  1060. #    s3vga    SuperVGA with S3 86C911 chip (e.g., Diamond Stealth board)
  1061. #    tseng    SuperVGA using Tseng Labs ET3000/4000 chips, 256-color modes
  1062. #    tseng16  Tseng Labs SuperVGA in 800x600, 16-color mode (256K memory)
  1063. # +    tvga    Trident SuperVGA, 256-color modes
  1064. # +    tvga16    Trident SuperVGA in 800x600, 16-color mode (256K memory)
  1065. #   ****** NOTE: The vesa device does not work with the Watcom (32-bit MS-DOS)
  1066. #   ****** compiler or executable.
  1067. #    vesa    SuperVGA with VESA standard API driver
  1068. #   MS-DOS other:
  1069. #    bgi    Borland Graphics Interface (CGA)  [MS-DOS only]
  1070. # *    herc    Hercules Graphics display   [MS-DOS only]
  1071. #    mswin    Microsoft Windows 3.0, 3.1  [MS Windows only]
  1072. #    mswinprn  Microsoft Windows 3.0, 3.1 printer  [MS Windows only]
  1073. # *    pe    Private Eye display
  1074. #   Unix and VMS:
  1075. #   ****** NOTE: For direct frame buffer addressing under SCO Unix or Xenix,
  1076. #   ****** edit the definition of EGAVGA below.
  1077. # *    att3b1    AT&T 3b1/Unixpc monochrome display   [3b1 only]
  1078. # *    sonyfb    Sony Microsystems monochrome display   [Sony only]
  1079. # *    sunview  SunView window system   [SunOS only]
  1080. #    x11    X Windows version 11, release >=4   [Unix and VMS only]
  1081. # Printers:
  1082. # *    appledmp  Apple Dot Matrix Printer (should also work with Imagewriter)
  1083. #    bj10e    Canon BubbleJet BJ10e
  1084. # *    bj200    Canon BubbleJet BJ200
  1085. # *    cdeskjet  H-P DeskJet 500C with 1 bit/pixel color
  1086. # *    cdjcolor  H-P DeskJet 500C with 24 bit/pixel color and
  1087. #        high-quality color (Floyd-Steinberg) dithering
  1088. # *    cdjmono  H-P DeskJet 500C printing black only
  1089. # *    cdj500    H-P DeskJet 500C (same as cdjcolor)
  1090. # *    cdj550    H-P DeskJet 550C
  1091. # *    declj250  alternate DEC LJ250 driver
  1092. # +    deskjet  H-P DeskJet and DeskJet Plus
  1093. # *    dfaxhigh  DigiBoard, Inc.'s DigiFAX software format (high resolution)
  1094. # *    dfaxlow  DigiFAX low (normal) resolution
  1095. #    djet500  H-P DeskJet 500
  1096. # *    djet500c  H-P DeskJet 500C
  1097. #    epson    Epson-compatible dot matrix printers (9- or 24-pin)
  1098. # +    eps9high  Epson-compatible 9-pin, interleaved lines
  1099. #        (triple resolution)
  1100. # *    epsonc    Epson LQ-2550 and Fujitsu 3400/2400/1200 color printers
  1101. # *    escp2    Epson ESC/P 2 language printers, including Stylus 800
  1102. # +     ibmpro  IBM 9-pin Proprinter
  1103. # *    jetp3852  IBM Jetprinter ink-jet color printer (Model #3852)
  1104. # +    laserjet  H-P LaserJet
  1105. # *    la50    DEC LA50 printer
  1106. # *    la75    DEC LA75 printer
  1107. # *    lbp8    Canon LBP-8II laser printer
  1108. # *    ln03    DEC LN03 printer
  1109. # *    lj250    DEC LJ250 Companion color printer
  1110. # +    ljet2p    H-P LaserJet IId/IIp/III* with TIFF compression
  1111. # +    ljet3    H-P LaserJet III* with Delta Row compression
  1112. # +    ljet4    H-P LaserJet 4 (defaults to 600 dpi)
  1113. # +    ljetplus  H-P LaserJet Plus
  1114. # *    m8510    C.Itoh M8510 printer
  1115. # *    necp6    NEC P6/P6+/P60 printers at 360 x 360 DPI resolution
  1116. # *    nwp533  Sony Microsystems NWP533 laser printer   [Sony only]
  1117. # *    oki182    Okidata MicroLine 182
  1118. #    paintjet  H-P PaintJet color printer
  1119. # *    pj    alternate PaintJet XL driver 
  1120. # *    pjxl    H-P PaintJet XL color printer
  1121. # *    pjxl300  H-P PaintJet XL300 color printer
  1122. # *    r4081    Ricoh 4081 laser printer
  1123. # *    sparc    SPARCprinter
  1124. # *    t4693d2  Tektronix 4693d color printer, 2 bits per R/G/B component
  1125. # *    t4693d4  Tektronix 4693d color printer, 4 bits per R/G/B component
  1126. # *    t4693d8  Tektronix 4693d color printer, 8 bits per R/G/B component
  1127. # *    tek4696  Tektronix 4695/4696 inkjet plotter
  1128. # *    trufax    TruFax facsimile driver  [Unix only]
  1129. # File formats and others:
  1130. #    bit    A plain "bit bucket" device
  1131. #    bmpmono    Monochrome MS Windows .BMP file format
  1132. #    bmp16    4-bit (EGA/VGA) .BMP file format
  1133. #    bmp256    8-bit (256-color) .BMP file format
  1134. #    bmp16m    24-bit .BMP file format
  1135. #    gifmono    Monochrome GIF file format
  1136. #    gif8    8-bit color GIF file format
  1137. #    pcxmono    Monochrome PCX file format
  1138. #    pcxgray    8-bit gray scale PCX file format
  1139. #    pcx16    Older color PCX file format (EGA/VGA, 16-color)
  1140. #    pcx256    Newer color PCX file format (256-color)
  1141. #    pbm    Portable Bitmap (plain format)
  1142. #    pbmraw    Portable Bitmap (raw format)
  1143. #    pgm    Portable Graymap (plain format)
  1144. #    pgmraw    Portable Graymap (raw format)
  1145. #    ppm    Portable Pixmap (plain format)
  1146. #    ppmraw    Portable Pixmap (raw format)
  1147. # *    tiffg3    TIFF/F (G3 fax)
  1148.  
  1149. # User-contributed drivers marked with * require hardware or software
  1150. # that is not available to Aladdin Enterprises.  Please contact the
  1151. # original contributors, not Aladdin Enterprises, if you have questions.
  1152. # Contact information appears in the driver entry below.
  1153. #
  1154. # Drivers marked with a + are maintained by Aladdin Enterprises with
  1155. # the assistance of users, since Aladdin Enterprises doesn't have access to
  1156. # the hardware for these either.
  1157.  
  1158. # If you add drivers, it would be nice if you kept each list
  1159. # in alphabetical order.
  1160.  
  1161. # Each platform-specific makefile contains a line of the form
  1162. #    DEVICE_DEVS=<dev1>.dev ... <devn>.dev
  1163. # where dev1 ... devn are the devices to be included in the build.
  1164. # You may edit this line to select any desired set of devices.
  1165. # dev1 will be used as the default device (unless overridden from
  1166. # the command line with -sDEVICE=xxx, of course.)  If you can't fit all the
  1167. # devices on a single line, you may add lines defining
  1168. #    DEVICE_DEVS2=<dev21>.dev ... <dev2n>.dev
  1169. #    DEVICE_DEVS3=<dev31>.dev ... <dev3n>.dev
  1170. # etc. up to DEVICE_DEVS9.
  1171. # Don't use continuation lines, since this may break the MS-DOS command
  1172. # processor.
  1173.  
  1174. # ---------------------------- End of catalog ---------------------------- #
  1175.  
  1176. # If you want to add a new device driver, the examples below should be
  1177. # enough of a guide to the correct form for the makefile rules.
  1178.  
  1179. # All device drivers depend on the following:
  1180. GDEV=$(AK) echogs$(XE) $(gserrors_h) $(gx_h) $(gxdevice_h)
  1181.  
  1182. # Define the header files for device drivers.  Every header file used by
  1183. # more than one device driver must be listed here.
  1184. gdevpccm_h=gdevpccm.h
  1185. gdevpcfb_h=gdevpcfb.h $(dos__h)
  1186. gdevpcl_h=gdevpcl.h
  1187. gdevsvga_h=gdevsvga.h
  1188. gdevx_h=gdevx.h
  1189.  
  1190. ###### ------------------- MS-DOS display devices ------------------- ######
  1191.  
  1192. # There are really only three drivers: an EGA/VGA driver (4 bit-planes,
  1193. # plane-addressed), a SuperVGA driver (8 bit-planes, byte addressed),
  1194. # and a special driver for the S3 chip.
  1195. # To make A4 paper the default, change the compilation line from
  1196. #    $(CCD) ...
  1197. # to
  1198. #    $(CCD) -DA4
  1199.  
  1200. ### ----------------------- EGA and VGA displays ----------------------- ###
  1201.  
  1202. gdevegaa.$(OBJ): gdevegaa.asm
  1203.  
  1204. ETEST=ega.$(OBJ) $(ega_) gdevpcfb.$(OBJ) gdevegaa.$(OBJ)
  1205. ega.exe: $(ETEST) libc$(MM).tr
  1206.     $(COMPDIR)\tlink $(LCT) $(LO) $(LIBDIR)\c0$(MM) @ega.tr @libc$(MM).tr
  1207.  
  1208. ega.$(OBJ): ega.c $(GDEV)
  1209.     $(CCC) -v ega.c
  1210.  
  1211. # The shared MS-DOS makefile defines PCFBASM as either gdevegaa.$(OBJ)
  1212. # or an empty string.
  1213.  
  1214. # NOTE: for direct frame buffer addressing under SCO Unix or Xenix,
  1215. # change gdevevga to gdevsco in the following line.
  1216. EGAVGA=gdevevga.$(OBJ) gdevpcfb.$(OBJ) $(PCFBASM)
  1217.  
  1218. gdevevga.$(OBJ): gdevevga.c $(GDEV) $(gdevpcfb_h)
  1219.     $(CCD) gdevevga.c
  1220.  
  1221. gdevsco.$(OBJ): gdevsco.c $(GDEV) $(gdevpcfb_h)
  1222.     $(CCD) gdevsco.c
  1223.  
  1224. # Common code for MS-DOS and SCO.
  1225. gdevpcfb.$(OBJ): gdevpcfb.c $(GDEV) $(MAKEFILE) $(gdevpcfb_h)
  1226.     $(CCD) -DUSE_ASM=0$(USE_ASM) gdevpcfb.c
  1227.  
  1228. # The EGA/VGA family includes: EGA, VGA, and
  1229. # the ATI Wonder, Tseng ET3000/4000, and Trident SuperVGA in 16-color mode.
  1230.  
  1231. ega.dev: $(EGAVGA)
  1232.     $(SHP)gssetdev ega $(EGAVGA)
  1233.  
  1234. vga.dev: $(EGAVGA)
  1235.     $(SHP)gssetdev vga $(EGAVGA)
  1236.  
  1237. atiw16.dev: $(EGAVGA)
  1238.     $(SHP)gssetdev atiw16 $(EGAVGA)
  1239.  
  1240. tseng16.dev: $(EGAVGA)
  1241.     $(SHP)gssetdev tseng16 $(EGAVGA)
  1242.  
  1243. tvga16.dev: $(EGAVGA)
  1244.     $(SHP)gssetdev tvga16 $(EGAVGA)
  1245.  
  1246. ### ------------------------- SuperVGA displays ------------------------ ###
  1247.  
  1248. SVGA=gdevsvga.$(OBJ) $(PCFBASM)
  1249.  
  1250. gdevsvga.$(OBJ): gdevsvga.c $(GDEV) $(MAKEFILE) \
  1251.   $(gdevpcfb_h) $(gdevsvga_h)
  1252.     $(CCD) -DUSE_ASM=0$(USE_ASM) gdevsvga.c
  1253.  
  1254. # The SuperVGA family includes: ATI Wonder, S3, Trident, Tseng ET3000/4000,
  1255. # and VESA.
  1256.  
  1257. atiw.dev: $(SVGA)
  1258.     $(SHP)gssetdev atiw $(SVGA)
  1259.  
  1260. tseng.dev: $(SVGA)
  1261.     $(SHP)gssetdev tseng $(SVGA)
  1262.  
  1263. tvga.dev: $(SVGA)
  1264.     $(SHP)gssetdev tvga $(SVGA)
  1265.  
  1266. vesa.dev: $(SVGA)
  1267.     $(SHP)gssetdev vesa $(SVGA)
  1268.  
  1269. # The S3 driver doesn't share much code with the others.
  1270.  
  1271. s3vga_=$(SVGA) gdevs3ga.$(OBJ)
  1272. s3vga.dev: $(s3vga_)
  1273.     $(SHP)gssetdev s3vga $(s3vga_)
  1274.  
  1275. gdevs3ga.$(OBJ): gdevs3ga.c $(GDEV) $(MAKEFILE) $(gdevpcfb_h) $(gdevsvga_h)
  1276.     $(CCD) gdevs3ga.c
  1277.  
  1278. ### ------------ The BGI (Borland Graphics Interface) device ----------- ###
  1279.  
  1280. cgaf.$(OBJ): $(BGIDIR)\cga.bgi
  1281.     $(BGIDIR)\bgiobj /F $(BGIDIR)\cga
  1282.  
  1283. egavgaf.$(OBJ): $(BGIDIR)\egavga.bgi
  1284.     $(BGIDIR)\bgiobj /F $(BGIDIR)\egavga
  1285.  
  1286. # Include egavgaf.$(OBJ) for debugging only.
  1287. bgi_=gdevbgi.$(OBJ) cgaf.$(OBJ)
  1288. bgi.dev: $(bgi_)
  1289.     $(SHP)gssetdev bgi $(bgi_)
  1290.     $(SHP)gsaddmod bgi -lib $(LIBDIR)\graphics
  1291.  
  1292. gdevbgi.$(OBJ): gdevbgi.c $(GDEV) $(MAKEFILE) $(gxxfont_h)
  1293.     $(CCC) -DBGI_LIB=$(QQ)$(BGIDIRSTR)$(QQ) gdevbgi.c
  1294.  
  1295. ### ------------------- The Hercules Graphics display ------------------- ###
  1296.  
  1297. herc_=gdevherc.$(OBJ)
  1298. herc.dev: $(herc_)
  1299.     $(SHP)gssetdev herc $(herc_)
  1300.  
  1301. gdevherc.$(OBJ): gdevherc.c $(GDEV)
  1302.     $(CCC) gdevherc.c
  1303.  
  1304. ###### ------------------- The Private Eye display ------------------- ######
  1305. ### Note: this driver was contributed by a user:                          ###
  1306. ###   please contact narf@media-lab.media.mit.edu if you have questions.  ###
  1307.  
  1308. pe_=gdevpe.$(OBJ)
  1309. pe.dev: $(pe_)
  1310.     $(SHP)gssetdev pe $(pe_)
  1311.  
  1312. gdevpe.$(OBJ): gdevpe.c $(GDEV)
  1313.  
  1314. ###### ----------------- The MS-Windows 3.n display ------------------ ######
  1315.  
  1316. gdevmswn_h=gdevmswn.h $(GDEV) gp_mswin.h
  1317.  
  1318. # Choose one of gdevwddb or gdevwdib here.
  1319. mswin_=gdevmswn.$(OBJ) gdevmsxf.$(OBJ) gdevwdib.$(OBJ) \
  1320.   gdevemap.$(OBJ) gdevpccm.$(OBJ)
  1321. mswin.dev: $(mswin_)
  1322.     $(SHP)gssetdev mswin $(mswin_)
  1323.  
  1324. gdevmswn.$(OBJ): gdevmswn.c $(gdevmswn_h) $(gp_h) $(gpcheck_h) \
  1325.   $(gsprops_h) $(gdevpccm_h)
  1326.  
  1327. gdevmsxf.$(OBJ): gdevmsxf.c $(ctype__h) $(math__h) $(memory__h) \
  1328.   $(gdevmswn_h) $(gsutil_h) $(gxxfont_h)
  1329.  
  1330. # An implementation using a device-dependent bitmap.
  1331. gdevwddb.$(OBJ): gdevwddb.c $(gdevmswn_h)
  1332.  
  1333. # An implementation using a DIB filled by an image device.
  1334. gdevwdib.$(OBJ): gdevwdib.c $(dos__h) $(gdevmswn_h)
  1335.  
  1336. ###### ----------------- The MS-Windows 3.n printer ------------------ ######
  1337.  
  1338. mswinprn_=gdevwprn.$(OBJ) gdevmsxf.$(OBJ)
  1339. mswinprn.dev: $(mswinprn_)
  1340.     $(SHP)gssetdev mswinprn $(mswinprn_)
  1341.  
  1342. gdevwprn.$(OBJ): gdevwprn.c $(gdevmswn_h) $(gp_h) $(gpcheck_h) \
  1343.   $(gsprops_h) $(gdevpccm_h)
  1344.  
  1345. ###### ----------- The AT&T 3b1 Unixpc monochrome display ------------ ######
  1346. ### Note: this driver was contributed by a user: please contact           ###
  1347. ###       Andy Fyfe (andy@cs.caltech.edu) if you have questions.          ###
  1348.  
  1349. att3b1_=gdev3b1.$(OBJ)
  1350. att3b1.dev: $(att3b1_)
  1351.     $(SHP)gssetdev att3b1 $(att3b1_)
  1352.  
  1353. gdev3b1.$(OBJ): gdev3b1.c
  1354.  
  1355. ###### --------------- Memory-buffered printer devices --------------- ######
  1356.  
  1357. # The dependency list for printers includes devs.mak because
  1358. # you can specify -DA4 to make A4 paper the default.
  1359. # See below under, e.g., gdevdjet.c.
  1360. PDEVH=$(GDEV) $(gdevprn_h) devs.mak
  1361.  
  1362. gdevprn.$(OBJ): gdevprn.c $(PDEVH) $(gp_h) $(gsprops_h)
  1363.  
  1364. ### ------------------- The Apple DMP printer device ------------------- ###
  1365.  
  1366. appledmp_=gdevadmp.$(OBJ) gdevprn.$(OBJ)
  1367.  
  1368. appledmp.dev: $(appledmp_)
  1369.     $(SHP)gssetdev appledmp $(appledmp_)
  1370.  
  1371. ### ------------ The Canon BubbleJet BJ10e and BJ200 devices ------------ ###
  1372.  
  1373. bj10e_=gdevbj10.$(OBJ) gdevprn.$(OBJ)
  1374.  
  1375. bj10e.dev: $(bj10e_)
  1376.     $(SHP)gssetdev bj10e $(bj10e_)
  1377.  
  1378. bj200.dev: $(bj10e_)
  1379.     $(SHP)gssetdev bj200 $(bj10e_)
  1380.  
  1381. gdevbj10.$(OBJ): gdevbj10.c $(PDEVH)
  1382.  
  1383. ### -------------------------- The DigiFAX device ----------------------- ###
  1384. ###    This driver outputs images in a format suitable for use with       ###
  1385. ###    DigiBoard, Inc.'s DigiFAX software.  Use -sDEVICE=dfaxhigh for     ###
  1386. ###    high resolution output, -sDEVICE=dfaxlow for normal output.        ###
  1387. ### Note: this driver was contributed by a user: please contact           ###
  1388. ###       Rick Richardson (rick@digibd.com) if you have questions.        ###
  1389.  
  1390. digifax_=gdevdfax.$(OBJ) gdevprn.$(OBJ)
  1391. dfaxhigh.dev: $(digifax_)
  1392.     $(SHP)gssetdev dfaxhigh $(digifax_)
  1393.  
  1394. dfaxlow.dev: $(digifax_)
  1395.     $(SHP)gssetdev dfaxlow $(digifax_)
  1396.  
  1397. gdevdfax.$(OBJ): gdevdfax.c $(GDEV) $(gdevprn_h) gdevdfg3.h
  1398.  
  1399. ### ----------- The H-P DeskJet and LaserJet printer devices ----------- ###
  1400.  
  1401. ### These are essentially the same device.
  1402. ### You can make A4 paper the default: see below.
  1403. ### NOTE: printing at full resolution (300 DPI) requires a printer
  1404. ###   with at least 1.5 Mb of memory.  150 DPI only requires .5 Mb.
  1405.  
  1406. HPPCL=gdevprn.$(OBJ) gdevpcl.$(OBJ)
  1407. HPMONO=gdevdjet.$(OBJ) $(HPPCL)
  1408.  
  1409. gdevpcl.$(OBJ): gdevpcl.c $(PDEVH) $(gdevpcl_h)
  1410.  
  1411. # To make A4 paper the default, change the second line below this to
  1412. #    $(CCC) -DA4 gdevdjet.c
  1413. gdevdjet.$(OBJ): gdevdjet.c $(PDEVH) $(gdevpcl_h)
  1414.     $(CCC) gdevdjet.c
  1415.  
  1416. deskjet.dev: $(HPMONO)
  1417.     $(SHP)gssetdev deskjet $(HPMONO)
  1418.  
  1419. djet500.dev: $(HPMONO)
  1420.     $(SHP)gssetdev djet500 $(HPMONO)
  1421.  
  1422. laserjet.dev: $(HPMONO)
  1423.     $(SHP)gssetdev laserjet $(HPMONO)
  1424.  
  1425. ljetplus.dev: $(HPMONO)
  1426.     $(SHP)gssetdev ljetplus $(HPMONO)
  1427.  
  1428. ### Selecting ljet2p provides TIFF (mode 2) compression on LaserJet III,
  1429. ### IIIp, IIId, IIIsi, IId, and IIp. 
  1430.  
  1431. ljet2p.dev: $(HPMONO)
  1432.     $(SHP)gssetdev ljet2p $(HPMONO)
  1433.  
  1434. ### Selecting ljet3 provides Delta Row (mode 3) compression on LaserJet III,
  1435. ### IIIp, IIId, IIIsi.
  1436.  
  1437. ljet3.dev: $(HPMONO)
  1438.     $(SHP)gssetdev ljet3 $(HPMONO)
  1439.  
  1440. ### Selecting ljet4 also provides Delta Row compression on LaserJet IV series.
  1441.  
  1442. ljet4.dev: $(HPMONO)
  1443.     $(SHP)gssetdev ljet4 $(HPMONO)
  1444.  
  1445. ###- The H-P DeskJet 500C/550C and PaintJet family color printer devices -###
  1446. ### Note: there are two different 500C drivers, both contributed by users.###
  1447. ###   If you have questions about the djet500c driver,                    ###
  1448. ###       please contact AKayser@et.tudelft.nl.                           ###
  1449. ###   If you have questions about the cdj* drivers,                       ###
  1450. ###       please contact g.cameron@biomed.abdn.ac.uk.                     ###
  1451.  
  1452. cdeskjet_=gdevcdj.$(OBJ) $(HPPCL)
  1453.  
  1454. cdeskjet.dev: $(cdeskjet_)
  1455.     $(SHP)gssetdev cdeskjet $(cdeskjet_)
  1456.  
  1457. cdjcolor.dev: $(cdeskjet_)
  1458.     $(SHP)gssetdev cdjcolor $(cdeskjet_)
  1459.  
  1460. cdjmono.dev: $(cdeskjet_)
  1461.     $(SHP)gssetdev cdjmono $(cdeskjet_)
  1462.  
  1463. cdj500.dev: $(cdeskjet_)
  1464.     $(SHP)gssetdev cdj500 $(cdeskjet_)
  1465.  
  1466. cdj550.dev: $(cdeskjet_)
  1467.     $(SHP)gssetdev cdj550 $(cdeskjet_)
  1468.  
  1469. declj250.dev: $(cdeskjet_)
  1470.     $(SHP)gssetdev declj250 $(cdeskjet_)
  1471.  
  1472. pj.dev: $(cdeskjet_)
  1473.     $(SHP)gssetdev pj $(cdeskjet_)
  1474.  
  1475. pjxl.dev: $(cdeskjet_)
  1476.     $(SHP)gssetdev pjxl $(cdeskjet_)
  1477.  
  1478. pjxl300.dev: $(cdeskjet_)
  1479.     $(SHP)gssetdev pjxl300 $(cdeskjet_)
  1480.  
  1481. # NB: you can also customise the build if required, using -DA4 (for A4 paper)
  1482. # and -DBitsPerPixel=<number> if you wish the default to be other than 24
  1483. # for the generic drivers (cdj500, cdj550, pjxl300, pjtest, pjxltest).
  1484. # E.g,. to make A4 paper the default, change the second line below this to
  1485. #    $(CCC) -DA4 gdevdjet.c
  1486. gdevcdj.$(OBJ): gdevcdj.c $(PDEVH) $(gdevpcl_h)
  1487.     $(CCC) gdevcdj.c
  1488.  
  1489. djet500c_=gdevdjtc.$(OBJ) $(HPPCL)
  1490. djet500c.dev: $(djet500c_)
  1491.     $(SHP)gssetdev djet500c $(djet500c_)
  1492.  
  1493. gdevdjtc.$(OBJ): gdevdjtc.c $(PDEVH) $(gdevpcl_h)
  1494.  
  1495. ### ----------------- The generic Epson printer device ----------------- ###
  1496.  
  1497. epson_=gdevepsn.$(OBJ) gdevprn.$(OBJ)
  1498.  
  1499. epson.dev: $(epson_)
  1500.     $(SHP)gssetdev epson $(epson_)
  1501.  
  1502. eps9high.dev: $(epson_)
  1503.     $(SHP)gssetdev eps9high $(epson_)
  1504.  
  1505. gdevepsn.$(OBJ): gdevepsn.c $(PDEVH)
  1506.  
  1507. ### ----------------- The IBM Proprinter printer device ---------------- ###
  1508.  
  1509. ibmpro.dev: $(epson_)
  1510.     $(SHP)gssetdev ibmpro $(epson_)
  1511.  
  1512. ### -------------- The Epson LQ-2550 color printer device -------------- ###
  1513. ### Note: this driver was contributed by users: please contact           ###
  1514. ###       Dave St. Clair (dave@exlog.com) if you have questions.         ###
  1515.  
  1516. epsonc_=gdevepsc.$(OBJ) gdevprn.$(OBJ)
  1517. epsonc.dev: $(epsonc_)
  1518.     $(SHP)gssetdev epsonc $(epsonc_)
  1519.  
  1520. gdevepsc.$(OBJ): gdevepsc.c $(PDEVH)
  1521.  
  1522. ### -------------- The Epson ESC/P 2 language printer device ----------- ###
  1523. ### Note: this driver was contributed by a user: if you have questions,  ###
  1524. ###       please contact Richard Brown (rab@tauon.ph.unimelb.edu.au).    ###
  1525.  
  1526. escp2_=gdevescp.$(OBJ) gdevprn.$(OBJ)
  1527. escp2.dev: $(escp2_)
  1528.     $(SHP)gssetdev escp2 $(escp2_)
  1529.  
  1530. gdevescp.$(OBJ): gdevescp.c $(PDEVH)
  1531.  
  1532. ### ------------ The H-P PaintJet color printer device ----------------- ###
  1533. ### Note: this driver also supports the DEC LJ250 color printer, which   ###
  1534. ###       has a PaintJet-compatible mode, and the PaintJet XL.           ###
  1535. ### If you have questions about the XL, please contact Rob Reiss         ###
  1536. ###       (rob@moray.berkeley.edu).                                      ###
  1537.  
  1538. PJET=gdevpjet.$(OBJ) $(HPPCL)
  1539.  
  1540. gdevpjet.$(OBJ): gdevpjet.c $(PDEVH) $(gdevpcl_h)
  1541.  
  1542. lj250.dev: $(PJET)
  1543.     $(SHP)gssetdev lj250 $(PJET)
  1544.  
  1545. paintjet.dev: $(PJET)
  1546.     $(SHP)gssetdev paintjet $(PJET)
  1547.  
  1548. pjetxl.dev: $(PJET)
  1549.     $(SHP)gssetdev pjetxl $(PJET)
  1550.  
  1551. ### ------- The IBM 3852 JetPrinter color inkjet printer device -------- ###
  1552. ### Note: this driver was contributed by users: please contact           ###
  1553. ###       Kevin Gift (kgift@draper.com) if you have questions.           ###
  1554. ### Note that the paper size that can be addressed by the graphics mode  ###
  1555. ###   used in this driver is fixed at 7-1/2 inches wide (the printable   ###
  1556. ###   width of the jetprinter itself.)                                   ###
  1557.  
  1558. jetp3852_=gdev3852.$(OBJ) gdevprn.$(OBJ)
  1559. jetp3852.dev: $(jetp3852_)
  1560.     $(SHP)gssetdev jetp3852 $(jetp3852_)
  1561.  
  1562. gdevjetp.$(OBJ): gdevjetp.c $(PDEVH) $(gdevpcl_h)
  1563.  
  1564. ### ----------------- The Canon LBP-8II printer device ----------------- ###
  1565. ### Note: this driver was contributed by users: please contact           ###
  1566. ###       Tom Quinn (trq@prg.oxford.ac.uk) if you have questions.        ###
  1567. ### Note that the standard paper size for this driver is the European    ###
  1568. ###   A4 size, not the American 8.5" x 11" size.                         ###
  1569.  
  1570. lbp8_=gdevlbp8.$(OBJ) gdevprn.$(OBJ)
  1571. lbp8.dev: $(lbp8_)
  1572.     $(SHP)gssetdev lbp8 $(lbp8_)
  1573.  
  1574. gdevlbp8.$(OBJ): gdevlbp8.c $(PDEVH)
  1575.  
  1576. ### -------------- The DEC LN03/LA50/LA75 printer devices -------------- ###
  1577. ### Note: this driver was contributed by users: please contact           ###
  1578. ###       Ulrich Mueller (ulm@vsnhd1.cern.ch) if you have questions.     ###
  1579. ### For questions about LA50 and LA75: please contact                    ###
  1580. ###       Ian MacPhedran (macphed@dvinci.USask.CA).                     ###
  1581. ### For the LN03, you can make A4 paper the default: see below.          ###
  1582.  
  1583. ln03_=gdevln03.$(OBJ) gdevprn.$(OBJ)
  1584. ln03.dev: $(ln03_)
  1585.     $(SHP)gssetdev ln03 $(ln03_)
  1586.  
  1587. la50.dev: $(ln03_)
  1588.     $(SHP)gssetdev la50 $(ln03_)
  1589.  
  1590. la75.dev: $(ln03_)
  1591.     $(SHP)gssetdev la75 $(ln03_)
  1592.  
  1593. # To make A4 paper the default, change the second line below this to
  1594. #    $(CCC) -DA4 gdevln03.c
  1595. gdevln03.$(OBJ): gdevln03.c $(PDEVH)
  1596.     $(CCC) gdevln03.c
  1597.  
  1598. ### -------------- The C.Itoh M8510 printer device --------------------- ###
  1599. ### Note: this driver was contributed by a user: please contact Bob      ###
  1600. ###       Smith <bob@snuffy.penfield.ny.us> if you have questions.       ###
  1601.  
  1602. m8510_=gdev8510.$(OBJ) gdevprn.$(OBJ)
  1603. m8510.dev: $(m8510_)
  1604.     $(SHP)gssetdev m8510 $(m8510_)
  1605.  
  1606. gdev8510.$(OBJ): gdev8510.c $(PDEVH)
  1607.  
  1608. ### --------------------- The NEC P6 family devices -------------------- ###
  1609.  
  1610. necp6_=gdevnp6.$(OBJ) gdevprn.$(OBJ)
  1611. necp6.dev: $(necp6_)
  1612.     $(SHP)gssetdev necp6 $(necp6_)
  1613.  
  1614. gdevnp6.$(OBJ): gdevnp6.c $(PDEVH)
  1615.  
  1616. ### ----------------- The Okidata MicroLine 182 device ----------------- ###
  1617. ### Note: this driver was contributed by a user: please contact          ###
  1618. ###       Maarten Koning (smeg@bnr.ca) if you have questions.            ###
  1619.  
  1620. oki182_=gdevo182.$(OBJ) gdevprn.$(OBJ)
  1621. oki182.dev: $(oki182_)
  1622.     $(SHP)gssetdev oki182 $(oki182_)
  1623.  
  1624. gdevo182.$(OBJ): gdevo182.c $(PDEVH)
  1625.  
  1626. ### ------------- The Ricoh 4081 laser printer device ------------------ ###
  1627. ### Note: this driver was contributed by users:                          ###
  1628. ###       please contact kdw@oasis.icl.co.uk if you have questions.      ###
  1629.  
  1630. r4081_=gdev4081.$(OBJ) gdevprn.$(OBJ)
  1631. r4081.dev: $(r4081_)
  1632.     $(SHP)gssetdev r4081 $(r4081_)
  1633.  
  1634. gdev4081.$(OBJ): gdev4081.c $(PDEVH)
  1635.  
  1636. ###### ------------------------ Sony devices ------------------------ ######
  1637. ### Note: these drivers were contributed by users: please contact        ###
  1638. ###       Mike Smolenski (mike@intertech.com) if you have questions.     ###
  1639.  
  1640. ### ------------------- Sony NeWS frame buffer device ------------------ ###
  1641.  
  1642. sonyfb_=gdevsnfb.$(OBJ) gdevprn.$(OBJ)
  1643. sonyfb.dev: $(sonyfb_)
  1644.     $(SHP)gssetdev sonyfb $(sonyfb_)
  1645.  
  1646. gdevsnfb.$(OBJ): gdevsnfb.c $(PDEVH)
  1647.  
  1648. ### -------------------- Sony NWP533 printer device -------------------- ###
  1649. ### Note: this driver was contributed by a user: please contact Tero     ###
  1650. ###       Kivinen (kivinen@joker.cs.hut.fi) if you have questions.       ###
  1651.  
  1652. nwp533_=gdevn533.$(OBJ) gdevprn.$(OBJ)
  1653. nwp533.dev: $(nwp533_)
  1654.     $(SHP)gssetdev nwp533 $(nwp533_)
  1655.  
  1656. gdevn533.$(OBJ): gdevn533.c $(PDEVH)
  1657.  
  1658. ### ------------------------- The SPARCprinter ------------------------- ###
  1659. ### Note: this driver was contributed by users: please contact Martin    ###
  1660. ###       Schulte (schulte@thp.uni-koeln.de) if you have questions.      ###
  1661. ###       He would also like to hear from anyone using the driver.       ###
  1662. ### Please consult the source code for additional documentation.         ###
  1663.  
  1664. sparc_=gdevsppr.$(OBJ) gdevprn.$(OBJ)
  1665. sparc.dev: $(sparc_)
  1666.     $(SHP)gssetdev sparc $(sparc_)
  1667.  
  1668. gdevsppr.$(OBJ): gdevsppr.c $(PDEVH)
  1669.  
  1670. ###### --------------------- The SunView device --------------------- ######
  1671. ### Note: this driver is maintained by a user: if you have questions,    ###
  1672. ###       please contact Andreas Stolcke (stolcke@icsi.berkeley.edu).    ###
  1673.  
  1674. sunview_=gdevsun.$(OBJ)
  1675. sunview.dev: $(sunview_)
  1676.     $(SHP)gssetdev sunview $(sunview_)
  1677.     $(SHP)gsaddmod sunview -lib suntool sunwindow pixrect
  1678.  
  1679. gdevsun.$(OBJ): gdevsun.c $(GDEV) $(arch_h)
  1680.  
  1681. ### ----------------- Tektronix 4396d color printer -------------------- ###
  1682. ### Note: this driver was contributed by a user: please contact          ###
  1683. ###       Karl Hakimian (hakimian@haney.eecs.wsu.edu)                    ###
  1684. ###       if you have questions.                                         ###
  1685.  
  1686. t4693d_=gdev4693.$(OBJ) gdevprn.$(OBJ)
  1687. t4693d2.dev: $(t4693d_)
  1688.     $(SHP)gssetdev t4693d2 $(t4693d_)
  1689.  
  1690. t4693d4.dev: $(t4693d_)
  1691.     $(SHP)gssetdev t4693d4 $(t4693d_)
  1692.  
  1693. t4693d8.dev: $(t4693d_)
  1694.     $(SHP)gssetdev t4693d8 $(t4693d_)
  1695.  
  1696. gdev4693.$(OBJ): gdev4693.c $(GDEV)
  1697.  
  1698. ### -------------------- Tektronix ink-jet printers -------------------- ###
  1699. ### Note: this driver was contributed by a user: please contact          ###
  1700. ###       Karsten Spang (spang@nbivax.nbi.dk) if you have questions.     ###
  1701.  
  1702. tek4696_=gdevtknk.$(OBJ) gdevprn.$(OBJ)
  1703. tek4696.dev: $(tek4696_)
  1704.     $(SHP)gssetdev tek4696 $(tek4696_)
  1705.  
  1706. gdevtknk.$(OBJ): gdevtknk.c $(PDEVH)
  1707.  
  1708. ### ----------------- The TruFax facsimile device ---------------------- ###
  1709. ### Note: this driver was contributed by users: please contact           ###
  1710. ###       Neil Ostroff (nao@maestro.bellcore.com) if you have questions. ###
  1711. ### Note that the driver requires a file encode_l.o supplied by the      ###
  1712. ###   makers of the TruFax product.                                      ###
  1713.  
  1714. trufax_=gdevtrfx.$(OBJ) gdevprn.$(OBJ) encode_l.$(OBJ)
  1715. trufax.dev: $(trufax_)
  1716.     $(SHP)gssetdev trufax $(trufax_)
  1717.  
  1718. gdevtrfx.$(OBJ): gdevtrfx.c $(GDEV)
  1719.  
  1720. ###### ----------------------- The X11 device ----------------------- ######
  1721.  
  1722. # Aladdin Enterprises does not support Ghostview.  For more information
  1723. # about Ghostview, please contact Tim Theisen (ghostview@cs.wisc.edu).
  1724.  
  1725. x11_=gdevx.$(OBJ) gdevxini.$(OBJ) gdevxxf.$(OBJ) gdevemap.$(OBJ)
  1726. x11.dev: $(x11_)
  1727.     $(SHP)gssetdev x11 $(x11_)
  1728.     $(SHP)gsaddmod x11 -lib Xt X11 Xext
  1729.  
  1730. # See the main makefile for the definition of XINCLUDE.
  1731. GDEVX=$(GDEV) x_.h gdevx.h $(MAKEFILE)
  1732. gdevx.$(OBJ): gdevx.c $(GDEVX) $(gsprops_h) $(gsutil_h)
  1733.     $(CCC) $(XINCLUDE) gdevx.c
  1734.  
  1735. gdevxini.$(OBJ): gdevxini.c $(GDEVX) $(ctype__h)
  1736.     $(CCC) $(XINCLUDE) gdevxini.c
  1737.  
  1738. gdevxxf.$(OBJ): gdevxxf.c $(GDEVX) $(gsutil_h) $(gxxfont_h)
  1739.     $(CCC) $(XINCLUDE) gdevxxf.c
  1740.  
  1741. ### ---------------------- The bit bucket device ----------------------- ###
  1742.  
  1743. bit_=gdevbit.$(OBJ) gdevprn.$(OBJ)
  1744. bit.dev: $(bit_)
  1745.     $(SHP)gssetdev bit $(bit_)
  1746.  
  1747. gdevbit.$(OBJ): gdevbit.c $(PDEVH)
  1748.  
  1749. ###### ----------------------- PC file formats ---------------------- ######
  1750.  
  1751. gdevpccm.$(OBJ): gdevpccm.c $(AK) \
  1752.   $(gs_h) $(gsmatrix_h) $(gxdevice_h) $(gdevpccm_h)
  1753.  
  1754. ### ------------------------- .BMP file formats ------------------------- ###
  1755.  
  1756. bmp_=gdevbmp.$(OBJ) gdevpccm.$(OBJ) gdevprn.$(OBJ)
  1757.  
  1758. gdevbmp.$(OBJ): gdevbmp.c $(PDEVH) $(gdevpccm_h)
  1759.  
  1760. bmpmono.dev: $(bmp_)
  1761.     $(SHP)gssetdev bmpmono $(bmp_)
  1762.  
  1763. bmp16.dev: $(bmp_)
  1764.     $(SHP)gssetdev bmp16 $(bmp_)
  1765.  
  1766. bmp256.dev: $(bmp_)
  1767.     $(SHP)gssetdev bmp256 $(bmp_)
  1768.  
  1769. bmp16m.dev: $(bmp_)
  1770.     $(SHP)gssetdev bmp16m $(bmp_)
  1771.  
  1772. ### ------------------------- GIF file formats ------------------------- ###
  1773.  
  1774. GIF=gdevgif.$(OBJ) gdevpccm.$(OBJ) gdevprn.$(OBJ)
  1775.  
  1776. gdevgif.$(OBJ): gdevgif.c $(PDEVH) $(gdevpccm_h)
  1777.  
  1778. gifmono.dev: $(GIF)
  1779.     $(SHP)gssetdev gifmono $(GIF)
  1780.  
  1781. gif8.dev: $(GIF)
  1782.     $(SHP)gssetdev gif8 $(GIF)
  1783.  
  1784. ### ------------------------- PCX file formats ------------------------- ###
  1785.  
  1786. pcx_=gdevpcx.$(OBJ) gdevpccm.$(OBJ) gdevprn.$(OBJ)
  1787.  
  1788. gdevpcx.$(OBJ): gdevpcx.c $(PDEVH) $(gdevpccm_h) $(gxlum_h)
  1789.  
  1790. pcxmono.dev: $(pcx_)
  1791.     $(SHP)gssetdev pcxmono $(pcx_)
  1792.  
  1793. pcxgray.dev: $(pcx_)
  1794.     $(SHP)gssetdev pcxgray $(pcx_)
  1795.  
  1796. pcx16.dev: $(pcx_)
  1797.     $(SHP)gssetdev pcx16 $(pcx_)
  1798.  
  1799. pcx256.dev: $(pcx_)
  1800.     $(SHP)gssetdev pcx256 $(pcx_)
  1801.  
  1802. ###### ------------------- Portable Bitmap devices ------------------ ######
  1803. ### For more information, see the pbm(5), pgm(5), and ppm(5) man pages.  ###
  1804.  
  1805. pxm_=gdevpbm.$(OBJ) gdevprn.$(OBJ)
  1806.  
  1807. gdevpbm.$(OBJ): gdevpbm.c $(PDEVH) $(gxlum_h)
  1808.  
  1809. ### Portable Bitmap (PBM, plain or raw format, magic numbers "P1" or "P4")
  1810.  
  1811. pbm.dev: $(pxm_)
  1812.     $(SHP)gssetdev pbm $(pxm_)
  1813.  
  1814. pbmraw.dev: $(pxm_)
  1815.     $(SHP)gssetdev pbmraw $(pxm_)
  1816.  
  1817. ### Portable Graymap (PGM, plain or raw format, magic numbers "P2" or "P5")
  1818.  
  1819. pgm.dev: $(pxm_)
  1820.     $(SHP)gssetdev pgm $(pxm_)
  1821.  
  1822. pgmraw.dev: $(pxm_)
  1823.     $(SHP)gssetdev pgmraw $(pxm_)
  1824.  
  1825. ### Portable Pixmap (PPM, plain or raw format, magic numbers "P3" or "P6")
  1826.  
  1827. ppm.dev: $(pxm_)
  1828.     $(SHP)gssetdev ppm $(pxm_)
  1829.  
  1830. ppmraw.dev: $(pxm_)
  1831.     $(SHP)gssetdev ppmraw $(pxm_)
  1832.  
  1833. ### -------------------------- TIFF/F device ---------------------------- ###
  1834. ###    This driver outputs images in a TIFF format               ###
  1835. ###    Use -sDEVICE=tiffg3 and                          ###
  1836. ###      -r204x98 for low resolution output, or              ###
  1837. ###      -r204x196 for high resolution output                  ###
  1838. ###    Note also that 3 page sizes are understood: letter, A4, and B4      ###
  1839. ### Note: this driver was contributed by a user: please contact           ###
  1840. ###       Sam Leffler (sam@sgi.com) if you have questions.              ###
  1841.  
  1842. tiffg3_=gdevtiff.$(OBJ) gdevprn.$(OBJ)
  1843. tiffg3.dev: $(tiffg3_)
  1844.     $(SHP)gssetdev tiffg3 $(tiffg3_)
  1845. gdevtiff.$(OBJ): gdevtiff.c $(GDEV) $(gdevprn_h) gdevdfg3.h gdevtiff.h
  1846. #    Copyright (C) 1990, 1992, 1993 Aladdin Enterprises.  All rights reserved.
  1847. #
  1848. # This file is part of Ghostscript.
  1849. #
  1850. # Ghostscript is distributed in the hope that it will be useful, but
  1851. # WITHOUT ANY WARRANTY.  No author or distributor accepts responsibility
  1852. # to anyone for the consequences of using it or for whether it serves any
  1853. # particular purpose or works at all, unless he says so in writing.  Refer
  1854. # to the Ghostscript General Public License for full details.
  1855. #
  1856. # Everyone is granted permission to copy, modify and redistribute
  1857. # Ghostscript, but only under the conditions described in the Ghostscript
  1858. # General Public License.  A copy of this license is supposed to have been
  1859. # given to you along with Ghostscript so you can know your rights and
  1860. # responsibilities.  It should be in a file named COPYING.  Among other
  1861. # things, the copyright notice and this notice must be preserved on all
  1862. # copies.
  1863.  
  1864. # Partial makefile for Ghostscript, common to all Unix configurations.
  1865.  
  1866. # This is the last part of the makefile for Unix configurations.
  1867. # Since Unix make doesn't have an 'include' facility, we concatenate
  1868. # the various parts of the makefile together by brute force (in tar_cat).
  1869.  
  1870. # The following prevents GNU make from constructing argument lists that
  1871. # include all environment variables, which can easily be longer than
  1872. # brain-damaged system V allows.
  1873.  
  1874. .NOEXPORT:
  1875.  
  1876. # -------------------------------- Library -------------------------------- #
  1877.  
  1878. ## The Unix platforms
  1879.  
  1880. # We have to include a test for the existence of sys/time.h,
  1881. # because some System V platforms don't have it.
  1882.  
  1883. # All reasonable Unix platforms.
  1884. unix__=gp_nofb.$(OBJ) gp_unix.$(OBJ) gdevpipe.$(OBJ)
  1885. unix_.dev: $(unix__)
  1886.     $(SHP)gssetmod unix_ $(unix__)
  1887.     $(SHP)gsaddmod unix_ -fdev pipe
  1888.  
  1889. gp_unix.$(OBJ): gp_unix.c $(AK) $(memory__h) $(string__h) $(gx_h) $(gp_h) \
  1890.  $(gsutil_h) $(stat__h) $(time__h)
  1891.     if ( test -f /usr/include/sys/time.h ) then $(CCC) gp_unix.c;\
  1892.     else $(CCC) -DNOSYSTIME gp_unix.c; fi
  1893.  
  1894. gdevpipe.$(OBJ): gdevpipe.c $(AK) $(stdio__h) $(gstypes_h) \
  1895.   $(filedev_h) $(stream_h)
  1896.  
  1897. # Brain-damaged System V platforms.
  1898. sysv__=gp_nofb.$(OBJ) gp_unix.$(OBJ) gp_sysv.$(OBJ)
  1899. sysv_.dev: $(sysv__)
  1900.     $(SHP)gssetmod sysv_ $(sysv__)
  1901.  
  1902. gp_sysv.$(OBJ): gp_sysv.c $(time__h) $(AK)
  1903.     if ( test -f /usr/include/sys/time.h ) then $(CCC) gp_sysv.c;\
  1904.     else $(CCC) -DNOSYSTIME gp_sysv.c; fi
  1905.  
  1906. # -------------------------- Auxiliary programs --------------------------- #
  1907.  
  1908. ansi2knr$(XE): ansi2knr.c $(stdio__h) $(string__h) $(malloc__h)
  1909.     $(CC) -o ansi2knr$(XE) $(CFLAGS) ansi2knr.c
  1910.  
  1911. echogs$(XE): echogs.c
  1912.     $(CC) -o echogs$(XE) $(CFLAGS) echogs.c
  1913.  
  1914. # On the RS/6000 (at least), compiling genarch.c with gcc with -O
  1915. # produces a buggy executable.
  1916. genarch$(XE): genarch.c
  1917.     $(CC) -o genarch$(XE) genarch.c
  1918.  
  1919. genconf$(XE): genconf.c
  1920.     $(CC) -o genconf$(XE) genconf.c
  1921.  
  1922. # ----------------------------- Main program ------------------------------ #
  1923.  
  1924. BEGINFILES=
  1925. CCBEGIN=$(CCC) *.c
  1926.  
  1927. # Interpreter main program
  1928.  
  1929. GSUNIX=gs.$(OBJ) gsmain.$(OBJ) $(INT) $(LIBGS)
  1930.  
  1931. # The second call on echogs writes a \.  This is the only
  1932. # way to do it that works with all flavors of shell!
  1933. $(GS)$(XE): $(GSUNIX) ld.tr echogs $(ALL_DEVS)
  1934.     ./echogs -n - $(CC) $(LDFLAGS) $(XLIBDIRS) -o gs $(GSUNIX) >_temp_
  1935.     ./echogs -x 205c >>_temp_
  1936.     cat ld.tr >>_temp_
  1937.     ./echogs - $(EXTRALIBS) -lm >>_temp_
  1938.     $(SH) <_temp_
  1939.  
  1940. # Installation
  1941.  
  1942. TAGS:
  1943.     etags -t *.c *.h
  1944.  
  1945. docdir=$(gsdatadir)/doc
  1946. exdir=$(gsdatadir)/examples
  1947.  
  1948. install: $(GS)
  1949.     -mkdir $(bindir)
  1950.     for f in $(GS) gsbj gsdj gslj gslp gsnd bdftops font2c ps2ascii ps2epsi ; do $(INSTALL_PROGRAM) $$f $(bindir)/$$f ; done
  1951.     -mkdir $(datadir)
  1952.     -mkdir $(gsdatadir)
  1953.     for f in README gslp.ps gs_init.ps gs_dps1.ps gs_fonts.ps gs_lev2.ps gs_statd.ps gs_type0.ps gs_dbt_e.ps gs_sym_e.ps quit.ps Fontmap uglyr.gsf bdftops.ps decrypt.ps font2c.ps impath.ps landscap.ps level1.ps prfont.ps ps2ascii.ps ps2epsi.ps ps2image.ps pstoppm.ps showpage.ps type1ops.ps wrfont.ps ; do $(INSTALL_DATA) $$f $(gsdatadir)/$$f ; done
  1954.     -mkdir $(docdir)
  1955.     for f in NEWS ansi2knr.1 devices.doc drivers.doc fonts.doc gs.1 hershey.doc history.doc humor.doc language.doc lib.doc make.doc ps2epsi.doc psfiles.doc readme.doc use.doc xfonts.doc ; do $(INSTALL_DATA) $$f $(docdir)/$$f ; done
  1956.     -mkdir $(exdir)
  1957.     for f in chess.ps cheq.ps colorcir.ps golfer.ps escher.ps snowflak.ps tiger.ps ; do $(INSTALL_DATA) $$f $(exdir)/$$f ; done
  1958.