home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 2 / crawlyvol2.bin / apps / dtp / ghost / gs301src / makefile
Makefile  |  1994-09-04  |  105KB  |  3,086 lines

  1. #    Copyright (C) 1989, 1992, 1993 Aladdin Enterprises.  All rights reserved.
  2. # This file is part of Aladdin Ghostscript.
  3. # Aladdin Ghostscript is distributed with NO WARRANTY OF ANY KIND.  No author
  4. # or distributor accepts any responsibility for the consequences of using it,
  5. # or for whether it serves any particular purpose or works at all, unless he
  6. # or she says so in writing.  Refer to the Aladdin Ghostscript Free Public
  7. # License (the "License") for full details.
  8. # Every copy of Aladdin Ghostscript must include a copy of the License,
  9. # normally in a plain ASCII text file named PUBLIC.  The License grants you
  10. # the right to copy, modify and redistribute Aladdin Ghostscript, but only
  11. # under certain conditions described in the License.  Among other things, the
  12. # License requires that the copyright notice and this notice be preserved on
  13. # all copies.
  14.  
  15. # Makefile for Ghostscript, Atari ST TOS/MiNT gcc configuration.
  16. # Hacked from the Unix/gcc/X11 makefile.
  17. # Note: this makefile assumes you are using gcc in ANSI mode.
  18.  
  19. # ------------------------------- Options ------------------------------- #
  20.  
  21. ####### The following are the only parts of the file you should need to edit.
  22.  
  23. # ------ Generic options ------ #
  24.  
  25. # Define the installation commands and target directories for
  26. # executables and files.  Only relevant to `make install'.
  27.  
  28. INSTALL = install -c
  29. INSTALL_PROGRAM = $(INSTALL) -m 775
  30. INSTALL_DATA = $(INSTALL) -m 664
  31.  
  32. prefix = f:\\\\gs
  33. exec_prefix = $(prefix)
  34. bindir = $(exec_prefix)/bin
  35. scriptdir = $(bindir)
  36. mandir = $(prefix)/man
  37. man1dir = $(mandir)/man1
  38. manext = 1
  39. datadir = $(prefix)/lib
  40. gsdir = $(datadir)/gs
  41. gsdatadir = $(gsdir)/3.01
  42.  
  43. docdir=$(gsdatadir)/doc
  44. exdir=$(gsdatadir)/examples
  45. GS_DOCDIR=$(docdir)
  46.  
  47. # Define the default directory/ies for the runtime
  48. # initialization and font files.  Separate multiple directories with a :.
  49. # Note that if you want the interpreter to search the current directory, .,
  50. # you must include it explicitly.
  51.  
  52. GS_LIB_DEFAULT=.,$(prefix)\\\\help,$(prefix)\\\\ps,$(prefix)\\\\fonts,$(prefix)
  53.  
  54. # Define the name of the interpreter initialization file.
  55. # (There is no reason to change this.)
  56.  
  57. GS_INIT=gs_init.ps
  58.  
  59. # Choose generic configuration options.
  60.  
  61. # -DDEBUG
  62. #    includes debugging features (-Z switch) in the code.
  63. #      Code runs substantially slower even if no debugging switches
  64. #      are set.
  65. # -DNOPRIVATE
  66. #    makes private (static) procedures and variables public,
  67. #      so they are visible to the debugger and profiler.
  68. #      No execution time or space penalty.
  69.  
  70. #GENOPT=-DDEBUG
  71. GENOPT=
  72.  
  73. # Define the name of the executable file.
  74.  
  75. GS=gs
  76.  
  77. # ------ Platform-specific options ------ #
  78.  
  79. # Define the name of the C compiler.
  80.  
  81. LCC=gcc
  82. CC=cgcc
  83.  
  84. # Define the name of the linker for the final link step.
  85. # Normally this is the same as the C compiler.
  86.  
  87. CCLD=$(CC)
  88.  
  89. # Define the default gcc flags.
  90.  
  91. GCFLAGS=-Wall -Wno-uninitialized -Wpointer-arith -Wstrict-prototypes -Wwrite-strings
  92.  
  93. # Define the other compilation flags.
  94. # Add -DBSD4_2 for 4.2bsd systems.
  95. # Add -DSYSV for System V or DG/UX.
  96. # Add -DSYSV -D__SVR3 for SCO ODT, ISC Unix 2.2 or before,
  97. #   or any System III Unix, or System V release 3-or-older Unix.
  98. # Add -DSVR4 (not -DSYSV) for System V release 4.
  99. # XCFLAGS can be set from the command line.
  100. # We don't include -ansi, because this gets in the way of the platform-
  101. #   specific stuff that <math.h> typically needs; nevertheless, we expect
  102. #   gcc to accept ANSI-style function prototypes and function definitions.
  103.  
  104. #CFLAGS=-pg -O $(GCFLAGS) $(XCFLAGS)
  105. CFLAGS=-O2 $(GCFLAGS) $(XCFLAGS)
  106. #CFLAGS=-g $(GCFLAGS) $(XCFLAGS)
  107.  
  108. # Define platform flags for ld.
  109. # SunOS 4.n may need -Bstatic.
  110. # XLDFLAGS can be set from the command line.
  111.  
  112. #LDFLAGS=$(XLDFLAGS) profil.o -pg
  113. #LDFLAGS=$(XLDFLAGS) -pg
  114. LDFLAGS=$(XLDFLAGS)
  115.  
  116. # Define any extra libraries to link into the executable.
  117. # ISC Unix 2.2 wants -linet.
  118. # SCO Unix needs -lsocket if you aren't including the X11 driver.
  119. # SVR4 may need -lnsl.
  120. # (Libraries required by individual drivers are handled automatically.)
  121.  
  122. EXTRALIBS=-lgem
  123.  
  124. # Define the include switch(es) for the X11 header files.
  125. # This can be null if handled in some other way (e.g., the files are
  126. # in /usr/include, or the directory is supplied by an environment variable);
  127. # in particular, SCO Xenix, Unix, and ODT just want
  128. #XINCLUDE=
  129. # Note that x_.h expects to find the header files in $(XINCLUDE)/X11,
  130. # not in $(XINCLUDE).
  131.  
  132. XINCLUDE=-I/usr/local/X11R5/include
  133.  
  134. # Define the directory/ies and library names for the X11 library files.
  135. # The former can be null if these files are in the default linker search path;
  136. # in particular, SCO Xenix, Unix, and ODT just want
  137. #XLIBDIRS=
  138. # X11R6 probably needs SM and ICE added to XLIBS.
  139.  
  140. #XLIBDIRS=-L/usr/local/X/lib
  141. XLIBS=Xt Xext X11
  142.  
  143. # Define whether this platform has floating point hardware.  If FPU_TYPE=1,
  144. # we assume that floating point is at worst only slightly slower
  145. # than fixed point.  If FPU_TYPE=0, we assume that floating point may be
  146. # considerably slower.  If FPU_TYPE=-1, we assume that floating point is
  147. # always much slower than fixed point.
  148.  
  149. FPU_TYPE=1
  150.  
  151. # ------ Devices and features ------ #
  152.  
  153. # Choose the language feature(s) to include.  See gs.mak for details.
  154.  
  155. FEATURE_DEVS=level2.dev dps.dev ccinit.dev ccfonts.dev
  156.  
  157. # Choose the device(s) to include.  See devs.mak for details.
  158.  
  159. DEVICE_DEVS=stvdi.dev slm.dev gemimg.dev djet500.dev djet500c.dev \
  160.     cdj500.dev cdj550.dev laserjet.dev bj10e.dev ap3250.dev \
  161.     st800.dev epson.dev eps9high.dev epsonc.dev necp6.dev \
  162.     gifmono.dev gif8.dev pbmraw.dev ppmraw.dev \
  163.  
  164. # ---------------------------- End of options --------------------------- #
  165.  
  166. # Define the name of the makefile -- used in dependencies.
  167.  
  168. MAKEFILE=Makefile
  169.  
  170. # Define the ANSI-to-K&R dependency.  (gcc accepts ANSI syntax.)
  171.  
  172. AK=
  173.  
  174. # Define the compilation rules and flags.
  175.  
  176. CCC=$(CC) $(CCFLAGS) -c
  177.  
  178. # --------------------------- Generic makefile ---------------------------- #
  179.  
  180. # The remainder of the makefile (unixhead.mak, gs.mak, devs.mak, unixtail.mak)
  181. # is generic.  tar_cat concatenates all these together.
  182. #    Copyright (C) 1990, 1991, 1993 Aladdin Enterprises.  All rights reserved.
  183. # This file is part of Aladdin Ghostscript.
  184. # Aladdin Ghostscript is distributed with NO WARRANTY OF ANY KIND.  No author
  185. # or distributor accepts any responsibility for the consequences of using it,
  186. # or for whether it serves any particular purpose or works at all, unless he
  187. # or she says so in writing.  Refer to the Aladdin Ghostscript Free Public
  188. # License (the "License") for full details.
  189. # Every copy of Aladdin Ghostscript must include a copy of the License,
  190. # normally in a plain ASCII text file named PUBLIC.  The License grants you
  191. # the right to copy, modify and redistribute Aladdin Ghostscript, but only
  192. # under certain conditions described in the License.  Among other things, the
  193. # License requires that the copyright notice and this notice be preserved on
  194. # all copies.
  195.  
  196. # Partial makefile common to all Unix configurations.
  197.  
  198. # This part of the makefile gets inserted after the compiler-specific part
  199. # (xxx-head.mak) and before gs.mak and devs.mak.
  200.  
  201. # ----------------------------- Generic stuff ----------------------------- #
  202.  
  203. # Define the platform name.  For a "stock" System V platform,
  204. # use sysv_ instead of unix_.
  205.  
  206. PLATFORM=atari_
  207.  
  208. # Define the syntax for command, object, and executable files.
  209.  
  210. CMD=
  211. O=-o ./
  212. OBJ=o
  213. LXE=
  214. XE=.ttp
  215.  
  216. # Define the current directory prefix and shell invocations.
  217.  
  218. D=/
  219. EXP=./
  220. SHELL=/bin/sh
  221. SH=$(SHELL)
  222. SHP=$(SH) $(EXP)
  223.  
  224. # Define the arguments for genconf.
  225.  
  226. CONFILES=-p "%s&s&&" -pl "&-l%s&s&&" -pL "&-L%s&s&&" -ol ld.tr
  227.  
  228. # Build the VMS MODULES.LIS file on a Unix system.
  229. # (Don't let this become the default target, though.)
  230.  
  231. unixdefault: default
  232.  
  233. modules.lis: $(MAKEFILE) genconf$(LXE) devs.tr
  234.     $(EXP)genconf @devs.tr -pue "%s" -o modules.lis
  235.  
  236. # Define the compilation rules and flags.
  237.  
  238. CCFLAGS=$(GENOPT) $(CFLAGS)
  239.  
  240. .c.o: $(AK)
  241.     $(CCC) $*.c
  242.  
  243. CCAUX=$(LCC)
  244. CCCF=$(CCC)
  245. CCD=$(CCC)
  246. CCINT=$(CCC)
  247. #    Copyright (C) 1989, 1992, 1993, 1994 Aladdin Enterprises.  All rights reserved.
  248. # This file is part of Aladdin Ghostscript.
  249. # Aladdin Ghostscript is distributed with NO WARRANTY OF ANY KIND.  No author
  250. # or distributor accepts any responsibility for the consequences of using it,
  251. # or for whether it serves any particular purpose or works at all, unless he
  252. # or she says so in writing.  Refer to the Aladdin Ghostscript Free Public
  253. # License (the "License") for full details.
  254. # Every copy of Aladdin Ghostscript must include a copy of the License,
  255. # normally in a plain ASCII text file named PUBLIC.  The License grants you
  256. # the right to copy, modify and redistribute Aladdin Ghostscript, but only
  257. # under certain conditions described in the License.  Among other things, the
  258. # License requires that the copyright notice and this notice be preserved on
  259. # all copies.
  260.  
  261. # Generic makefile, common to all platforms.
  262. # The platform-specific makefiles `include' this file.
  263. # They define the following symbols:
  264. #    GS - the name of the executable (without the extension, if any).
  265. #    GS_LIB_DEFAULT - the default directory/ies for searching for the
  266. #        initialization and font files at run time.
  267. #    GS_DOCDIR - the directory where documentation will be available
  268. #         at run time.
  269. #    DEVICE_DEVS - the devices to include in the executable.
  270. #        See devs.mak for details.
  271. #    DEVICE_DEVS1...DEVICE_DEVS9 - additional devices, if the definition of
  272. #        DEVICE_DEVS doesn't fit on one line.
  273. #        See devs.mak for details.
  274. #    FEATURE_DEVS - what features to include in the executable.
  275. #        Normally this is one of:
  276. #            level1 - a standard Level 1 PostScript language
  277. #            interpreter.
  278. #            level2 - a standard Level 2 PostScript language
  279. #            interpreter.
  280. #        The remaining features are of interest primarily to developers
  281. #        who want to "mix and match" features to create custom
  282. #        configurations:
  283. #            dps - (partial) support for Display PostScript extensions:
  284. #            see language.doc for details.
  285. #            btoken - support for binary token encodings.
  286. #            Included automatically in the dps and level2 features.
  287. #            color - support for the Level 1 CMYK color extensions.
  288. #            Included automatically in the dps and level2 features.
  289. #            compfont - support for composite (type 0) fonts.
  290. #            Included automatically in the level2 feature.
  291. #            dct - support for DCTEncode/Decode filters.
  292. #            Included automatically in the level2 feature.
  293. #            filter - support for Level 2 filters (other than eexec,
  294. #            ASCIIHexEncode/Decode, NullEncode, PFBDecode,
  295. #            RLEncode/Decode, and SubFileDecode, which are
  296. #            always included, and DCTEncode/Decode,
  297. #            which are separate).
  298. #            Included automatically in the level2 feature.
  299. #            type1 - support for Type 1 fonts and eexec;
  300. #            normally included automatically in all configurations.
  301. #            ccfonts - precompile fonts into C, and link them
  302. #            with the executable.  In the standard makefiles,
  303. #            this is only implemented for a very few fonts:
  304. #            see fonts.doc for details.
  305. #            ccinit - precompile the initialization files into
  306. #            C data, and link them with the executable.
  307. # It is very unlikely that anyone would want to edit the remaining
  308. #   symbols, but we describe them here for completeness:
  309. #    GS_INIT - the name of the initialization file for the interpreter,
  310. #        normally gs_init.ps.
  311. #    PLATFORM - a "device" name for the platform, so that platforms can
  312. #        add various kinds of resources like devices and features.
  313. #    CMD - the suffix for shell command files (e.g., null or .bat).
  314. #        (This is only needed in a few places.)
  315. #    D - the directory separator character (\ for MS-DOS, / for Unix).
  316. #    O - the string for specifying the output file from the C compiler
  317. #        (-o for MS-DOS, -o ./ for Unix).
  318. #    OBJ - the extension for relocatable object files (e.g., o or obj).
  319. #    XE - the extension for executable files (e.g., null or .exe).
  320. #    BEGINFILES - the list of files that `make begin' should delete.
  321. #    CCAUX - the C invocation for auxiliary programs (ansi2knr, echogs,
  322. #        genarch, genconf).
  323. #    CCBEGIN - the compilation command for `make begin', normally
  324. #        $(CCC) *.c.
  325. #    CCC - the C invocation for normal compilation.
  326. #    CCD - the C invocation for files that store into frame buffers or
  327. #        device registers.  Needed because some optimizing compilers
  328. #        will eliminate necessary stores.
  329. #    CCCF - the C invocation for compiled fonts and other large,
  330. #        self-contained data modules.  Needed because MS-DOS
  331. #        requires using the 'huge' memory model for these.
  332. #    CCINT - the C invocation for compiling the main interpreter module,
  333. #        normally the same as CCC: this is needed because the
  334. #        Borland compiler generates *worse* code for this module
  335. #        (but only this module) when optimization (-O) is turned on.
  336. #    AK - if source files must be converted from ANSI to K&R syntax,
  337. #        this is ansi2knr$(XE); if not, it is null.
  338. #        If a particular platform requires other utility programs
  339. #        to be built, AK must include them too.
  340. #    SHP - the prefix for invoking a shell script in the current directory
  341. #        (null for MS-DOS, $(SH) ./ for Unix).
  342. #    EXPP, EXP - the prefix for invoking an executable program in the
  343. #        current directory (null for MS-DOS, ./ for Unix).
  344. #    SH - the shell for scripts (null on MS-DOS, sh on Unix).
  345. #    CONFILES - the arguments for genconf to generate the appropriate
  346. #        linker control files (various).
  347. # The platform-specific makefiles must also include rules for creating
  348. # certain dynamically generated files:
  349. #    gconfig_.h - this indicates the presence or absence of
  350. #        certain system header files that are located in different
  351. #        places on different systems.  (It could be generated by
  352. #        the GNU `configure' program.)
  353.  
  354. all default: $(GS)$(XE)
  355.  
  356. distclean realclean: clean
  357.     rm -f makefile
  358.  
  359. clean mostlyclean:
  360.     rm -f *.$(OBJ) *.a core gmon.out
  361.     rm -f *.dev *.d_* arch.h devs.tr gconfig*.h j*.h o*.tr l*.tr
  362.     rm -f t _temp_* _temp_*.* *.map *.sym
  363.     rm -f ansi2knr$(LXE) echogs$(LXE) genarch$(LXE) genconf$(LXE)
  364.     rm -f $(GS)$(XE) $(BEGINFILES)
  365.  
  366. # A rule to do a quick and dirty compilation attempt when first installing
  367. # the interpreter.  Many of the compilations will fail:
  368. # follow this with 'make'.
  369.  
  370. begin:
  371.     rm -f arch.h genarch$(LXE) $(GS)$(XE) $(BEGINFILES)
  372.     make arch.h
  373.     - $(CCBEGIN)
  374.     rm -f gconfig.$(OBJ) gdev*.$(OBJ) gp_*.$(OBJ) gsmisc.$(OBJ) gsutil.$(OBJ)
  375.     rm -f iccfont.$(OBJ) iinit.$(OBJ) interp.$(OBJ) ziodev.$(OBJ)
  376.  
  377. # Auxiliary programs
  378.  
  379. arch.h: genarch$(LXE)
  380.     $(EXPP) $(EXP)genarch arch.h
  381.  
  382. # Macros for constructing the *.dev files that describe features and
  383. # devices.  We may replace these with echogs variants someday....
  384. SETDEV=$(SHP)gssetdev$(CMD)
  385. SETMOD=$(SHP)gssetmod$(CMD)
  386. ADDMOD=$(SHP)gsaddmod$(CMD)
  387.  
  388. # Define the subdirectory containing the IJG JPEG code.  This seems
  389. # a little out of place here, but we can't think of a better place.
  390. JPEGSRC=jpeg
  391.  
  392. # -------------------------------- Library -------------------------------- #
  393.  
  394. # We want a definition of USE_FPU that works regardless of whether
  395. # FPU_TYPE is actually defined or not.
  396. # We can't use the definition that we would like:
  397. #    USE_FPU=($(FPU_TYPE)0/10)
  398. # because some compilers interpret the `/' as introducing a switch.
  399. # Instead, we must define
  400. USE_FPU=$(FPU_TYPE)0
  401. # which is only usable for <0, =0, and >0 testing.
  402.  
  403. # Define the inter-dependencies of the .h files.
  404. # Since not all versions of `make' defer expansion of macros,
  405. # we must list these in bottom-to-top order.
  406.  
  407. # Generic files
  408.  
  409. arch_h=arch.h
  410. stdpre_h=stdpre.h
  411. std_h=std.h $(arch_h) $(stdpre_h)
  412.  
  413. # Platform interfaces
  414.  
  415. gp_h=gp.h
  416. gpcheck_h=gpcheck.h
  417.  
  418. # C library interfaces
  419.  
  420. # Because of variations in the "standard" header files between systems, and
  421. # because we must include std.h before any file that includes sys/types.h,
  422. # we define local include files named *_.h to substitute for <*.h>.
  423.  
  424. # gconfig_.h is generated dynamically.
  425. gconfig__h=gconfig_.h
  426. vmsmath_h=vmsmath.h
  427.  
  428. dos__h=dos_.h
  429. ctype__h=ctype_.h $(std_h)
  430. dirent__h=dirent_.h $(std_h) $(gconfig__h)
  431. errno__h=errno_.h
  432. malloc__h=malloc_.h $(std_h)
  433. math__h=math_.h $(std_h) $(vmsmath_h)
  434. memory__h=memory_.h $(std_h)
  435. stat__h=stat_.h $(std_h)
  436. stdio__h=stdio_.h $(std_h)
  437. string__h=string_.h $(std_h)
  438. time__h=time_.h $(std_h) $(gconfig__h)
  439. windows__h=windows_.h
  440.  
  441. # Miscellaneous
  442.  
  443. gconfig_h=gconfig.h
  444. gdebug_h=gdebug.h
  445. gserror_h=gserror.h
  446. gserrors_h=gserrors.h
  447. gsexit_h=gsexit.h
  448. gsio_h=gsio.h
  449. gsmemory_h=gsmemory.h
  450. gsrefct_h=gsrefct.h
  451. gsstruct_h=gsstruct.h
  452. gstypes_h=gstypes.h
  453. gx_h=gx.h $(stdio__h) $(gdebug_h) $(gserror_h) $(gsio_h) $(gsmemory_h) $(gstypes_h)
  454.  
  455. GX=$(AK) $(gx_h)
  456. GXERR=$(GX) $(gserrors_h)
  457.  
  458. ###### Low-level facilities and utilities
  459.  
  460. ### Include files
  461.  
  462. gsccode_h=gsccode.h
  463. gsccolor_h=gsccolor.h $(gsstruct_h)
  464. gschar_h=gschar.h $(gsccode_h)
  465. gscie_h=gscie.h $(gsrefct_h)
  466. gscolor_h=gscolor.h
  467. gscolor1_h=gscolor.h
  468. gscoord_h=gscoord.h
  469. gsdevice_h=gsdevice.h
  470. gsfont_h=gsfont.h
  471. gsht_h=gsht.h
  472. gsimage_h=gsimage.h
  473. gsjconf_h=gsjconf.h $(std_h)
  474. gsline_h=gsline.h
  475. gsmatrix_h=gsmatrix.h
  476. gspaint_h=gspaint.h
  477. gsparam_h=gsparam.h
  478. gspath_h=gspath.h
  479. gspath2_h=gspath2.h
  480. gsstate_h=gsstate.h $(gscolor_h) $(gsdevice_h) $(gsht_h) $(gsline_h)
  481. gsuid_h=gsuid.h
  482. gsutil_h=gsutil.h
  483. gsxfont_h=gsxfont.h
  484. # Out of order
  485. gscolor2_h=gscolor2.h $(gsccolor_h) $(gsuid_h)
  486. gscspace_h=gscspace.h $(gsccolor_h) $(gsstruct_h)
  487.  
  488. gxarith_h=gxarith.h
  489. gxbitmap_h=gxbitmap.h
  490. gxchar_h=gxchar.h $(gschar_h)
  491. gxclist_h=gxclist.h
  492. # gxcldev is out of order because it includes gxclist.
  493. gxcldev_h=gxcldev.h $(gxclist_h)
  494. gxclip2_h=gxclip2.h
  495. gxcolor2_h=gxcolor2.h $(gscolor2_h) $(gsrefct_h) $(gxbitmap_h)
  496. gxcoord_h=gxcoord.h $(gscoord_h)
  497. gxcpath_h=gxcpath.h
  498. gxdcolor_h=gxdcolor.h $(gsrefct_h) $(gsstruct_h) $(gxbitmap_h)
  499. gxdevice_h=gxdevice.h $(gsmatrix_h) $(gsxfont_h) $(gxbitmap_h) $(gxdcolor_h)
  500. gxdevmem_h=gxdevmem.h
  501. gxdither_h=gxdither.h
  502. gxfarith_h=gxfarith.h $(gxarith_h)
  503. gxfcache_h=gxfcache.h $(gsuid_h) $(gsxfont_h)
  504. gxfixed_h=gxfixed.h
  505. gxfont_h=gxfont.h $(gsfont_h) $(gsuid_h) $(gsstruct_h)
  506. gxfont0_h=gxfont0.h
  507. gxfrac_h=gxfrac.h
  508. gxht_h=gxht.h $(gsht_h)
  509. gximage_h=gximage.h $(gscspace_h) $(gsimage_h)
  510. gxiodev_h=gxiodev.h $(stat__h)
  511. gxlum_h=gxlum.h
  512. gxmatrix_h=gxmatrix.h $(gsmatrix_h)
  513. gxpaint_h=gxpaint.h
  514. gxpath_h=gxpath.h $(gspath_h)
  515. gxpcolor_h=gxpcolor.h
  516. gxxfont_h=gxxfont.h $(gsccode_h) $(gsmatrix_h) $(gsuid_h) $(gsxfont_h)
  517. # The following are out of order because they include other files.
  518. gxdcconv_h=gxdcconv.h $(gxfrac_h) $(gsccolor_h)
  519. gxfmap_h=gxfmap.h $(gsrefct_h) $(gxfrac_h)
  520. gxcmap_h=gxcmap.h $(gxfmap_h)
  521.  
  522. gzdraw_h=gzdraw.h
  523. gzht_h=gzht.h $(gxht_h)
  524. gzline_h=gzline.h $(gsline_h)
  525. gzpath_h=gzpath.h $(gsstruct_h) $(gxpath_h)
  526. gzstate_h=gzstate.h $(gsstate_h) $(gxdcolor_h) $(gxfixed_h) $(gxmatrix_h) $(gxdevice_h)
  527.  
  528. ### Executable code
  529.  
  530. gsmemory.$(OBJ): gsmemory.c $(GX) \
  531.   $(gsrefct_h) $(gsstruct_h)
  532.  
  533. gsmisc.$(OBJ): gsmisc.c $(GX) $(MAKEFILE) \
  534.   $(errno__h) $(malloc__h) $(memory__h) $(gxfixed_h)
  535.     $(CCC) -DUSE_ASM=0$(USE_ASM) -DUSE_FPU=$(USE_FPU) gsmisc.c
  536.  
  537. gsutil.$(OBJ): gsutil.c $(AK) $(MAKEFILE) \
  538.   $(std_h) $(gsuid_h) $(gsutil_h)
  539.     $(CCC) -DUSE_ASM=0$(USE_ASM) -DUSE_FPU=$(USE_FPU) gsutil.c
  540.  
  541. gxacpath.$(OBJ): gxacpath.c $(GXERR) \
  542.   $(gsstruct_h) $(gxdevice_h) $(gxcpath_h) $(gxfixed_h) $(gxpaint_h) $(gzpath_h)
  543.  
  544. gxccache.$(OBJ): gxccache.c $(GXERR) $(gpcheck_h) \
  545.   $(gscspace_h) $(gsimage_h) $(gsstruct_h) \
  546.   $(gxchar_h) $(gxcpath_h) $(gxdevmem_h) $(gxfcache_h) \
  547.   $(gxfixed_h) $(gxfont_h) $(gxmatrix_h) $(gxxfont_h) \
  548.   $(gzstate_h) $(gzpath_h)
  549.  
  550. gxccman.$(OBJ): gxccman.c $(GXERR) $(gpcheck_h) \
  551.   $(gsstruct_h) $(gsutil_h) $(gxfixed_h) $(gxmatrix_h) \
  552.   $(gxdevmem_h) $(gxfont_h) $(gxfcache_h) $(gxchar_h) \
  553.   $(gxxfont_h) $(gzstate_h) $(gzpath_h)
  554.  
  555. gxclist.$(OBJ): gxclist.c $(GXERR) $(gpcheck_h) \
  556.   $(gsmatrix_h) $(gxbitmap_h) $(gxcldev_h) $(gxdevice_h) $(gxdevmem_h) \
  557.   $(srlx_h) $(strimpl_h)
  558.  
  559. gxclread.$(OBJ): gxclread.c $(GXERR) $(gpcheck_h) \
  560.   $(gsmatrix_h) $(gxbitmap_h) $(gxcldev_h) $(gxdevice_h) $(gxdevmem_h) \
  561.   $(srlx_h) $(strimpl_h)
  562.  
  563. gxcht.$(OBJ): gxcht.c $(GXERR) \
  564.   $(gxcmap_h) $(gxdevice_h) $(gxfixed_h) $(gxmatrix_h) $(gzht_h) $(gzstate_h)
  565.  
  566. gxcmap.$(OBJ): gxcmap.c $(GXERR) \
  567.   $(gsccolor_h) $(gscspace_h) \
  568.   $(gxcmap_h) $(gxdcconv_h) $(gxdevice_h) $(gxdither_h) \
  569.   $(gxfarith_h) $(gxfrac_h) $(gxlum_h) $(gzstate_h)
  570.     $(CCC) -DUSE_FPU=$(USE_FPU) gxcmap.c
  571.  
  572. gxcpath.$(OBJ): gxcpath.c $(GXERR) \
  573.   $(gsstruct_h) $(gxdevice_h) $(gxfixed_h) $(gzpath_h) $(gxcpath_h)
  574.  
  575. gxdcconv.$(OBJ): gxdcconv.c $(GX) $(MAKEFILE) \
  576.   $(gxcmap_h) $(gxdcconv_h) $(gxdcolor_h) $(gxdevice_h) \
  577.   $(gxfarith_h) $(gxlum_h) $(gzstate_h)
  578.     $(CCC) -DUSE_FPU=$(USE_FPU) gxdcconv.c
  579.  
  580. gxdither.$(OBJ): gxdither.c $(GX) \
  581.   $(gxcmap_h) $(gxdither_h) $(gxfixed_h) $(gxlum_h) $(gxmatrix_h) \
  582.   $(gzstate_h) $(gzht_h)
  583.  
  584. gxdraw.$(OBJ): gxdraw.c $(GXERR) $(gpcheck_h) \
  585.   $(gxfixed_h) $(gxmatrix_h) $(gxbitmap_h) $(gzdraw_h) $(gzht_h) $(gzstate_h)
  586.  
  587. gxfill.$(OBJ): gxfill.c $(GXERR) \
  588.   $(gsstruct_h) $(gxcpath_h) $(gxdevice_h) $(gxfixed_h) $(gxmatrix_h) \
  589.   $(gzdraw_h) $(gzpath_h) $(gzstate_h)
  590.  
  591. gxht.$(OBJ): gxht.c $(GXERR) \
  592.   $(gsstruct_h) $(gsutil_h) $(gxfixed_h) $(gxdevice_h) $(gzstate_h) $(gzht_h)
  593.  
  594. gxpath.$(OBJ): gxpath.c $(GXERR) \
  595.   $(gsstruct_h) $(gxfixed_h) $(gzpath_h)
  596.  
  597. gxpath2.$(OBJ): gxpath2.c $(GXERR) \
  598.   $(gxfixed_h) $(gxarith_h) $(gzpath_h)
  599.  
  600. gxpcopy.$(OBJ): gxpcopy.c $(GXERR) \
  601.   $(gsmatrix_h) $(gscoord_h) $(gxfixed_h) $(gxarith_h) $(gzline_h) $(gzpath_h)
  602.  
  603. gxstroke.$(OBJ): gxstroke.c $(GXERR) $(gpcheck_h) \
  604.   $(gscoord_h) $(gxfixed_h) $(gxarith_h) $(gxmatrix_h) $(gxpaint_h) \
  605.   $(gzdraw_h) $(gzline_h) $(gzpath_h) $(gzstate_h)
  606.  
  607. ###### High-level facilities
  608.  
  609. gschar.$(OBJ): gschar.c $(GXERR) \
  610.   $(gsstruct_h) \
  611.   $(gxfixed_h) $(gxarith_h) $(gxmatrix_h) $(gxcoord_h) $(gxdevmem_h) \
  612.   $(gxfont_h) $(gxfont0_h) $(gxchar_h) $(gxfcache_h) $(gzpath_h) $(gzstate_h)
  613.  
  614. gscolor.$(OBJ): gscolor.c $(GXERR) \
  615.   $(gsccolor_h) $(gscspace_h) $(gsstruct_h) \
  616.   $(gxcmap_h) $(gxdcconv_h) $(gxdevice_h) \
  617.   $(gzstate_h)
  618.  
  619. gscoord.$(OBJ): gscoord.c $(GXERR) $(MAKEFILE) \
  620.   $(gsccode_h) $(gxcoord_h) $(gxfarith_h) $(gxfixed_h) $(gxfont_h) \
  621.   $(gxmatrix_h) $(gxpath_h) $(gzstate_h)
  622.     $(CCC) -DUSE_FPU=$(USE_FPU) gscoord.c
  623.  
  624. gsdevice.$(OBJ): gsdevice.c $(GXERR) \
  625.   $(gscoord_h) $(gsmatrix_h) $(gspaint_h) $(gsparam_h) $(gspath_h) $(gsstruct_h) \
  626.   $(gxarith_h) $(gxbitmap_h) $(gxcmap_h) $(gxdevmem_h) $(gzstate_h)
  627.  
  628. gsdparam.$(OBJ): gsdparam.c $(GXERR) \
  629.   $(gsparam_h) $(gxdevice_h) $(gxfixed_h)
  630.  
  631. gsfile.$(OBJ): gsfile.c $(GXERR) \
  632.   $(gsmatrix_h) $(gxdevice_h) $(gxdevmem_h)
  633.  
  634. gsfont.$(OBJ): gsfont.c $(GXERR) \
  635.   $(gsstruct_h) \
  636.   $(gxdevice_h) $(gxfixed_h) $(gxmatrix_h) $(gxfont_h) $(gxfcache_h) \
  637.   $(gzstate_h)
  638.  
  639. gsht.$(OBJ): gsht.c $(GXERR) \
  640.   $(gsstruct_h) $(gxdevice_h) $(gzht_h) $(gzstate_h)
  641.  
  642. gsht1.$(OBJ): gsht1.c $(GXERR) \
  643.   $(gsstruct_h) $(gxdevice_h) $(gzht_h) $(gzstate_h)
  644.  
  645. gsimage.$(OBJ): gsimage.c $(GXERR) $(gpcheck_h) \
  646.   $(gsccolor_h) $(gspaint_h) $(gsstruct_h) \
  647.   $(gxfixed_h) $(gxfrac_h) $(gxarith_h) $(gxmatrix_h) \
  648.   $(gxdevice_h) $(gzpath_h) $(gzstate_h) \
  649.   $(gxcpath_h) $(gxdevmem_h) $(gximage_h)
  650.  
  651. gsimage1.$(OBJ): gsimage1.c $(GXERR) $(gpcheck_h) \
  652.   $(gxfixed_h) $(gxarith_h) $(gxmatrix_h) \
  653.   $(gsccolor_h) $(gscspace_h) $(gspaint_h) \
  654.   $(gzdraw_h) $(gzht_h) $(gzpath_h) $(gzstate_h) \
  655.   $(gxcmap_h) $(gxcpath_h) $(gxdevmem_h) $(gximage_h)
  656.  
  657. gsimage2.$(OBJ): gsimage2.c $(GXERR) $(gpcheck_h) \
  658.   $(gxfixed_h) $(gxfrac_h) $(gxarith_h) $(gxmatrix_h) \
  659.   $(gsccolor_h) $(gscspace_h) $(gspaint_h) \
  660.   $(gzdraw_h) $(gzpath_h) $(gzstate_h) \
  661.   $(gxcmap_h) $(gxcpath_h) $(gxdevmem_h) $(gximage_h)
  662.  
  663. gsimpath.$(OBJ): gsimpath.c $(GXERR) \
  664.   $(gsmatrix_h) $(gsstate_h) $(gspath_h)
  665.  
  666. gsiodev.$(OBJ): gsiodev.c $(GXERR) $(errno__h) $(string__h) \
  667.   $(gp_h) $(gsparam_h) $(gxiodev_h)
  668.  
  669. gsline.$(OBJ): gsline.c $(GXERR) \
  670.   $(gxfixed_h) $(gxmatrix_h) $(gzstate_h) $(gzline_h)
  671.  
  672. gsmatrix.$(OBJ): gsmatrix.c $(GXERR) $(MAKEFILE) \
  673.   $(gxfarith_h) $(gxfixed_h) $(gxmatrix_h)
  674.     $(CCC) -DUSE_FPU=$(USE_FPU) gsmatrix.c
  675.  
  676. gspaint.$(OBJ): gspaint.c $(GXERR) $(gpcheck_h) \
  677.   $(gxfixed_h) $(gxmatrix_h) $(gspaint_h) $(gxpaint_h) \
  678.   $(gzpath_h) $(gzstate_h) $(gxcpath_h) $(gxdevmem_h) $(gximage_h)
  679.  
  680. gspath.$(OBJ): gspath.c $(GXERR) \
  681.   $(gscoord_h) $(gxfixed_h) $(gxmatrix_h) $(gxpath_h) $(gzstate_h)
  682.  
  683. gspath2.$(OBJ): gspath2.c $(GXERR) \
  684.   $(gspath_h) $(gsstruct_h) $(gxfixed_h) $(gxmatrix_h) \
  685.   $(gzstate_h) $(gzpath_h)
  686.  
  687. gsstate.$(OBJ): gsstate.c $(GXERR) \
  688.   $(gscie_h) $(gscolor2_h) $(gscoord_h) $(gscspace_h) $(gsstruct_h) \
  689.   $(gxcmap_h) \
  690.   $(gzstate_h) $(gzht_h) $(gzline_h) $(gzpath_h)
  691.  
  692. ###### The internal devices
  693.  
  694. gdevmem_h=gdevmem.h
  695.  
  696. gdevmem1.$(OBJ): gdevmem1.c $(AK) \
  697.   $(gx_h) $(gserrors_h) $(gsstruct_h) $(gxdevice_h) $(gxdevmem_h) $(gdevmem_h)
  698.  
  699. gdevmem2.$(OBJ): gdevmem2.c $(AK) \
  700.   $(gx_h) $(gxdevice_h) $(gxdevmem_h) $(gdevmem_h)
  701.  
  702. gdevmem3.$(OBJ): gdevmem3.c $(AK) \
  703.   $(gx_h) $(gxdevice_h) $(gxdevmem_h) $(gdevmem_h)
  704.  
  705. gdevmem4.$(OBJ): gdevmem4.c $(AK) \
  706.   $(gx_h) $(gxdevice_h) $(gxdevmem_h) $(gdevmem_h)
  707.  
  708. ###### Files dependent on the installed devices, features, and platform.
  709. # Generating gconfig.h also generates o*.tr and l*.tr.
  710.  
  711. # gconfig.h shouldn't have to depend on DEVS_ALL, but that would
  712. # involve rewriting gsconfig to only save the device name, not the
  713. # contents of the <device>.DEV files.
  714. # We have to put gslib.dev last in the list because of problems
  715. # with the Unix linker when gslib is really a library.
  716.  
  717. DEVS_ALL=gs.dev $(FEATURE_DEVS) $(PLATFORM).dev \
  718.   $(DEVICE_DEVS) $(DEVICE_DEVS1) \
  719.   $(DEVICE_DEVS2) $(DEVICE_DEVS3) $(DEVICE_DEVS4) $(DEVICE_DEVS5) \
  720.   $(DEVICE_DEVS6) $(DEVICE_DEVS7) $(DEVICE_DEVS8) $(DEVICE_DEVS9) \
  721.   gslib.dev
  722.  
  723. devs.tr: devs.mak $(MAKEFILE) echogs$(LXE) $(DEVS_ALL)
  724.     $(EXP)echogs -w devs.tr - gs.dev $(PLATFORM).dev
  725.     $(EXP)echogs -a devs.tr - $(FEATURE_DEVS)
  726.     $(EXP)echogs -a devs.tr - $(DEVICE_DEVS)
  727.     $(EXP)echogs -a devs.tr - $(DEVICE_DEVS1)
  728.     $(EXP)echogs -a devs.tr - $(DEVICE_DEVS2)
  729.     $(EXP)echogs -a devs.tr - $(DEVICE_DEVS3)
  730.     $(EXP)echogs -a devs.tr - $(DEVICE_DEVS4)
  731.     $(EXP)echogs -a devs.tr - $(DEVICE_DEVS5)
  732.     $(EXP)echogs -a devs.tr - $(DEVICE_DEVS6)
  733.     $(EXP)echogs -a devs.tr - $(DEVICE_DEVS7)
  734.     $(EXP)echogs -a devs.tr - $(DEVICE_DEVS8)
  735.     $(EXP)echogs -a devs.tr - $(DEVICE_DEVS9)
  736.     $(EXP)echogs -a devs.tr - gslib.dev
  737.  
  738. # GCONFIG_EXTRAS can be set on the command line.
  739. # Note that it consists of arguments for echogs, i.e.,
  740. # it isn't just literal text.
  741.  
  742. gconfig.h obj.tr objw.tr ld.tr lib.tr: \
  743.   $(MAKEFILE) genconf$(LXE) echogs$(LXE) devs.tr
  744.     $(EXP)genconf @devs.tr -h gconfig.h $(CONFILES)
  745.     $(EXP)echogs -a gconfig.h -x 23 define GS_LIB_DEFAULT -x 2022 $(GS_LIB_DEFAULT) -x 22
  746.     
  747.     $(EXP)echogs -a gconfig.h -x 23 define GS_DOCDIR -x 2022 $(GS_DOCDIR) -x 22
  748.     
  749.     $(EXP)echogs -a gconfig.h -x 23 define GS_INIT -x 2022 $(GS_INIT) -x 22
  750.     $(EXP)echogs -a gconfig.h $(GCONFIG_EXTRAS)
  751.  
  752. gconfig.$(OBJ): gconfig.c $(AK) $(gconfig_h) $(MAKEFILE)
  753.  
  754. # Create a pseudo-"feature" for the entire (Level 1 base) library.
  755.  
  756. LIB1=gschar.$(OBJ) gscolor.$(OBJ) gscoord.$(OBJ) gsdevice.$(OBJ) gsdparam.$(OBJ)
  757. LIB2=gsfile.$(OBJ) gsfont.$(OBJ) gsht.$(OBJ) gsht1.$(OBJ)
  758. LIB3=gsimage.$(OBJ) gsimage1.$(OBJ) gsimage2.$(OBJ) gsimpath.$(OBJ)
  759. LIB4=gsiodev.$(OBJ) gsline.$(OBJ) gsmatrix.$(OBJ) gsmemory.$(OBJ) gsmisc.$(OBJ)
  760. LIB5=gspaint.$(OBJ) gspath.$(OBJ) gspath2.$(OBJ) gsstate.$(OBJ)
  761. LIB6=gsutil.$(OBJ) gxacpath.$(OBJ) gxccache.$(OBJ) gxccman.$(OBJ)
  762. LIB7=gxcht.$(OBJ) gxclist.$(OBJ) gxclread.$(OBJ) gxcmap.$(OBJ) gxcpath.$(OBJ)
  763. LIB8=gxdcconv.$(OBJ) gxdither.$(OBJ) gxdraw.$(OBJ) gxfill.$(OBJ)
  764. LIB9=gxht.$(OBJ) gxpath.$(OBJ) gxpath2.$(OBJ) gxpcopy.$(OBJ) gxstroke.$(OBJ)
  765. LIB10=gdevmem1.$(OBJ) gdevmem2.$(OBJ) gdevmem3.$(OBJ) gdevmem4.$(OBJ)
  766. LIB_ALL=$(LIB1) $(LIB2) $(LIB3) $(LIB4) $(LIB5) $(LIB6) $(LIB7) $(LIB8) \
  767.   $(LIB9) $(LIB10)
  768. gslib.dev: gs.mak echogs$(LXE) $(LIB_ALL)
  769.     $(EXP)echogs -w gslib.dev
  770.     $(EXP)echogs -a gslib.dev $(LIB1)
  771.     $(EXP)echogs -a gslib.dev $(LIB2)
  772.     $(EXP)echogs -a gslib.dev $(LIB3)
  773.     $(EXP)echogs -a gslib.dev $(LIB4)
  774.     $(EXP)echogs -a gslib.dev $(LIB5)
  775.     $(EXP)echogs -a gslib.dev $(LIB6)
  776.     $(EXP)echogs -a gslib.dev $(LIB7)
  777.     $(EXP)echogs -a gslib.dev $(LIB8)
  778.     $(EXP)echogs -a gslib.dev $(LIB9)
  779.     $(EXP)echogs -a gslib.dev $(LIB10)
  780.  
  781. # ------------------------------ Interpreter ------------------------------ #
  782.  
  783. ###### Include files
  784.  
  785. errors_h=errors.h
  786. files_h=files.h
  787. fname_h=fname.h
  788. ichar_h=ichar.h
  789. idebug_h=idebug.h
  790. idict_h=idict.h
  791. idparam_h=idparam.h
  792. ifont_h=ifont.h $(gsstruct_h)
  793. igc_h=igc.h
  794. igstate_h=igstate.h $(gsstate_h) $(gsstruct_h)
  795. ilevel_h=ilevel.h
  796. imemory_h=imemory.h
  797. iname_h=iname.h
  798. interp_h=interp.h
  799. ipacked_h=ipacked.h
  800. iparray_h=iparray.h
  801. iparam_h=iparam.h $(gsparam_h)
  802. iref_h=iref.h
  803. isave_h=isave.h
  804. iscan_h=iscan.h
  805. iscannum_h=iscannum.h
  806. isstate_h=isstate.h
  807. istream_h=istream.h
  808. istruct_h=istruct.h $(gsstruct_h)
  809. ivmspace_h=ivmspace.h
  810. iutil_h=iutil.h
  811. iutil2_h=iutil2.h
  812. main_h=main.h $(gsexit_h)
  813. opcheck_h=opcheck.h
  814. opdef_h=opdef.h
  815. ostack_h=ostack.h $(istack_h)
  816. overlay_h=overlay.h
  817. sbwbs_h=sbwbs.h
  818. scanchar_h=scanchar.h
  819. scommon_h=scommon.h $(gsmemory_h) $(gsstruct_h)
  820. sdct_h=sdct.h
  821. sdiffx_h=sdiffx.h
  822. sfilter_h=sfilter.h $(gstypes_h)
  823. shc_h=shc.h
  824. sjpeg_h=sjpeg.h
  825. slzwx_h=slzwx.h
  826. srlx_h=srlx.h
  827. stream_h=stream.h $(scommon_h)
  828. strimpl_h=strimpl.h $(scommon_h) $(gstypes_h) $(gsstruct_h)
  829. # Nested include files
  830. bfont_h=bfont.h $(ifont_h)
  831. dstack_h=dstack.h $(istack_h)
  832. estack_h=estack.h $(istack_h)
  833. ghost_h=ghost.h $(gx_h) $(iref_h)
  834. ialloc_h=ialloc.h $(imemory_h)
  835. iastruct_h=iastruct.h $(gxbitmap_h) $(ialloc_h)
  836. iastate_h=iastate.h $(iastruct_h) $(istruct_h)
  837. ifilter_h=ifilter.h $(istream_h) $(ivmspace_h)
  838. isproc_h=isproc.h
  839. istack_h=istack.h
  840. oper_h=oper.h $(iutil_h) $(opcheck_h) $(opdef_h) $(ostack_h)
  841. sbhc_h=sbhc.h $(shc_h)
  842. scf_h=scf.h $(shc_h)
  843. scfx_h=scfx.h $(shc_h)
  844. store_h=store.h $(ialloc_h)
  845. # Include files for optional features
  846. ibnum_h=ibnum.h
  847.  
  848. gdevprn_h=gdevprn.h $(memory__h) $(string__h) $(gx_h) \
  849.   $(gserrors_h) $(gsmatrix_h) $(gsutil_h) \
  850.   $(gxdevice_h) $(gxdevmem_h) $(gxclist_h)
  851.  
  852. ###### Utilities
  853.  
  854. GH=$(AK) $(ghost_h)
  855.  
  856. ialloc.$(OBJ): ialloc.c $(AK) $(gx_h) \
  857.   $(errors_h) $(gsstruct_h) $(gxarith_h) $(iastate_h) $(iref_h) $(store_h)
  858.  
  859. idebug.$(OBJ): idebug.c $(GH) \
  860.   $(ialloc_h) $(idebug_h) $(idict_h) $(iname_h) $(istack_h) $(iutil_h) \
  861.   $(ostack_h) $(opdef_h) $(ipacked_h) $(store_h)
  862.  
  863. idict.$(OBJ): idict.c $(GH) \
  864.   $(ialloc_h) $(errors_h) $(ivmspace_h) $(iname_h) $(ipacked_h) \
  865.   $(isave_h) $(store_h) $(iutil_h) $(idict_h) $(dstack_h)
  866.  
  867. idparam.$(OBJ): idparam.c $(GH) $(errors_h) \
  868.   $(gsmatrix_h) $(gsuid_h) \
  869.   $(idict_h) $(idparam_h) $(ilevel_h) $(imemory_h) $(iname_h) $(iutil_h) \
  870.   $(oper_h) $(store_h)
  871.  
  872. # igc.c, igcref.c, and igcstr.c should really be in the dpsand2 list,
  873. # but since all the GC enumeration and relocation routines refer to them,
  874. # it's too hard to separate them out from the Level 1 base.
  875. igc.$(OBJ): igc.c $(GH) \
  876.   $(gsstruct_h) $(gsutil_h) \
  877.   $(iastate_h) $(idict_h) $(igc_h) $(iname_h) $(isave_h) $(isstate_h) \
  878.   $(dstack_h) $(errors_h) $(estack_h) $(opdef_h) $(ostack_h) $(ipacked_h) $(store_h)
  879.  
  880. igcref.$(OBJ): igcref.c $(GH)\
  881.   $(iastate_h) $(idebug_h) $(igc_h) $(iname_h) $(ipacked_h)
  882.  
  883. igcstr.$(OBJ): igcstr.c $(GH) \
  884.   $(gsstruct_h) $(iastate_h) $(igc_h) $(isave_h) $(isstate_h)
  885.  
  886. iinit.$(OBJ): iinit.c $(GH) $(gconfig_h) \
  887.   $(gsexit_h) $(gsstruct_h) $(ialloc_h) $(idict_h) $(dstack_h) $(errors_h) \
  888.   $(ilevel_h) $(iname_h) $(interp_h) $(oper_h) $(ipacked_h) $(iparray_h) $(store_h)
  889.  
  890. iname.$(OBJ): iname.c $(GH) $(gsstruct_h) $(errors_h) $(iname_h) $(store_h)
  891.  
  892. iparam.$(OBJ): iparam.c $(GH) \
  893.   $(ialloc_h) $(idict_h) $(iname_h) $(imemory_h) $(iparam_h) $(istack_h) $(iutil_h) \
  894.   $(opcheck_h) $(store_h)
  895.  
  896. isave.$(OBJ): isave.c $(GH) \
  897.   $(errors_h) $(gsstruct_h) \
  898.   $(iastate_h) $(iname_h) $(isave_h) $(isstate_h) $(ivmspace_h) \
  899.   $(ipacked_h) $(store_h)
  900.  
  901. iscan.$(OBJ): iscan.c $(GH) $(ctype__h) \
  902.   $(ialloc_h) $(idict_h) $(dstack_h) $(errors_h) \
  903.   $(ilevel_h) $(iutil_h) $(iscan_h) $(iscannum_h) $(istruct_h) $(ivmspace_h) \
  904.   $(iname_h) $(ipacked_h) $(iparray_h) $(istream_h) $(ostack_h) $(store_h) \
  905.   $(stream_h) $(strimpl_h) $(sfilter_h) $(scanchar_h)
  906.  
  907. iscannum.$(OBJ): iscannum.c $(GH) \
  908.   $(errors_h) $(iscannum_h) $(scanchar_h) $(store_h) $(stream_h)
  909.  
  910. iscantab.$(OBJ): iscantab.c $(AK) \
  911.   $(stdpre_h) $(scommon_h) $(scanchar_h)
  912.  
  913. istack.$(OBJ): istack.c $(GH) $(memory__h) \
  914.   $(errors_h) $(gsstruct_h) $(gsutil_h) \
  915.   $(ialloc_h) $(istack_h) $(istruct_h) $(iutil_h) $(ivmspace_h) $(store_h)
  916.  
  917. iutil.$(OBJ): iutil.c $(GH) \
  918.   $(errors_h) $(idict_h) $(imemory_h) $(iutil_h) $(ivmspace_h) \
  919.   $(iname_h) $(ostack_h) $(opcheck_h) $(opdef_h) $(ipacked_h) $(store_h) \
  920.   $(gsmatrix_h) $(gsutil_h)
  921.  
  922. ### Streams
  923.  
  924. sbasic.$(OBJ): sbasic.c $(AK) $(stdio__h) $(memory__h) \
  925.   $(gdebug_h) $(gpcheck_h) $(gsmemory_h) $(gsstruct_h) $(gstypes_h) $(stream_h)
  926.  
  927. sbcp.$(OBJ): sbcp.c $(AK) $(stdio__h) \
  928.   $(sfilter_h) $(strimpl_h)
  929.  
  930. sfilter1.$(OBJ): sfilter1.c $(AK) $(stdio__h) $(memory__h) \
  931.   $(sfilter_h) $(srlx_h) $(strimpl_h)
  932.  
  933. sstring.$(OBJ): sstring.c $(AK) $(stdio__h) $(memory__h) \
  934.   $(scanchar_h) $(sfilter_h) $(strimpl_h)
  935.  
  936. stream.$(OBJ): stream.c $(AK) $(stdio__h) $(memory__h) \
  937.   $(gdebug_h) $(gpcheck_h) $(stream_h) $(strimpl_h)
  938.  
  939. ###### Operators
  940.  
  941. OP=$(GH) $(errors_h) $(oper_h)
  942.  
  943. ### Non-graphics operators
  944.  
  945. zarith.$(OBJ): zarith.c $(OP) $(store_h)
  946.  
  947. zarray.$(OBJ): zarray.c $(OP) $(ialloc_h) $(ipacked_h) $(store_h)
  948.  
  949. zcontrol.$(OBJ): zcontrol.c $(OP) $(estack_h) $(iutil_h) $(store_h)
  950.  
  951. zdict.$(OBJ): zdict.c $(OP) \
  952.   $(dstack_h) $(idict_h) $(ilevel_h) $(iname_h) $(ipacked_h) $(ivmspace_h) \
  953.   $(store_h)
  954.  
  955. zfile.$(OBJ): zfile.c $(OP) $(stat__h) $(gp_h) \
  956.   $(gsstruct_h) $(gxiodev_h) \
  957.   $(ialloc_h) $(estack_h) $(files_h) $(fname_h) $(ilevel_h) $(interp_h) $(iutil_h) \
  958.   $(isave_h) $(stream_h) $(strimpl_h) $(store_h)
  959.  
  960. zfname.$(OBJ): zfname.c $(GH) \
  961.   $(errors_h) $(fname_h) $(gxiodev_h) $(ialloc_h) $(iutil_h) $(opcheck_h) \
  962.   $(stream_h)
  963.  
  964. zfileio.$(OBJ): zfileio.c $(OP) $(gp_h) \
  965.   $(files_h) $(ifilter_h) $(store_h) $(stream_h) $(strimpl_h) \
  966.   $(gsmatrix_h) $(gxdevice_h) $(gxdevmem_h)
  967.  
  968. zfilter.$(OBJ): zfilter.c $(OP) \
  969.   $(gsstruct_h) $(files_h) $(ialloc_h) $(ifilter_h) \
  970.   $(sfilter_h) $(srlx_h) $(stream_h) $(strimpl_h)
  971.  
  972. zfproc.$(OBJ): zfproc.c $(GH) $(errors_h) $(oper_h) \
  973.   $(estack_h) $(files_h) $(gsstruct_h) $(ialloc_h) $(ifilter_h) $(istruct_h) \
  974.   $(store_h) $(stream_h) $(strimpl_h)
  975.  
  976. zgeneric.$(OBJ): zgeneric.c $(OP) \
  977.   $(idict_h) $(estack_h) $(ivmspace_h) $(iname_h) $(ipacked_h) $(store_h)
  978.  
  979. ziodev.$(OBJ): ziodev.c $(OP) $(string__h) $(gp_h) $(gpcheck_h) $(gconfig_h) \
  980.   $(gsparam_h) $(gsstruct_h) $(gxiodev_h) \
  981.   $(files_h) $(ialloc_h) $(store_h) $(stream_h)
  982.  
  983. zmath.$(OBJ): zmath.c $(OP) $(store_h)
  984.  
  985. zmisc.$(OBJ): zmisc.c $(OP) $(gp_h) $(errno__h) $(memory__h) $(string__h) \
  986.   $(ialloc_h) $(idict_h) $(dstack_h) $(iname_h) $(ivmspace_h) $(ipacked_h) $(store_h)
  987.  
  988. zpacked.$(OBJ): zpacked.c $(OP) \
  989.   $(ialloc_h) $(idict_h) $(ivmspace_h) $(iname_h) $(ipacked_h) $(iparray_h) \
  990.   $(istack_h) $(store_h)
  991.  
  992. zrelbit.$(OBJ): zrelbit.c $(OP) $(gsutil_h) $(store_h) $(idict_h)
  993.  
  994. zstack.$(OBJ): zstack.c $(OP) $(ialloc_h) $(istack_h) $(store_h)
  995.  
  996. zstring.$(OBJ): zstring.c $(OP) $(gsutil_h) \
  997.   $(ialloc_h) $(iname_h) $(ivmspace_h) $(store_h)
  998.  
  999. ztoken.$(OBJ): ztoken.c $(OP) \
  1000.   $(estack_h) $(files_h) $(gsstruct_h) $(iscan_h) \
  1001.   $(sfilter_h) $(store_h) $(stream_h) $(strimpl_h)
  1002.  
  1003. ztype.$(OBJ): ztype.c $(OP) $(gsstruct_h) \
  1004.   $(dstack_h) $(idict_h) $(igstate_h) $(imemory_h) $(iname_h) \
  1005.   $(iscannum_h) $(iutil_h) $(store_h)
  1006.  
  1007. zvmem.$(OBJ): zvmem.c $(OP) \
  1008.   $(ialloc_h) $(idict_h) $(dstack_h) $(estack_h) $(isave_h) $(igstate_h) $(store_h) \
  1009.   $(gsmatrix_h) $(gsstate_h) $(gsstruct_h)
  1010.  
  1011. ### Graphics operators
  1012.  
  1013. zchar.$(OBJ): zchar.c $(OP) \
  1014.   $(gsstruct_h) $(gxarith_h) $(gxfixed_h) $(gxmatrix_h) \
  1015.   $(gschar_h) $(gxdevice_h) $(gxfont_h) $(gzpath_h) $(gzstate_h) \
  1016.   $(ialloc_h) $(ichar_h) $(idict_h) $(ifont_h) $(estack_h) $(ilevel_h) $(iname_h) $(igstate_h) $(store_h)
  1017.  
  1018. zcolor.$(OBJ): zcolor.c $(OP) \
  1019.   $(gxfixed_h) $(gxmatrix_h) $(gzstate_h) $(gxdevice_h) $(gxcmap_h) \
  1020.   $(ialloc_h) $(estack_h) $(iutil_h) $(igstate_h) $(store_h)
  1021.  
  1022. zdevice.$(OBJ): zdevice.c $(OP) \
  1023.   $(ialloc_h) $(idict_h) $(igstate_h) $(iname_h) $(interp_h) $(iparam_h) \
  1024.   $(gsmatrix_h) $(gsstate_h) $(gxdevice_h) $(store_h)
  1025.  
  1026. zfont.$(OBJ): zfont.c $(OP) \
  1027.   $(gsmatrix_h) $(gxdevice_h) $(gxfont_h) $(gxfcache_h) \
  1028.   $(ialloc_h) $(idict_h) $(igstate_h) $(iname_h) $(isave_h) $(ivmspace_h) \
  1029.   $(bfont_h) $(store_h)
  1030.  
  1031. zfont2.$(OBJ): zfont2.c $(OP) \
  1032.   $(gsmatrix_h) $(gxdevice_h) $(gschar_h) $(gxfixed_h) $(gxfont_h) \
  1033.   $(ialloc_h) $(bfont_h) $(idict_h) $(idparam_h) $(ilevel_h) $(iname_h) $(istruct_h) \
  1034.   $(ipacked_h) $(store_h)
  1035.  
  1036. zgstate.$(OBJ): zgstate.c $(OP) \
  1037.   $(gsmatrix_h) $(ialloc_h) $(igstate_h) $(istruct_h) $(store_h)
  1038.  
  1039. zht.$(OBJ): zht.c $(OP) \
  1040.   $(gsmatrix_h) $(gsstate_h) $(gsstruct_h) $(gxdevice_h) $(gzht_h) \
  1041.   $(ialloc_h) $(estack_h) $(igstate_h) $(store_h)
  1042.  
  1043. zmatrix.$(OBJ): zmatrix.c $(OP) $(gsmatrix_h) $(igstate_h) $(gscoord_h) $(store_h)
  1044.  
  1045. zpaint.$(OBJ): zpaint.c $(OP) \
  1046.   $(ialloc_h) $(estack_h) $(ilevel_h) $(igstate_h) $(store_h) $(stream_h) \
  1047.   $(gsimage_h) $(gsmatrix_h) $(gspaint_h) $(gsstruct_h)
  1048.  
  1049. zpath.$(OBJ): zpath.c $(OP) $(gsmatrix_h) $(gspath_h) $(igstate_h) $(store_h)
  1050.  
  1051. zpath2.$(OBJ): zpath2.c $(OP) \
  1052.   $(ialloc_h) $(estack_h) $(gspath_h) $(gsstruct_h) $(igstate_h) $(store_h)
  1053.  
  1054. # Create a pseudo-"feature" for the entire (Level 1 base) interpreter.
  1055.  
  1056. INT1=ialloc.$(OBJ) idebug.$(OBJ) idict.$(OBJ) idparam.$(OBJ) igc.$(OBJ) igcref.$(OBJ)
  1057. INT2=igcstr.$(OBJ) iinit.$(OBJ) iname.$(OBJ) interp.$(OBJ) iparam.$(OBJ)
  1058. INT3=isave.$(OBJ) iscan.$(OBJ) iscannum.$(OBJ) iscantab.$(OBJ) istack.$(OBJ) iutil.$(OBJ)
  1059. INT4=sbasic.$(OBJ) sbcp.$(OBJ) sfilter1.$(OBJ) sstring.$(OBJ) stream.$(OBJ)
  1060. INT5=zarith.$(OBJ) zarray.$(OBJ) zcontrol.$(OBJ) zdict.$(OBJ)
  1061. INT6=zfile.$(OBJ) zfileio.$(OBJ) zfilter.$(OBJ) zfname.$(OBJ) zfproc.$(OBJ)
  1062. INT7=zgeneric.$(OBJ) ziodev.$(OBJ) zmath.$(OBJ) zmisc.$(OBJ) zpacked.$(OBJ)
  1063. INT8=zrelbit.$(OBJ) zstack.$(OBJ) zstring.$(OBJ) ztoken.$(OBJ) ztype.$(OBJ) zvmem.$(OBJ)
  1064. INT9=zchar.$(OBJ) zcolor.$(OBJ) zfont.$(OBJ) zfont2.$(OBJ)
  1065. INT10=zdevice.$(OBJ) zgstate.$(OBJ) zht.$(OBJ) zmatrix.$(OBJ)
  1066. INT11=zpaint.$(OBJ) zpath.$(OBJ) zpath2.$(OBJ)
  1067. INT_ALL=gsmain.$(OBJ) gconfig.$(OBJ) \
  1068.   $(INT1) $(INT2) $(INT3) $(INT4) $(INT5) $(INT6) \
  1069.   $(INT7) $(INT8) $(INT9) $(INT10) $(INT11)
  1070. gs.dev: gs.mak echogs$(LXE)
  1071.     $(EXP)echogs -w gs.dev - -obj gsmain.$(OBJ) gconfig.$(OBJ)
  1072.     $(EXP)echogs -a gs.dev $(INT1)
  1073.     $(EXP)echogs -a gs.dev $(INT2)
  1074.     $(EXP)echogs -a gs.dev $(INT3)
  1075.     $(EXP)echogs -a gs.dev $(INT4)
  1076.     $(EXP)echogs -a gs.dev $(INT5)
  1077.     $(EXP)echogs -a gs.dev $(INT6)
  1078.     $(EXP)echogs -a gs.dev $(INT7)
  1079.     $(EXP)echogs -a gs.dev $(INT8)
  1080.     $(EXP)echogs -a gs.dev $(INT9)
  1081.     $(EXP)echogs -a gs.dev $(INT10)
  1082.     $(EXP)echogs -a gs.dev $(INT11)
  1083.     $(EXP)echogs -a gs.dev - -iodev stdin stdout stderr lineedit statementedit
  1084.  
  1085. # -------------------------- Feature definitions ---------------------------- #
  1086.  
  1087. ### Standard Level 1 interpreter
  1088.  
  1089. level1.dev: gs.mak type1.dev
  1090.     $(SETMOD) level1
  1091.     $(ADDMOD) level1 -include type1
  1092.  
  1093. ### PostScript Type 1 fonts
  1094.  
  1095. type1.dev: gs.mak psf1core.dev psf1read.dev
  1096.     $(SETMOD) type1
  1097.     $(ADDMOD) type1 -include psf1core psf1read
  1098.  
  1099. # Core
  1100.  
  1101. psf1core_=gstype1.$(OBJ) gxhint1.$(OBJ) gxhint2.$(OBJ)
  1102. psf1core.dev: gs.mak $(psf1core_)
  1103.     $(SETMOD) psf1core $(psf1core_)
  1104.  
  1105. gscrypt1_h=gscrypt1.h
  1106. gstype1_h=gstype1.h
  1107. gxfont1_h=gxfont1.h
  1108. gxop1_h=gxop1.h
  1109. gxtype1_h=gxtype1.h $(gscrypt1_h) $(gstype1_h)
  1110.  
  1111. gstype1.$(OBJ): gstype1.c $(GXERR) \
  1112.   $(gsstruct_h) \
  1113.   $(gxarith_h) $(gxfixed_h) $(gxmatrix_h) $(gxchar_h) $(gxdevmem_h) \
  1114.   $(gxfont_h) $(gxfont1_h) $(gxop1_h) $(gxtype1_h) \
  1115.   $(gzstate_h) $(gzpath_h)
  1116.  
  1117. gxhint1.$(OBJ): gxhint1.c $(GXERR) \
  1118.   $(gxarith_h) $(gxfixed_h) $(gxmatrix_h) $(gxdevmem_h) $(gxchar_h) \
  1119.   $(gxfont_h) $(gxfont1_h) $(gxtype1_h) \
  1120.   $(gzstate_h)
  1121.  
  1122. gxhint2.$(OBJ): gxhint2.c $(GXERR) \
  1123.   $(gxarith_h) $(gxfixed_h) $(gxmatrix_h) $(gxdevmem_h) $(gxchar_h) \
  1124.   $(gxfont_h) $(gxfont1_h) $(gxtype1_h) $(gxop1_h) \
  1125.   $(gzstate_h)
  1126.  
  1127. # Reader
  1128.  
  1129. psf1read_=seexec.$(OBJ) zchar1.$(OBJ) zfont1.$(OBJ) zmisc1.$(OBJ)
  1130. psf1read.dev: gs.mak $(psf1read_)
  1131.     $(SETMOD) psf1read $(psf1read_)
  1132.     $(ADDMOD) psf1read -oper zchar1 zfont1 zmisc1
  1133.     $(ADDMOD) psf1read -ps gs_type1
  1134.  
  1135. comp1_h=comp1.h $(ghost_h) $(oper_h) $(gserrors_h) $(gxfixed_h) $(gxop1_h)
  1136.  
  1137. seexec.$(OBJ): seexec.c $(AK) $(stdio__h) \
  1138.   $(gscrypt1_h) $(scanchar_h) $(sfilter_h) $(strimpl_h)
  1139.  
  1140. zchar1.$(OBJ): zchar1.c $(OP) \
  1141.   $(gsstruct_h) $(gxfixed_h) $(gxmatrix_h) \
  1142.   $(gschar_h) $(gxdevice_h) $(gxfont_h) $(gxfont1_h) $(gxtype1_h) \
  1143.   $(ialloc_h) $(ichar_h) $(idict_h) $(estack_h) $(ifont_h) $(igstate_h) \
  1144.   $(store_h)
  1145.  
  1146. zfont1.$(OBJ): zfont1.c $(OP) \
  1147.   $(gsmatrix_h) $(gxdevice_h) $(gschar_h) $(gxfixed_h) $(gxfont_h) $(gxfont1_h) \
  1148.   $(bfont_h) $(ialloc_h) $(idict_h) $(idparam_h) $(store_h)
  1149.  
  1150. zmisc1.$(OBJ): zmisc1.c $(OP) \
  1151.   $(gscrypt1_h) $(ifilter_h) $(sfilter_h) $(strimpl_h)
  1152.  
  1153. ### Level 1 color extensions (CMYK color and colorimage)
  1154.  
  1155. color.dev: gs.mak cmykcore.dev cmykread.dev
  1156.     $(SETMOD) color
  1157.     $(ADDMOD) color -include cmykcore cmykread
  1158.  
  1159. # Core
  1160.  
  1161. cmykcore_=gscolor1.$(OBJ)
  1162. cmykcore.dev: gs.mak $(cmykcore_)
  1163.     $(SETMOD) cmykcore $(cmykcore_)
  1164.  
  1165. gscolor1.$(OBJ): gscolor1.c $(GXERR) \
  1166.   $(gsccolor_h) $(gscolor1_h) $(gscspace_h) $(gsstruct_h) \
  1167.   $(gxcmap_h) $(gxdcconv_h) $(gxdevice_h) \
  1168.   $(gzstate_h)
  1169.  
  1170. # Reader
  1171.  
  1172. cmykread_=zcolor1.$(OBJ)
  1173. cmykread.dev: gs.mak $(cmykread_)
  1174.     $(SETMOD) cmykread $(cmykread_)
  1175.     $(ADDMOD) cmykread -oper zcolor1
  1176.  
  1177. zcolor1.$(OBJ): zcolor1.c $(OP) \
  1178.   $(gscolor1_h) $(gscspace_h) $(gxfixed_h) $(gxmatrix_h) \
  1179.   $(gzstate_h) $(gxdevice_h) $(gxcmap_h) \
  1180.   $(ialloc_h) $(estack_h) $(iutil_h) $(igstate_h) $(store_h)
  1181.  
  1182. ### Binary tokens
  1183.  
  1184. # Reader only
  1185.  
  1186. btoken_=iscanbin.$(OBJ) zbseq.$(OBJ)
  1187. btoken.dev: gs.mak $(btoken_)
  1188.     $(SETMOD) btoken $(btoken_)
  1189.     $(ADDMOD) btoken -oper zbseq_l2
  1190.     $(ADDMOD) btoken -ps gs_btokn
  1191.  
  1192. bseq_h=bseq.h
  1193. btoken_h=btoken.h
  1194.  
  1195. iscanbin.$(OBJ): iscanbin.c $(GH) $(errors_h) \
  1196.   $(gsutil_h) $(ialloc_h) $(ibnum_h) $(idict_h) $(iname_h) \
  1197.   $(iscan_h) $(iutil_h) $(ivmspace_h) \
  1198.   $(bseq_h) $(btoken_h) $(dstack_h) $(ostack_h) \
  1199.   $(sfilter_h) $(store_h) $(stream_h) $(strimpl_h)
  1200.  
  1201. zbseq.$(OBJ): zbseq.c $(OP) \
  1202.   $(ialloc_h) $(idict_h) $(isave_h) $(sfilter_h) $(store_h) $(stream_h) $(strimpl_h) \
  1203.   $(iname_h) $(ibnum_h) $(btoken_h) $(bseq_h)
  1204.  
  1205. ### Additions common to Display PostScript and Level 2
  1206.  
  1207. dpsand2a_=gsdps1.$(OBJ) ibnum.$(OBJ) iscanbin.$(OBJ)
  1208. dpsand2b_=zbseq.$(OBJ) zchar2.$(OBJ) zdps1.$(OBJ) zupath.$(OBJ) zvmem2.$(OBJ)
  1209. dpsand2_=$(dpsand2a_) $(dpsand2b_)
  1210. # Note that zvmem2 includes both Level 1 and Level 2 operators.
  1211. dpsand2.dev: gs.mak btoken.dev color.dev $(dpsand2_)
  1212.     $(SETMOD) dpsand2
  1213.     $(ADDMOD) dpsand2 -include btoken color
  1214.     $(ADDMOD) dpsand2 -obj $(dpsand2a_)
  1215.     $(ADDMOD) dpsand2 -obj $(dpsand2b_)
  1216.     $(ADDMOD) dpsand2 -oper zvmem2
  1217.     $(ADDMOD) dpsand2 -oper igc_l2 zchar2_l2 zdps1_l2 zupath_l2
  1218.     $(ADDMOD) dpsand2 -ps gs_dps1
  1219.  
  1220. gsdps1.$(OBJ): gsdps1.c $(GXERR) \
  1221.   $(gscoord_h) $(gsmatrix_h) $(gspaint_h) $(gspath_h) $(gspath2_h) \
  1222.   $(gxfixed_h) $(gxmatrix_h) $(gzpath_h) $(gzstate_h)
  1223.  
  1224. ibnum.$(OBJ): ibnum.c $(GH) $(errors_h) $(stream_h) $(ibnum_h)
  1225.  
  1226. zchar2.$(OBJ): zchar2.c $(OP) \
  1227.   $(gschar_h) $(gsmatrix_h) $(gsstruct_h) $(gxfixed_h) $(gxfont_h) \
  1228.   $(ialloc_h) $(ichar_h) $(estack_h) $(ifont_h) $(iname_h) $(igstate_h) $(store_h) $(stream_h) $(ibnum_h)
  1229.  
  1230. zdps1.$(OBJ): zdps1.c $(OP) \
  1231.   $(gsmatrix_h) $(gspath_h) $(gspath2_h) $(gsstate_h) $(gsstruct_h) \
  1232.   $(ialloc_h) $(ivmspace_h) $(igstate_h) $(store_h) $(stream_h) $(ibnum_h)
  1233.  
  1234. zupath.$(OBJ): zupath.c $(OP) \
  1235.   $(idict_h) $(dstack_h) $(iutil_h) $(igstate_h) $(store_h) $(stream_h) $(ibnum_h) \
  1236.   $(gscoord_h) $(gsmatrix_h) $(gspaint_h) $(gspath_h) $(gsstate_h) \
  1237.   $(gxfixed_h) $(gxdevice_h) $(gxpath_h)
  1238.  
  1239. zvmem2.$(OBJ): zvmem2.c $(OP) \
  1240.   $(estack_h) $(ialloc_h) $(ivmspace_h) $(store_h)
  1241.  
  1242. ### Display PostScript
  1243. # We should include zcontext, but it isn't in good enough shape yet:
  1244. #    $(ADDMOD) dps -oper zcontext_l2
  1245.  
  1246. dps_=
  1247. dps.dev: gs.mak dpsand2.dev $(dps_)
  1248.     $(SETMOD) dps
  1249.     $(ADDMOD) dps -include dpsand2
  1250.     $(ADDMOD) dps -obj $(dps_)
  1251.  
  1252. zcontext.$(OBJ): zcontext.c $(OP) \
  1253.   $(gsstruct_h) \
  1254.   $(idict_h) $(istruct_h) $(dstack_h) $(estack_h) $(igstate_h) $(store_h)
  1255.  
  1256. ### Composite (PostScript Type 0) font support
  1257.  
  1258. compfont.dev: gs.mak psf0core.dev psf0read.dev
  1259.     $(SETMOD) compfont
  1260.     $(ADDMOD) compfont -include psf0core psf0read
  1261.  
  1262. # Core
  1263.  
  1264. psf0core_=gschar0.$(OBJ) gsfont0.$(OBJ)
  1265. psf0core.dev: gs.mak $(psf0core_)
  1266.     $(SETMOD) psf0core $(psf0core_)
  1267.  
  1268. gschar0.$(OBJ): gschar0.c $(GXERR) \
  1269.   $(gsstruct_h) $(gxfixed_h) $(gxdevice_h) $(gxdevmem_h) \
  1270.   $(gxfont_h) $(gxfont0_h) $(gxchar_h)
  1271.  
  1272. gsfont0.$(OBJ): gsfont0.c $(GXERR) \
  1273.   $(gsmatrix_h) $(gsstruct_h) $(gxfixed_h) $(gxdevmem_h) $(gxfcache_h) \
  1274.   $(gxfont_h) $(gxfont0_h) $(gxchar_h) $(gxdevice_h)
  1275.  
  1276. # Reader
  1277.  
  1278. psf0read_=zchar2.$(OBJ) zfont0.$(OBJ)
  1279. psf0read.dev: gs.mak $(psf0read_)
  1280.     $(SETMOD) psf0read $(psf0read_)
  1281.     $(ADDMOD) psf0read -oper zfont0 zchar2
  1282.     $(ADDMOD) psf0read -ps gs_type0
  1283.  
  1284. zfont0.$(OBJ): zfont0.c $(OP) \
  1285.   $(gsmatrix_h) $(gsstruct_h) $(gxdevice_h) $(gxfont_h) $(gxfont0_h) \
  1286.   $(ialloc_h) $(bfont_h) $(idict_h) $(igstate_h) $(store_h)
  1287.  
  1288. ### PostScript Level 2 additions
  1289.  
  1290. #**************** The first ADDMOD line should include dct
  1291. level2.dev: gs.mak compfont.dev dct.dev dpsand2.dev filter.dev level1.dev psl2core.dev psl2read.dev
  1292.     $(SETMOD) level2
  1293.     $(ADDMOD) level2 -include compfont dct dpsand2 filter
  1294.     $(ADDMOD) level2 -include level1 psl2core psl2read
  1295.  
  1296. # Core
  1297.  
  1298. psl2core_=gscie.$(OBJ) gscolor2.$(OBJ) gspcolor.$(OBJ) gxclip2.$(OBJ) gxpcmap.$(OBJ)
  1299. psl2core.dev: gs.mak $(psl2core_)
  1300.     $(SETMOD) psl2core $(psl2core_)
  1301.  
  1302. gscie.$(OBJ): gscie.c $(GXERR) \
  1303.   $(gscspace_h) $(gscie_h) $(gscolor2_h) $(gsmatrix_h) $(gsstruct_h) \
  1304.   $(gxarith_h) $(gzstate_h)
  1305.  
  1306. gscolor2.$(OBJ): gscolor2.c $(GXERR) \
  1307.   $(gscie_h) $(gscspace_h) \
  1308.   $(gxarith_h) $(gxcolor2_h) $(gxfixed_h) $(gxmatrix_h) \
  1309.   $(gzstate_h)
  1310.  
  1311. gspcolor.$(OBJ): gspcolor.c $(GXERR) $(math__h) \
  1312.   $(gscspace_h) $(gsstruct_h) $(gsutil_h) \
  1313.   $(gxarith_h) $(gxcolor2_h) $(gxcoord_h) $(gxclip2_h) $(gxdevice_h) $(gxdevmem_h) \
  1314.   $(gxfixed_h) $(gxmatrix_h) $(gxpath_h) $(gxpcolor_h) $(gzstate_h)
  1315.  
  1316. gxclip2.$(OBJ): gxclip2.c $(GXERR) $(memory__h) \
  1317.   $(gsstruct_h) $(gxclip2_h) $(gxdevice_h) $(gxdevmem_h)
  1318.  
  1319. gxpcmap.$(OBJ): gxpcmap.c $(GXERR) \
  1320.   $(gsstruct_h) $(gscspace_h) $(gsmatrix_h) $(gsutil_h) \
  1321.   $(gxcolor2_h) $(gxdevice_h) $(gxdevmem_h) $(gxfixed_h) $(gxpcolor_h) \
  1322.   $(gzstate_h)
  1323.  
  1324. # Reader
  1325.  
  1326. psl2read1_=iutil2.$(OBJ) zcie.$(OBJ) zcolor2.$(OBJ) zcsindex.$(OBJ) zcspace2.$(OBJ)
  1327. psl2read2_=zdevice2.$(OBJ) zht2.$(OBJ) zimage2.$(OBJ) ziodev2.$(OBJ) zmisc2.$(OBJ)
  1328. psl2read_=$(psl2read1_) $(psl2read2_)
  1329. # Note that zmisc2 includes both Level 1 and Level 2 operators.
  1330. psl2read.dev: gs.mak $(psl2read_)
  1331.     $(SETMOD) psl2read $(psl2read1_)
  1332.     $(ADDMOD) psl2read -obj $(psl2read2_)
  1333.     $(ADDMOD) psl2read -oper zmisc2
  1334.     $(ADDMOD) psl2read -oper zcie_l2 zcolor2_l2 zcsindex_l2 zcspace2_l2
  1335.     $(ADDMOD) psl2read -oper zdevice2_l2 zht2_l2 zimage2_l2 ziodev2_l2
  1336.     $(ADDMOD) psl2read -iodev null ram
  1337.     $(ADDMOD) psl2read -ps gs_lev2
  1338.  
  1339. iutil2.$(OBJ): iutil2.c $(GXERR) $(memory__h) \
  1340.   $(gsparam_h) $(opcheck_h) $(idict_h) $(imemory_h) $(iutil_h) $(iutil2_h)
  1341.  
  1342. zcie.$(OBJ): zcie.c $(OP) \
  1343.   $(gscspace_h) $(gscolor2_h) $(gscie_h) $(gsstruct_h) \
  1344.   $(ialloc_h) $(idict_h) $(idparam_h) $(estack_h) $(isave_h) $(igstate_h) $(store_h)
  1345.  
  1346. zcolor2.$(OBJ): zcolor2.c $(OP) \
  1347.   $(gscolor_h) $(gscspace_h) $(gsmatrix_h) $(gsstruct_h) \
  1348.   $(gxcolor2_h) $(gxdevice_h) $(gxdevmem_h) $(gxfixed_h) $(gxpcolor_h) \
  1349.   $(estack_h) $(ialloc_h) $(idict_h) $(idparam_h) $(igstate_h) $(istruct_h) \
  1350.   $(store_h)
  1351.  
  1352. zcsindex.$(OBJ): zcsindex.c $(OP) \
  1353.   $(gscolor_h) $(gsstruct_h) $(gxfixed_h) $(gxcolor2_h) $(gscspace_h) \
  1354.   $(ialloc_h) $(estack_h) $(igstate_h) $(store_h)
  1355.  
  1356. zcspace2.$(OBJ): zcspace2.c $(OP) \
  1357.   $(gscolor_h) $(gscolor2_h) $(gscspace_h) $(gsmatrix_h) \
  1358.   $(idict_h) $(idparam_h) $(dstack_h) $(estack_h) $(iname_h) $(igstate_h) $(store_h)
  1359.  
  1360. zdevice2.$(OBJ): zdevice2.c $(OP) \
  1361.   $(dstack_h) $(estack_h) $(idict_h) $(idparam_h) $(igstate_h) $(iname_h) $(store_h) \
  1362.   $(gxdevice_h) $(gsstate_h)
  1363.  
  1364. zht2.$(OBJ): zht2.c $(OP) \
  1365.   $(gsstruct_h) $(gxdevice_h) $(gzht_h) \
  1366.   $(estack_h) $(ialloc_h) $(idict_h) $(idparam_h) $(igstate_h) $(store_h)
  1367.  
  1368. zimage2.$(OBJ): zimage2.c $(OP) \
  1369.   $(gscolor_h) $(gscolor2_h) $(gscspace_h) $(gsmatrix_h) \
  1370.   $(idict_h) $(idparam_h) $(ilevel_h) $(igstate_h)
  1371.  
  1372. ziodev2.$(OBJ): ziodev2.c $(OP) \
  1373.   $(gxiodev_h) $(stream_h) $(files_h) $(iparam_h) $(iutil2_h) $(store_h)
  1374.  
  1375. zmisc2.$(OBJ): zmisc2.c $(OP) \
  1376.   $(gsfont_h) $(gsutil_h) \
  1377.   $(ialloc_h) $(idict_h) $(idparam_h) $(iparam_h) $(dstack_h) $(estack_h) $(ilevel_h) $(iname_h) $(iutil2_h) $(store_h)
  1378.  
  1379. ### Filters other than the ones in sfilter.c
  1380.  
  1381. # Support
  1382.  
  1383. sbits.$(OBJ): sbits.c $(AK) $(std_h)
  1384.  
  1385. shc.$(OBJ): shc.c $(AK) $(std_h) $(shc_h)
  1386.  
  1387. # Filters
  1388.  
  1389. sbhc.$(OBJ): sbhc.c $(AK) $(stdio__h) \
  1390.   $(gdebug_h) $(sbhc_h) $(strimpl_h)
  1391.  
  1392. sbwbs.$(OBJ): sbwbs.c $(AK) $(stdio__h) $(memory__h) \
  1393.   $(gdebug_h) $(sbwbs_h) $(sfilter_h) $(strimpl_h)
  1394.  
  1395. scfd.$(OBJ): scfd.c $(AK) $(stdio__h) $(gdebug_h)\
  1396.   $(scf_h) $(strimpl_h) $(scfx_h)
  1397.  
  1398. scfe.$(OBJ): scfe.c $(AK) $(stdio__h) $(gdebug_h)\
  1399.   $(scf_h) $(strimpl_h) $(scfx_h)
  1400.  
  1401. scfdtab.$(OBJ): scfdtab.c $(AK) $(std_h) $(scommon_h) $(scf_h)
  1402.  
  1403. scftab.$(OBJ): scftab.c $(AK) $(std_h) $(scommon_h) $(scf_h)
  1404.  
  1405. sdiff.$(OBJ): sdiff.c $(AK) $(stdio__h)\
  1406.   $(sdiffx_h) $(strimpl_h)
  1407.  
  1408. sfilter2.$(OBJ): sfilter2.c $(AK) $(stdio__h)\
  1409.   $(scanchar_h) $(sfilter_h) $(strimpl_h)
  1410.  
  1411. slzwce.$(OBJ): slzwce.c $(AK) $(stdio__h) $(gdebug_h)\
  1412.   $(slzwx_h) $(strimpl_h)
  1413.  
  1414. slzwd.$(OBJ): slzwd.c $(AK) $(stdio__h) $(gdebug_h)\
  1415.   $(slzwx_h) $(strimpl_h)
  1416.  
  1417. slzwe.$(OBJ): slzwe.c $(AK) $(stdio__h) $(gdebug_h)\
  1418.   $(slzwx_h) $(strimpl_h)
  1419.  
  1420. zfilter2.$(OBJ): zfilter2.c $(OP) \
  1421.   $(gsstruct_h) $(ialloc_h) $(idict_h) $(idparam_h) $(ifilter_h) \
  1422.   $(sfilter_h) $(sbhc_h) $(sbwbs_h) $(scfx_h) $(sdiffx_h) $(slzwx_h) $(strimpl_h)
  1423.  
  1424. filter_1=zfilter2.$(OBJ) sbits.$(OBJ) shc.$(OBJ)
  1425. filter_2=sbhc.$(OBJ) sbwbs.$(OBJ) scfd.$(OBJ) scfe.$(OBJ) scfdtab.$(OBJ) scftab.$(OBJ)
  1426. filter_3=sdiff.$(OBJ) sfilter2.$(OBJ) slzwd.$(OBJ) slzwe.$(OBJ)
  1427. filter.dev: gs.mak $(filter_1) $(filter_2) $(filter_3)
  1428.     $(SETMOD) filter $(filter_1)
  1429.     $(ADDMOD) filter -obj $(filter_2)
  1430.     $(ADDMOD) filter -obj $(filter_3)
  1431.     $(ADDMOD) filter -oper zfilter2
  1432.  
  1433. ### DCT filters.  The definition for jpeg.dev is in jpeg.mak.
  1434.  
  1435. GSDCT=sdct.$(OBJ) sjpeg.$(OBJ) zfdct.$(OBJ)
  1436. dct.dev: jpeg.dev gs.mak $(GSDCT)
  1437.     $(SETMOD) dct
  1438.     $(ADDMOD) dct -include jpeg
  1439.     $(ADDMOD) dct -obj $(GSDCT)
  1440.     $(ADDMOD) dct -oper zfdct
  1441.  
  1442. sdct.$(OBJ): sdct.c $(AK) $(stdio__h) $(gdebug_h)\
  1443.   $(sjpeg_h) $(sdct_h) $(strimpl_h) \
  1444.   jerror.h jpeglib.h
  1445.     $(CCC) -I. -I$(JPEGSRC) sdct.c
  1446.  
  1447. sjpeg.$(OBJ): sjpeg.c $(AK) $(stdio__h) $(gx_h)\
  1448.   $(gserrors_h) $(sjpeg_h) $(sdct_h) $(strimpl_h) \
  1449.   jerror.h jpeglib.h
  1450.     $(CCC) -I. -I$(JPEGSRC) sjpeg.c
  1451.  
  1452. zfdct.$(OBJ): zfdct.c $(OP) \
  1453.   $(gsstruct_h) $(ialloc_h) $(idict_h) $(idparam_h) $(ifilter_h) \
  1454.   $(ipacked_h) $(sdct_h) $(sjpeg_h) $(strimpl_h) \
  1455.   jpeglib.h
  1456.     $(CCC) -I. -I$(JPEGSRC) zfdct.c
  1457.  
  1458. ### Precompiled fonts.  See fonts.doc for more information.
  1459.  
  1460. ccfont_h=ccfont.h $(std_h) $(gsmemory_h) $(iref_h) $(store_h)
  1461.  
  1462. CCFONT=$(OP) $(ccfont_h)
  1463.  
  1464. # List the fonts we are going to compile.
  1465. # Because of intrinsic limitations in `make', we have to list
  1466. # the object file names and the font names separately.
  1467. ccfonts_ps=gs_ccfnt
  1468. ccfonts1_=ncrr.$(OBJ) ptmr.$(OBJ) bchri.$(OBJ)
  1469. ccfonts1=Courier Times_Roman Charter_Italic
  1470.  
  1471. # Strictly speaking, ccfonts shouldn't need to include type1,
  1472. # since one could choose to precompile only Type 0 fonts,
  1473. # but getting this exactly right would be too much work.
  1474. ccfonts.dev: $(MAKEFILE) gs.mak iccfont.$(OBJ) \
  1475.   $(ccfonts1_) $(ccfonts2_) $(ccfonts3_) $(ccfonts4_) $(ccfonts5_) \
  1476.   $(ccfonts6_) $(ccfonts7_) $(ccfonts8_) $(ccfonts9_)
  1477.     $(SETMOD) ccfonts
  1478.     $(ADDMOD) ccfonts -include type1
  1479.     $(ADDMOD) ccfonts -obj iccfont.$(OBJ)
  1480.     $(ADDMOD) ccfonts -obj $(ccfonts1_)
  1481.     $(ADDMOD) ccfonts -obj $(ccfonts2_)
  1482.     $(ADDMOD) ccfonts -obj $(ccfonts3_)
  1483.     $(ADDMOD) ccfonts -obj $(ccfonts4_)
  1484.     $(ADDMOD) ccfonts -obj $(ccfonts5_)
  1485.     $(ADDMOD) ccfonts -obj $(ccfonts6_)
  1486.     $(ADDMOD) ccfonts -obj $(ccfonts7_)
  1487.     $(ADDMOD) ccfonts -obj $(ccfonts8_)
  1488.     $(ADDMOD) ccfonts -obj $(ccfonts9_)
  1489.     $(ADDMOD) ccfonts -oper ccfonts
  1490.     $(ADDMOD) ccfonts -ps $(ccfonts_ps)
  1491.  
  1492. gconfigf.h: $(MAKEFILE) gs.mak genconf$(LXE)
  1493.     $(SETMOD) ccfonts_
  1494.     $(ADDMOD) ccfonts_ -font $(ccfonts1)
  1495.     $(ADDMOD) ccfonts_ -font $(ccfonts2)
  1496.     $(ADDMOD) ccfonts_ -font $(ccfonts3)
  1497.     $(ADDMOD) ccfonts_ -font $(ccfonts4)
  1498.     $(ADDMOD) ccfonts_ -font $(ccfonts5)
  1499.     $(ADDMOD) ccfonts_ -font $(ccfonts6)
  1500.     $(ADDMOD) ccfonts_ -font $(ccfonts7)
  1501.     $(ADDMOD) ccfonts_ -font $(ccfonts8)
  1502.     $(ADDMOD) ccfonts_ -font $(ccfonts9)
  1503.     $(EXP)genconf ccfonts_.dev -f gconfigf.h
  1504.  
  1505. iccfont.$(OBJ): iccfont.c $(GH) gconfigf.h \
  1506.   $(ghost_h) $(ialloc_h) $(ccfont_h) $(idict_h) $(errors_h) \
  1507.   $(ifont_h) $(iutil_h) $(iname_h) $(oper_h) $(isave_h) $(store_h)
  1508.  
  1509. ncrr.$(OBJ): ncrr.c $(CCFONT)
  1510.     $(CCCF) ncrr.c
  1511.  
  1512. pagk.$(OBJ): pagk.c $(CCFONT)
  1513.     $(CCCF) pagk.c
  1514.  
  1515. phvr.$(OBJ): phvr.c $(CCFONT)
  1516.     $(CCCF) phvr.c
  1517.  
  1518. psyr.$(OBJ): psyr.c $(CCFONT)
  1519.     $(CCCF) psyr.c
  1520.  
  1521. ptmr.$(OBJ): ptmr.c $(CCFONT)
  1522.     $(CCCF) ptmr.c
  1523.  
  1524. pzdr.$(OBJ): pzdr.c $(CCFONT)
  1525.     $(CCCF) pzdr.c
  1526.  
  1527. bchri.$(OBJ): bchri.c $(CCFONT)
  1528.     $(CCCF) bchri.c
  1529.  
  1530. ### Precompiled initialization code.
  1531. # Note that in order to generate this, you have to have a working copy
  1532. # of the interpreter already available.
  1533.  
  1534. ccinit.dev: gs.mak iccinit.$(OBJ) gs_init.$(OBJ)
  1535.     $(SETMOD) ccinit iccinit.$(OBJ) gs_init.$(OBJ)
  1536.     $(ADDMOD) ccinit -oper ccinit
  1537.  
  1538. iccinit.$(OBJ): iccinit.c $(GH) \
  1539.   $(errors_h) $(oper_h) $(store_h) $(stream_h) $(files_h)
  1540.  
  1541. # All the gs_*.ps files should be prerequisites of gs_init.c,
  1542. # but we don't have any convenient list of them.
  1543. # We can't make $(GS)$(LXE) a prerequisite, because that would be circular.
  1544. gs_init.c: $(GS_INIT) mergeini.ps
  1545.     $(EXP)$(GS)$(LXE) -dNODISPLAY -sCfile=gs_init.c mergeini.ps
  1546.  
  1547. gs_init.$(OBJ): gs_init.c $(stdpre_h)
  1548.     $(CCCF) gs_init.c
  1549.  
  1550. # ----------------------- Platform-specific modules ----------------------- #
  1551. # Platform-specific code doesn't really belong here: this is code that is
  1552. # shared among multiple platforms.
  1553.  
  1554. # Frame buffer implementations.
  1555.  
  1556. gp_nofb.$(OBJ): gp_nofb.c $(AK) \
  1557.   $(gx_h) $(gp_h) $(gxdevice_h)
  1558.  
  1559. gp_dosfb.$(OBJ): gp_dosfb.c $(AK) $(memory__h) \
  1560.   $(gx_h) $(gp_h) $(gserrors_h) $(gxdevice_h)
  1561.  
  1562. # MS-DOS file system, also used by Desqview/X.
  1563. gp_dosfs.$(OBJ): gp_dosfs.c $(AK) $(dos__h) $(gp_h) $(gx_h)
  1564.  
  1565. # MS-DOS file enumeration, *not* used by Desqview/X.
  1566. gp_dosfe.$(OBJ): gp_dosfe.c $(AK) $(stdio__h) $(memory__h) $(string__h) \
  1567.   $(dos__h) $(gstypes_h) $(gsmemory_h) $(gsstruct_h) $(gp_h) $(gsutil_h)
  1568.  
  1569. # Other MS-DOS facilities.
  1570. gp_msdos.$(OBJ): gp_msdos.c $(AK) $(dos__h) \
  1571.   $(gsmemory_h) $(gstypes_h) $(gp_h)
  1572.  
  1573. # Unix(-like) file system, also used by Desqview/X.
  1574. gp_unifs.$(OBJ): gp_unifs.c $(AK) $(memory__h) $(string__h) $(gx_h) $(gp_h) \
  1575.   $(gsstruct_h) $(gsutil_h) $(stat__h) $(dirent__h)
  1576.  
  1577. # Unix(-like) file name syntax, *not* used by Desqview/X.
  1578. gp_unifn.$(OBJ): gp_unifn.c $(AK) $(gx_h) $(gp_h)
  1579.  
  1580. # ----------------------------- Main program ------------------------------ #
  1581.  
  1582. # Interpreter main program
  1583.  
  1584. gs.$(OBJ): gs.c $(GH) $(ctype__h) \
  1585.   $(gxdevice_h) $(gxdevmem_h) \
  1586.   $(errors_h) $(estack_h) $(files_h) \
  1587.   $(ialloc_h) $(interp_h) $(iscan_h) $(iutil_h) \
  1588.   $(main_h) $(ostack_h) $(sfilter_h) $(store_h) $(stream_h) $(strimpl_h)
  1589.  
  1590. gsmain.$(OBJ): gsmain.c $(GH) \
  1591.   $(gp_h) $(gsmatrix_h) $(gxdevice_h) $(gserrors_h) \
  1592.   $(dstack_h) $(estack_h) $(files_h) $(ialloc_h) $(idict_h) $(iname_h) $(iscan_h) \
  1593.   $(main_h) $(oper_h) $(ostack_h) $(sfilter_h) $(store_h) $(strimpl_h)
  1594.  
  1595. interp.$(OBJ): interp.c $(GH) \
  1596.   $(dstack_h) $(errors_h) $(estack_h) $(files_h) $(oper_h) $(ostack_h) \
  1597.   $(ialloc_h) $(iastruct_h) $(iname_h) $(idict_h) $(interp_h) $(ipacked_h) \
  1598.   $(iscan_h) $(isave_h) $(istack_h) $(iutil_h) $(ostack_h) \
  1599.   $(sfilter_h) $(store_h) $(stream_h) $(strimpl_h)
  1600.     $(CCINT) interp.c
  1601. #    Copyright (C) 1994 Aladdin Enterprises.  All rights reserved.
  1602. # This file is part of Aladdin Ghostscript.
  1603. # Aladdin Ghostscript is distributed with NO WARRANTY OF ANY KIND.  No author
  1604. # or distributor accepts any responsibility for the consequences of using it,
  1605. # or for whether it serves any particular purpose or works at all, unless he
  1606. # or she says so in writing.  Refer to the Aladdin Ghostscript Free Public
  1607. # License (the "License") for full details.
  1608. # Every copy of Aladdin Ghostscript must include a copy of the License,
  1609. # normally in a plain ASCII text file named PUBLIC.  The License grants you
  1610. # the right to copy, modify and redistribute Aladdin Ghostscript, but only
  1611. # under certain conditions described in the License.  Among other things, the
  1612. # License requires that the copyright notice and this notice be preserved on
  1613. # all copies.
  1614.  
  1615. # makefile for Independent JPEG Group code.
  1616.  
  1617. # NOTE: this makefile works only with version 5beta1 or later of the IJG code.
  1618. # You can get the current version by Internet anonymous FTP from
  1619. # ftp.uu.net:/graphics/jpeg.  As of July 29, 1994, the current version
  1620. # is 5beta1, and the IJG files are named:
  1621. #    jpegsrc.v5beta1.tar.gz        Standard distribution
  1622. #    jpeg-5b1.zip            DOS-style archive
  1623. # You may find more recent files on the FTP server.
  1624. #
  1625. # For version 5alpha3, set INT=llm.  (This is probably no longer relevant.)
  1626. # For version 5alpha4, 5beta1, or later, set INT=int.
  1627. INT=int
  1628.  
  1629. # We keep all of the IJG code in a separate directory so as not to
  1630. # inadvertently mix it up with Aladdin Enterprises' own code.
  1631. # However, we need our own version of jconfig.h, and our own "wrapper" for
  1632. # jmorecfg.h.
  1633.  
  1634. JSRC=$(JPEGSRC)$(D)
  1635.  
  1636. CCCJ=$(CCC) -I. -I$(JPEGSRC)
  1637.  
  1638. jconfig_h=jconfig.h $(std_h)
  1639. jmorecfg_h=jmorecfg.h jmcorig.h
  1640.  
  1641. jconfig.h: gsjconf.h
  1642.     cp gsjconf.h jconfig.h
  1643.  
  1644. jmorecfg.h: gsjmorec.h
  1645.     cp gsjmorec.h jmorecfg.h
  1646.  
  1647. jmcorig.h: $(JSRC)jmorecfg.h
  1648.     cp $(JSRC)jmorecfg.h jmcorig.h
  1649.  
  1650. # To ensure that the compiler finds our versions of jconfig.h and jmorecfg.h,
  1651. # regardless of the compiler's search rule, we must copy up all .c files,
  1652. # and all .h files that include either of these files, directly or
  1653. # indirectly.  The only such .h files currently are jinclude.h and jpeglib.h.
  1654. # Also, to avoid including the JPEGSRC directory name in our source files,
  1655. # we must also copy up any other .h files that our own code references.
  1656. # Currently, the only such .h file is jerror.h.
  1657.  
  1658. JHCOPY=jerror.h jinclude.h jpeglib.h
  1659.  
  1660. jerror.h: $(JSRC)jerror.h
  1661.     cp $(JSRC)jerror.h jerror.h
  1662.  
  1663. jinclude.h: $(JSRC)jinclude.h
  1664.     cp $(JSRC)jinclude.h jinclude.h
  1665.  
  1666. jpeglib.h: $(JSRC)jpeglib.h
  1667.     cp $(JSRC)jpeglib.h jpeglib.h
  1668.  
  1669. # In order to avoid having to keep the dependency lists for the IJG code
  1670. # accurate, we simply make all of them depend on the only files that
  1671. # we are ever going to change, and on all the .h files that must be copied up.
  1672. # This is too conservative, but only hurts us if we are changing our own
  1673. # j*.h files, which happens only rarely during development.
  1674.  
  1675. JDEP=$(AK) $(jconfig_h) $(jmorecfg_h) $(JHCOPY)
  1676.  
  1677. # Code common to compression and decompression.
  1678.  
  1679. DCT1=jcomapi.$(OBJ) jutils.$(OBJ) jerror.$(OBJ) jmemmgr.$(OBJ)
  1680.  
  1681. jcomapi.$(OBJ): $(JSRC)jcomapi.c $(JDEP)
  1682.     cp $(JSRC)jcomapi.c .
  1683.     $(CCCJ) jcomapi.c
  1684.     rm jcomapi.c
  1685.  
  1686. jutils.$(OBJ): $(JSRC)jutils.c $(JDEP)
  1687.     cp $(JSRC)jutils.c .
  1688.     $(CCCJ) jutils.c
  1689.     rm jutils.c
  1690.  
  1691. jerror.$(OBJ): $(JSRC)jerror.c $(JDEP)
  1692.     cp $(JSRC)jerror.c .
  1693.     $(CCCJ) jerror.c
  1694.     rm jerror.c
  1695.  
  1696. jmemmgr.$(OBJ): $(JSRC)jmemmgr.c $(JDEP)
  1697.     cp $(JSRC)jmemmgr.c .
  1698.     $(CCCJ) jmemmgr.c
  1699.     rm jmemmgr.c
  1700.  
  1701. # Compression code.
  1702.  
  1703. DCTE1=jcapi.$(OBJ) jccoefct.$(OBJ) jccolor.$(OBJ) jcdctmgr.$(OBJ) 
  1704. DCTE2=jchuff.$(OBJ) jcmainct.$(OBJ) jcmarker.$(OBJ) jcmaster.$(OBJ)
  1705. DCTE3=jcparam.$(OBJ) jcprepct.$(OBJ) jcsample.$(OBJ) jfdct$(INT).$(OBJ)
  1706.  
  1707. jcapi.$(OBJ): $(JSRC)jcapi.c $(JDEP)
  1708.     cp $(JSRC)jcapi.c .
  1709.     $(CCCJ) jcapi.c
  1710.     rm jcapi.c
  1711.  
  1712. jccoefct.$(OBJ): $(JSRC)jccoefct.c $(JDEP)
  1713.     cp $(JSRC)jccoefct.c .
  1714.     $(CCCJ) jccoefct.c
  1715.     rm jccoefct.c
  1716.  
  1717. jccolor.$(OBJ): $(JSRC)jccolor.c $(JDEP)
  1718.     cp $(JSRC)jccolor.c .
  1719.     $(CCCJ) jccolor.c
  1720.     rm jccolor.c
  1721.  
  1722. jcdctmgr.$(OBJ): $(JSRC)jcdctmgr.c $(JDEP)
  1723.     cp $(JSRC)jcdctmgr.c .
  1724.     $(CCCJ) jcdctmgr.c
  1725.     rm jcdctmgr.c
  1726.  
  1727. jchuff.$(OBJ): $(JSRC)jchuff.c $(JDEP)
  1728.     cp $(JSRC)jchuff.c .
  1729.     $(CCCJ) jchuff.c
  1730.     rm jchuff.c
  1731.  
  1732. jcmainct.$(OBJ): $(JSRC)jcmainct.c $(JDEP)
  1733.     cp $(JSRC)jcmainct.c .
  1734.     $(CCCJ) jcmainct.c
  1735.     rm jcmainct.c
  1736.  
  1737. jcmarker.$(OBJ): $(JSRC)jcmarker.c $(JDEP)
  1738.     cp $(JSRC)jcmarker.c .
  1739.     $(CCCJ) jcmarker.c
  1740.     rm jcmarker.c
  1741.  
  1742. jcmaster.$(OBJ): $(JSRC)jcmaster.c $(JDEP)
  1743.     cp $(JSRC)jcmaster.c .
  1744.     $(CCCJ) jcmaster.c
  1745.     rm jcmaster.c
  1746.  
  1747. jcparam.$(OBJ): $(JSRC)jcparam.c $(JDEP)
  1748.     cp $(JSRC)jcparam.c .
  1749.     $(CCCJ) jcparam.c
  1750.     rm jcparam.c
  1751.  
  1752. jcprepct.$(OBJ): $(JSRC)jcprepct.c $(JDEP)
  1753.     cp $(JSRC)jcprepct.c .
  1754.     $(CCCJ) jcprepct.c
  1755.     rm jcprepct.c
  1756.  
  1757. jcsample.$(OBJ): $(JSRC)jcsample.c $(JDEP)
  1758.     cp $(JSRC)jcsample.c .
  1759.     $(CCCJ) jcsample.c
  1760.     rm jcsample.c
  1761.  
  1762. jfdct$(INT).$(OBJ): $(JSRC)jfdct$(INT).c $(JDEP)
  1763.     cp $(JSRC)jfdct$(INT).c .
  1764.     $(CCCJ) jfdct$(INT).c
  1765.     rm jfdct$(INT).c
  1766.  
  1767. # Decompression code
  1768.  
  1769. DCTD1=jdapi.$(OBJ) jdcoefct.$(OBJ) jdcolor.$(OBJ)
  1770. DCTD2=jddctmgr.$(OBJ) jdhuff.$(OBJ) jdmainct.$(OBJ) jdmarker.$(OBJ)
  1771. DCTD3=jdmaster.$(OBJ) jdpostct.$(OBJ) jdsample.$(OBJ) jidct$(INT).$(OBJ)
  1772.  
  1773. jdapi.$(OBJ): $(JSRC)jdapi.c $(JDEP)
  1774.     cp $(JSRC)jdapi.c .
  1775.     $(CCCJ) jdapi.c
  1776.     rm jdapi.c
  1777.  
  1778. jdcoefct.$(OBJ): $(JSRC)jdcoefct.c $(JDEP)
  1779.     cp $(JSRC)jdcoefct.c .
  1780.     $(CCCJ) jdcoefct.c
  1781.     rm jdcoefct.c
  1782.  
  1783. jdcolor.$(OBJ): $(JSRC)jdcolor.c $(JDEP)
  1784.     cp $(JSRC)jdcolor.c .
  1785.     $(CCCJ) jdcolor.c
  1786.     rm jdcolor.c
  1787.  
  1788. jddctmgr.$(OBJ): $(JSRC)jddctmgr.c $(JDEP)
  1789.     cp $(JSRC)jddctmgr.c .
  1790.     $(CCCJ) jddctmgr.c
  1791.     rm jddctmgr.c
  1792.  
  1793. jdhuff.$(OBJ): $(JSRC)jdhuff.c $(JDEP)
  1794.     cp $(JSRC)jdhuff.c .
  1795.     $(CCCJ) jdhuff.c
  1796.     rm jdhuff.c
  1797.  
  1798. jdmainct.$(OBJ): $(JSRC)jdmainct.c $(JDEP)
  1799.     cp $(JSRC)jdmainct.c .
  1800.     $(CCCJ) jdmainct.c
  1801.     rm jdmainct.c
  1802.  
  1803. jdmarker.$(OBJ): $(JSRC)jdmarker.c $(JDEP)
  1804.     cp $(JSRC)jdmarker.c .
  1805.     $(CCCJ) jdmarker.c
  1806.     rm jdmarker.c
  1807.  
  1808. jdmaster.$(OBJ): $(JSRC)jdmaster.c $(JDEP)
  1809.     cp $(JSRC)jdmaster.c .
  1810.     $(CCCJ) jdmaster.c
  1811.     rm jdmaster.c
  1812.  
  1813. jdpostct.$(OBJ): $(JSRC)jdpostct.c $(JDEP)
  1814.     cp $(JSRC)jdpostct.c .
  1815.     $(CCCJ) jdpostct.c
  1816.     rm jdpostct.c
  1817.  
  1818. jdsample.$(OBJ): $(JSRC)jdsample.c $(JDEP)
  1819.     cp $(JSRC)jdsample.c .
  1820.     $(CCCJ) jdsample.c
  1821.     rm jdsample.c
  1822.  
  1823. jidct$(INT).$(OBJ): $(JSRC)jidct$(INT).c $(JDEP)
  1824.     cp $(JSRC)jidct$(INT).c .
  1825.     $(CCCJ) jidct$(INT).c
  1826.     rm jidct$(INT).c
  1827.  
  1828. ### DCT filters
  1829.  
  1830. jpeg.dev: jpeg.mak $(DCT1) $(DCT2) $(DCT3) \
  1831.   $(DCTE1) $(DCTE2) $(DCTE3) $(DCTD1) $(DCTD2) $(DCTD3)
  1832.     $(SETMOD) jpeg $(DCT1)
  1833.     $(ADDMOD) jpeg -obj $(DCT2)
  1834.     $(ADDMOD) jpeg -obj $(DCT3)
  1835.     $(ADDMOD) jpeg -obj $(DCTE1)
  1836.     $(ADDMOD) jpeg -obj $(DCTE2)
  1837.     $(ADDMOD) jpeg -obj $(DCTE3)
  1838.     $(ADDMOD) jpeg -obj $(DCTD1)
  1839.     $(ADDMOD) jpeg -obj $(DCTD2)
  1840.     $(ADDMOD) jpeg -obj $(DCTD3)
  1841. #    Copyright (C) 1989, 1992, 1993, 1994 Aladdin Enterprises.  All rights reserved.
  1842. # This file is part of Aladdin Ghostscript.
  1843. # Aladdin Ghostscript is distributed with NO WARRANTY OF ANY KIND.  No author
  1844. # or distributor accepts any responsibility for the consequences of using it,
  1845. # or for whether it serves any particular purpose or works at all, unless he
  1846. # or she says so in writing.  Refer to the Aladdin Ghostscript Free Public
  1847. # License (the "License") for full details.
  1848. # Every copy of Aladdin Ghostscript must include a copy of the License,
  1849. # normally in a plain ASCII text file named PUBLIC.  The License grants you
  1850. # the right to copy, modify and redistribute Aladdin Ghostscript, but only
  1851. # under certain conditions described in the License.  Among other things, the
  1852. # License requires that the copyright notice and this notice be preserved on
  1853. # all copies.
  1854.  
  1855. # makefile for device drivers.
  1856.  
  1857. # -------------------------------- Catalog ------------------------------- #
  1858.  
  1859. # It is possible to build configurations with an arbitrary collection of
  1860. # device drivers, although some drivers are supported only on a subset
  1861. # of the target platforms.  The currently available drivers are:
  1862.  
  1863. # MS-DOS displays (note: not usable with Desqview/X):
  1864. #   MS-DOS EGA and VGA:
  1865. #    ega    EGA (640x350, 16-color)
  1866. #    vga    VGA (640x480, 16-color)
  1867. #   MS-DOS SuperVGA:
  1868. # +    atiw    ATI Wonder SuperVGA, 256-color modes
  1869. # +    atiw16  ATI Wonder SuperVGA in 800x600, 16-color mode
  1870. # +    s3vga    SuperVGA with S3 86C911 chip (e.g., Diamond Stealth board)
  1871. #    tseng    SuperVGA using Tseng Labs ET3000/4000 chips, 256-color modes
  1872. #    tseng8    Tseng Labs SuperVGA using only 8 colors (for halftone testing)
  1873. #    tseng16  Tseng Labs SuperVGA in 800x600, 16-color mode (256K memory)
  1874. # +    tvga    Trident SuperVGA, 256-color modes
  1875. # +    tvga16    Trident SuperVGA in 800x600, 16-color mode (256K memory)
  1876. #   ****** NOTE: The vesa device does not work with the Watcom (32-bit MS-DOS)
  1877. #   ****** compiler or executable.
  1878. #    vesa    SuperVGA with VESA standard API driver
  1879. #   MS-DOS other:
  1880. #    bgi    Borland Graphics Interface (CGA)  [MS-DOS only]
  1881. # *    herc    Hercules Graphics display   [MS-DOS only]
  1882. # *    pe    Private Eye display
  1883. # Other displays:
  1884. #   MS Windows:
  1885. #    mswin    Microsoft Windows 3.0, 3.1   [MS Windows only]
  1886. #    mswindll  Microsoft Windows 3.1 DLL    [MS Windows only]
  1887. #    mswinprn  Microsoft Windows 3.0, 3.1 printer   [MS Windows only]
  1888. #   OS/2:
  1889. # *    os2pm    OS/2 Presentation Manager   [OS/2 only]
  1890. # *    os2dll    OS/2 DLL bitmap             [OS/2 only]
  1891. #   Unix and VMS:
  1892. #   ****** NOTE: For direct frame buffer addressing under SCO Unix or Xenix,
  1893. #   ****** edit the definition of EGAVGA below.
  1894. # *    att3b1    AT&T 3b1/Unixpc monochrome display   [3b1 only]
  1895. # *    sonyfb    Sony Microsystems monochrome display   [Sony only]
  1896. # *    sunview  SunView window system   [SunOS only]
  1897. #    vgalib    Linux PC with VGALIB   [Linux only]
  1898. #    x11    X Windows version 11, release >=4   [Unix and VMS only]
  1899. #   Platform-independent:
  1900. # *    sxlcrt    CRT sixels, e.g. for VT240-like terminals
  1901. # Printers:
  1902. # *    ap3250    Epson AP3250 printer
  1903. # *    appledmp  Apple Dot Matrix Printer (should also work with Imagewriter)
  1904. #    bj10e    Canon BubbleJet BJ10e
  1905. # *    bj200    Canon BubbleJet BJ200
  1906. # *    cdeskjet  H-P DeskJet 500C with 1 bit/pixel color
  1907. # *    cdjcolor  H-P DeskJet 500C with 24 bit/pixel color and
  1908. #        high-quality color (Floyd-Steinberg) dithering
  1909. # *    cdjmono  H-P DeskJet 500C printing black only;
  1910. #        also good for DeskJet 510
  1911. # *    cdj500    H-P DeskJet 500C (same as cdjcolor)
  1912. # *    cdj550    H-P DeskJet 550C;
  1913. #        also good for DeskJet 520
  1914. # *    cp50    Mitsubishi CP50 color printer
  1915. # *    declj250  alternate DEC LJ250 driver
  1916. # +    deskjet  H-P DeskJet and DeskJet Plus
  1917. #    djet500  H-P DeskJet 500
  1918. # *    djet500c  H-P DeskJet 500C alternate driver (does not work on 550C)
  1919. # *    dnj650c  H-P DesignJet 650C
  1920. #    epson    Epson-compatible dot matrix printers (9- or 24-pin)
  1921. # *    eps9mid  Epson-compatible 9-pin, interleaved lines
  1922. #        (intermediate resolution)
  1923. # *    eps9high  Epson-compatible 9-pin, interleaved lines
  1924. #        (triple resolution)
  1925. # *    epsonc    Epson LQ-2550 and Fujitsu 3400/2400/1200 color printers
  1926. # *    ibmpro  IBM 9-pin Proprinter
  1927. # *    imagen    Imagen ImPress printers
  1928. # *    iwhi    Apple Imagewriter in high-resolution mode
  1929. # *    iwlo    Apple Imagewriter in low-resolution mode
  1930. # *    jetp3852  IBM Jetprinter ink-jet color printer (Model #3852)
  1931. # +    laserjet  H-P LaserJet
  1932. # *    la50    DEC LA50 printer
  1933. # *    la70    DEC LA70 printer
  1934. # *    la70t    DEC LA70 printer with low-resolution text enhancement
  1935. # *    la75    DEC LA75 printer
  1936. # *    la75plus DEC LA75plus printer
  1937. # *    lbp8    Canon LBP-8II laser printer
  1938. # *    lips3    Canon LIPS III laser printer in English (CaPSL) mode
  1939. # *    ln03    DEC LN03 printer
  1940. # *    lj250    DEC LJ250 Companion color printer
  1941. # +    ljet2p    H-P LaserJet IId/IIp/III* with TIFF compression
  1942. # +    ljet3    H-P LaserJet III* with Delta Row compression
  1943. # +    ljet4    H-P LaserJet 4 (defaults to 600 dpi)
  1944. # +    ljetplus  H-P LaserJet Plus
  1945. # *    lp2563    H-P 2563B line printer
  1946. # *    m8510    C.Itoh M8510 printer
  1947. # *    necp6    NEC P6/P6+/P60 printers at 360 x 360 DPI resolution
  1948. # *    nwp533  Sony Microsystems NWP533 laser printer   [Sony only]
  1949. # *    oki182    Okidata MicroLine 182
  1950. # *    paintjet  H-P PaintJet color printer
  1951. # *    pj    alternate PaintJet XL driver 
  1952. # *    pjxl    H-P PaintJet XL color printer
  1953. # *    pjxl300  H-P PaintJet XL300 color printer;
  1954. #        also good for PaintJet 1200C
  1955. # *    r4081    Ricoh 4081 laser printer
  1956. # *    sj48    StarJet 48 inkjet printer
  1957. # *    sparc    SPARCprinter
  1958. # *    st800    Epson Stylus 800 printer
  1959. # *    t4693d2  Tektronix 4693d color printer, 2 bits per R/G/B component
  1960. # *    t4693d4  Tektronix 4693d color printer, 4 bits per R/G/B component
  1961. # *    t4693d8  Tektronix 4693d color printer, 8 bits per R/G/B component
  1962. # *    tek4696  Tektronix 4695/4696 inkjet plotter
  1963. # *    xes    Xerox XES printers (2700, 3700, 4045, etc.)
  1964. # Fax systems:
  1965. # *    dfaxhigh  DigiBoard, Inc.'s DigiFAX software format (high resolution)
  1966. # *    dfaxlow  DigiFAX low (normal) resolution
  1967. # Fax file format:
  1968. #    faxg3    Group 3 fax, with EOLs but no header or EOD
  1969. #    faxg32d  Group 3 2-D fax, with EOLs but no header or EOD
  1970. #    faxg4    Group 4 fax, with EOLs but no header or EOD
  1971. #    tiffg3    Group 3 fax TIFF
  1972. #    tiffg32d  Group 3 2-D fax TIFF
  1973. #    tiffg4    Group 4 fax TIFF
  1974. # File formats and others:
  1975. #    bit    Plain bits
  1976. #    bmpmono    Monochrome MS Windows .BMP file format
  1977. #    bmp16    4-bit (EGA/VGA) .BMP file format
  1978. #    bmp256    8-bit (256-color) .BMP file format
  1979. #    bmp16m    24-bit .BMP file format
  1980. # *    cif    CIF file format for VLSI
  1981. #    gifmono    Monochrome GIF file format
  1982. #    gif8    8-bit color GIF file format
  1983. # *    mgrmono  1-bit monochrome MGR devices
  1984. # *    mgrgray2  2-bit gray scale MGR devices
  1985. # *    mgrgray4  4-bit gray scale MGR devices
  1986. # *    mgrgray8  8-bit gray scale MGR devices
  1987. # *    mgr4    4-bit (VGA) color MGR devices
  1988. # *    mgr8    8-bit color MGR devices
  1989. #    pcxmono    Monochrome PCX file format
  1990. #    pcxgray    8-bit gray scale PCX file format
  1991. #    pcx16    4-bit planar (EGA/VGA) color PCX file format
  1992. #    pcx256    8-bit chunky color PCX file format
  1993. #    pcx24b    24-bit color PCX file format, 3 8-bit planes
  1994. #    pbm    Portable Bitmap (plain format)
  1995. #    pbmraw    Portable Bitmap (raw format)
  1996. #    pgm    Portable Graymap (plain format)
  1997. #    pgmraw    Portable Graymap (raw format)
  1998. #    ppm    Portable Pixmap (plain format) (RGB)
  1999. #    ppmraw    Portable Pixmap (raw format) (RGB)
  2000.  
  2001. # User-contributed drivers marked with * require hardware or software
  2002. # that is not available to Aladdin Enterprises.  Please contact the
  2003. # original contributors, not Aladdin Enterprises, if you have questions.
  2004. # Contact information appears in the driver entry below.
  2005. #
  2006. # Drivers marked with a + are maintained by Aladdin Enterprises with
  2007. # the assistance of users, since Aladdin Enterprises doesn't have access to
  2008. # the hardware for these either.
  2009.  
  2010. # If you add drivers, it would be nice if you kept each list
  2011. # in alphabetical order.
  2012.  
  2013. # ---------------------------- End of catalog ---------------------------- #
  2014.  
  2015. # If you want to add a new device driver, the examples below should be
  2016. # enough of a guide to the correct form for the makefile rules.
  2017.  
  2018. # All device drivers depend on the following:
  2019. GDEV=$(AK) echogs$(LXE) $(gserrors_h) $(gx_h) $(gxdevice_h)
  2020.  
  2021. # Define the header files for device drivers.  Every header file used by
  2022. # more than one device driver must be listed here.
  2023. gdevpccm_h=gdevpccm.h
  2024. gdevpcfb_h=gdevpcfb.h $(dos__h)
  2025. gdevpcl_h=gdevpcl.h
  2026. gdevsvga_h=gdevsvga.h
  2027. gdevx_h=gdevx.h
  2028.  
  2029. ###### ----------------------- Device support ----------------------- ######
  2030.  
  2031. gdevemap.$(OBJ): gdevemap.c $(AK) $(std_h)
  2032.  
  2033. ###### ------------------- MS-DOS display devices ------------------- ######
  2034.  
  2035. # There are really only three drivers: an EGA/VGA driver (4 bit-planes,
  2036. # plane-addressed), a SuperVGA driver (8 bit-planes, byte addressed),
  2037. # and a special driver for the S3 chip.
  2038.  
  2039. # PC display color mapping
  2040. gdevpccm.$(OBJ): gdevpccm.c $(AK) \
  2041.   $(gs_h) $(gsmatrix_h) $(gxdevice_h) $(gdevpccm_h)
  2042.  
  2043. ### ----------------------- EGA and VGA displays ----------------------- ###
  2044.  
  2045. gdevegaa.$(OBJ): gdevegaa.asm
  2046.  
  2047. ETEST=ega.$(OBJ) $(ega_) gdevpcfb.$(OBJ) gdevpccm.$(OBJ) gdevegaa.$(OBJ)
  2048. ega.exe: $(ETEST) libc$(MM).tr
  2049.     $(COMPDIR)\tlink $(LCT) $(LO) $(LIBDIR)\c0$(MM) @ega.tr @libc$(MM).tr
  2050.  
  2051. ega.$(OBJ): ega.c $(GDEV)
  2052.     $(CCC) -v ega.c
  2053.  
  2054. # The shared MS-DOS makefile defines PCFBASM as either gdevegaa.$(OBJ)
  2055. # or an empty string.
  2056.  
  2057. # NOTE: for direct frame buffer addressing under SCO Unix or Xenix,
  2058. # change gdevevga to gdevsco in the following line.
  2059. EGAVGA=gdevevga.$(OBJ) gdevpcfb.$(OBJ) gdevpccm.$(OBJ) $(PCFBASM)
  2060.  
  2061. gdevevga.$(OBJ): gdevevga.c $(GDEV) $(gdevpcfb_h)
  2062.     $(CCD) gdevevga.c
  2063.  
  2064. gdevsco.$(OBJ): gdevsco.c $(GDEV) $(gdevpcfb_h)
  2065.     $(CCD) gdevsco.c
  2066.  
  2067. # Common code for MS-DOS and SCO.
  2068. gdevpcfb.$(OBJ): gdevpcfb.c $(GDEV) $(MAKEFILE) $(gdevpccm_h) $(gdevpcfb_h)
  2069.     $(CCD) -DUSE_ASM=0$(USE_ASM) gdevpcfb.c
  2070.  
  2071. # The EGA/VGA family includes: EGA, VGA, and
  2072. # the ATI Wonder, Tseng ET3000/4000, and Trident SuperVGA in 16-color mode.
  2073.  
  2074. ega.dev: $(EGAVGA)
  2075.     $(SETDEV) ega $(EGAVGA)
  2076.  
  2077. vga.dev: $(EGAVGA)
  2078.     $(SETDEV) vga $(EGAVGA)
  2079.  
  2080. atiw16.dev: $(EGAVGA)
  2081.     $(SETDEV) atiw16 $(EGAVGA)
  2082.  
  2083. tseng16.dev: $(EGAVGA)
  2084.     $(SETDEV) tseng16 $(EGAVGA)
  2085.  
  2086. tvga16.dev: $(EGAVGA)
  2087.     $(SETDEV) tvga16 $(EGAVGA)
  2088.  
  2089. ### ------------------------- SuperVGA displays ------------------------ ###
  2090.  
  2091. SVGA=gdevsvga.$(OBJ) gdevpccm.$(OBJ) $(PCFBASM)
  2092.  
  2093. gdevsvga.$(OBJ): gdevsvga.c $(GDEV) $(MAKEFILE) \
  2094.   $(gxarith_h) $(gdevpccm_h) $(gdevpcfb_h) $(gdevsvga_h)
  2095.     $(CCD) -DUSE_ASM=0$(USE_ASM) gdevsvga.c
  2096.  
  2097. # The SuperVGA family includes: ATI Wonder, S3, Trident, Tseng ET3000/4000,
  2098. # and VESA.
  2099.  
  2100. atiw.dev: $(SVGA)
  2101.     $(SETDEV) atiw $(SVGA)
  2102.  
  2103. tseng.dev: $(SVGA)
  2104.     $(SETDEV) tseng $(SVGA)
  2105.  
  2106. tseng8.dev: $(SVGA)
  2107.     $(SETDEV) tseng8 $(SVGA)
  2108.  
  2109. tvga.dev: $(SVGA)
  2110.     $(SETDEV) tvga $(SVGA)
  2111.  
  2112. vesa.dev: $(SVGA)
  2113.     $(SETDEV) vesa $(SVGA)
  2114.  
  2115. # The S3 driver doesn't share much code with the others.
  2116.  
  2117. s3vga_=$(SVGA) gdevs3ga.$(OBJ) gdevsvga.$(OBJ) gdevpccm.$(OBJ)
  2118. s3vga.dev: $(s3vga_)
  2119.     $(SETDEV) s3vga $(s3vga_)
  2120.  
  2121. gdevs3ga.$(OBJ): gdevs3ga.c $(GDEV) $(MAKEFILE) $(gdevpcfb_h) $(gdevsvga_h)
  2122.     $(CCD) gdevs3ga.c
  2123.  
  2124. ### ------------ The BGI (Borland Graphics Interface) device ----------- ###
  2125.  
  2126. cgaf.$(OBJ): $(BGIDIR)\cga.bgi
  2127.     $(BGIDIR)\bgiobj /F $(BGIDIR)\cga
  2128.  
  2129. egavgaf.$(OBJ): $(BGIDIR)\egavga.bgi
  2130.     $(BGIDIR)\bgiobj /F $(BGIDIR)\egavga
  2131.  
  2132. # Include egavgaf.$(OBJ) for debugging only.
  2133. bgi_=gdevbgi.$(OBJ) cgaf.$(OBJ)
  2134. bgi.dev: $(bgi_)
  2135.     $(SETDEV) bgi $(bgi_)
  2136.     $(ADDMOD) bgi -lib $(LIBDIR)\graphics
  2137.  
  2138. gdevbgi.$(OBJ): gdevbgi.c $(GDEV) $(MAKEFILE) $(gxxfont_h)
  2139.     $(CCC) -DBGI_LIB="$(BGIDIRSTR)" gdevbgi.c
  2140.  
  2141. ### ------------------- The Hercules Graphics display ------------------- ###
  2142.  
  2143. herc_=gdevherc.$(OBJ)
  2144. herc.dev: $(herc_)
  2145.     $(SETDEV) herc $(herc_)
  2146.  
  2147. gdevherc.$(OBJ): gdevherc.c $(GDEV)
  2148.     $(CCC) gdevherc.c
  2149.  
  2150. ###### ----------------------- Other displays ------------------------ ######
  2151.  
  2152. ### ---------------------- The Private Eye display ---------------------- ###
  2153. ### Note: this driver was contributed by a user:                          ###
  2154. ###   please contact narf@media-lab.media.mit.edu if you have questions.  ###
  2155.  
  2156. pe_=gdevpe.$(OBJ)
  2157. pe.dev: $(pe_)
  2158.     $(SETDEV) pe $(pe_)
  2159.  
  2160. gdevpe.$(OBJ): gdevpe.c $(GDEV)
  2161.  
  2162. ### -------------------- The MS-Windows 3.n display --------------------- ###
  2163.  
  2164. gdevmswn_h=gdevmswn.h $(GDEV) gp_mswin.h
  2165.  
  2166. # Choose one of gdevwddb or gdevwdib here.
  2167. mswin_=gdevmswn.$(OBJ) gdevmsxf.$(OBJ) gdevwdib.$(OBJ) \
  2168.   gdevemap.$(OBJ) gdevpccm.$(OBJ)
  2169. mswin.dev: $(mswin_)
  2170.     $(SETDEV) mswin $(mswin_)
  2171.  
  2172. gdevmswn.$(OBJ): gdevmswn.c $(gdevmswn_h) $(gp_h) $(gpcheck_h) \
  2173.   $(gsparam_h) $(gdevpccm_h)
  2174.  
  2175. gdevmsxf.$(OBJ): gdevmsxf.c $(ctype__h) $(math__h) $(memory__h) \
  2176.   $(gdevmswn_h) $(gsstruct_h) $(gsutil_h) $(gxxfont_h)
  2177.  
  2178. # An implementation using a device-dependent bitmap.
  2179. gdevwddb.$(OBJ): gdevwddb.c $(gdevmswn_h)
  2180.  
  2181. # An implementation using a DIB filled by an image device.
  2182. gdevwdib.$(OBJ): gdevwdib.c $(dos__h) $(gdevmswn_h)
  2183.  
  2184. ### -------------------- The MS-Windows 3.n DLL ------------------------- ###
  2185. gdevmswn_h=gdevmswn.h $(GDEV) gp_mswin.h
  2186.  
  2187. # Must use gdevwdib.  mswin device must use the same.
  2188. mswindll_=gdevmswn.$(OBJ) gdevmsxf.$(OBJ) gdevwdib.$(OBJ) \
  2189.   gdevemap.$(OBJ) gdevpccm.$(OBJ)
  2190. mswindll.dev: $(mswindll_)
  2191.     $(SETDEV) mswindll $(mswindll_)
  2192.  
  2193. ### -------------------- The MS-Windows 3.n printer --------------------- ###
  2194.  
  2195. mswinprn_=gdevwprn.$(OBJ) gdevmsxf.$(OBJ)
  2196. mswinprn.dev: $(mswinprn_)
  2197.     $(SETDEV) mswinprn $(mswinprn_)
  2198.  
  2199. gdevwprn.$(OBJ): gdevwprn.c $(gdevmswn_h) $(gp_h)
  2200.  
  2201. ### ------------------ OS/2 Presentation Manager device ----------------- ###
  2202.  
  2203. os2pm_=gdevpm.$(OBJ) gdevpccm.$(OBJ)
  2204. os2pm.dev: $(os2pm_)
  2205.     $(SETDEV) os2pm $(os2pm_)
  2206.  
  2207. os2dll_=gdevpm.$(OBJ) gdevpccm.$(OBJ)
  2208. os2dll.dev: $(os2dll_)
  2209.     $(SETDEV) os2dll $(os2dll_)
  2210.  
  2211. gdevpm.$(OBJ): gdevpm.c $(gp_h) $(gpcheck_h) \
  2212.   $(gsexit_h) $(gsparam_h) $(gdevpccm_h)
  2213.  
  2214. ### -------------- The AT&T 3b1 Unixpc monochrome display --------------- ###
  2215. ### Note: this driver was contributed by a user: please contact           ###
  2216. ###       Andy Fyfe (andy@cs.caltech.edu) if you have questions.          ###
  2217.  
  2218. att3b1_=gdev3b1.$(OBJ)
  2219. att3b1.dev: $(att3b1_)
  2220.     $(SETDEV) att3b1 $(att3b1_)
  2221.  
  2222. gdev3b1.$(OBJ): gdev3b1.c
  2223.  
  2224. ### ------------------------- DEC sixel displays ------------------------ ###
  2225. ### Note: this driver was contributed by a user: please contact           ###
  2226. ###   Phil Keegstra (keegstra@tonga.gsfc.nasa.gov) if you have questions. ###
  2227.  
  2228. # This is a "printer" device, but it probably shouldn't be.
  2229. # I don't know why the implementor chose to do it this way.
  2230. sxlcrt_=gdevln03.$(OBJ) gdevprn.$(OBJ)
  2231. sxlcrt.dev: $(sxlcrt_)
  2232.     $(SETDEV) sxlcrt $(sxlcrt_)
  2233.  
  2234. ###### --------------- Memory-buffered printer devices --------------- ######
  2235.  
  2236. PDEVH=$(GDEV) $(gdevprn_h)
  2237.  
  2238. gdevprn.$(OBJ): gdevprn.c $(PDEVH) $(gp_h) $(gsparam_h)
  2239.  
  2240. ### ----------------- The Atari ST vdi screen device ------------------- ###
  2241. ### Note that you can set the default density in the command line below. ###
  2242.  
  2243. stvdi_=gdevvdi.$(OBJ) gdevprn.$(OBJ)
  2244. stvdi.dev: $(stvdi_)
  2245.     $(SHP)gssetdev stvdi $(stvdi_)
  2246.  
  2247. gdevvdi.$(OBJ): gdevvdi.c gdevvdi.h st_defs.h $(PDEVH) devs.mak
  2248. #    $(CCC) -DX_DPI=100 -DY_DPI=100 gdevvdi.c
  2249.  
  2250. ### -------------- The Atari SLM 804 laser printer device -------------- ###
  2251. ###              Note: this driver was contributed by users:             ###
  2252. ###       please contact stabl@fmi.uni-passau.de if you have questions.  ###
  2253.  
  2254. slm_=gdevslm.$(OBJ) gdevprn.$(OBJ)
  2255. slm.dev: $(slm_)
  2256.     $(SHP)gssetdev slm $(slm_)
  2257.  
  2258. gdevslm.$(OBJ): gdevslm.c $(PDEVH) devs.mak
  2259.  
  2260. ### -------------------- The Atari GEM image device -------------------- ###
  2261. ### Note: this driver was contributed by users:                  ###
  2262. ### please contact haebler@dmswwu1a.uni-muenster.de if you have questions###
  2263.  
  2264. gemimg_=gdevgimg.$(OBJ) gdevprn.$(OBJ)
  2265. gemimg.dev: $(gemimg_)
  2266.     $(SHP)gssetdev gemimg $(gemimg_)
  2267.  
  2268. gdevgimg.$(OBJ): gdevgimg.c $(PDEVH) devs.mak
  2269.  
  2270.  
  2271. ### --------------------- The Apple printer devices --------------------- ###
  2272. ### Note: these drivers were contributed by users.                        ###
  2273. ###   If you have questions about the DMP driver, please contact          ###
  2274. ###    Mark Wedel (master@cats.ucsc.edu).                                ###
  2275. ###   If you have questions about the Imagewriter drivers, please contact ###
  2276. ###     Jonathan Luckey (luckey@rtfm.mlb.fl.us).                          ###
  2277.  
  2278. appledmp_=gdevadmp.$(OBJ) gdevprn.$(OBJ)
  2279.  
  2280. appledmp.dev: $(appledmp_)
  2281.     $(SETDEV) appledmp $(appledmp_)
  2282.  
  2283. iwhi.dev: $(appledmp_)
  2284.     $(SETDEV) iwhi $(appledmp_)
  2285.  
  2286. iwlo.dev: $(appledmp_)
  2287.     $(SETDEV) iwlo $(appledmp_)
  2288.  
  2289. ### ------------ The Canon BubbleJet BJ10e and BJ200 devices ------------ ###
  2290.  
  2291. bj10e_=gdevbj10.$(OBJ) gdevprn.$(OBJ)
  2292.  
  2293. bj10e.dev: $(bj10e_)
  2294.     $(SETDEV) bj10e $(bj10e_)
  2295.  
  2296. bj200.dev: $(bj10e_)
  2297.     $(SETDEV) bj200 $(bj10e_)
  2298.  
  2299. gdevbj10.$(OBJ): gdevbj10.c $(PDEVH)
  2300.  
  2301. ### ----------- The H-P DeskJet and LaserJet printer devices ----------- ###
  2302.  
  2303. ### These are essentially the same device.
  2304. ### NOTE: printing at full resolution (300 DPI) requires a printer
  2305. ###   with at least 1.5 Mb of memory.  150 DPI only requires .5 Mb.
  2306.  
  2307. HPPCL=gdevprn.$(OBJ) gdevpcl.$(OBJ)
  2308. HPMONO=gdevdjet.$(OBJ) $(HPPCL)
  2309.  
  2310. gdevpcl.$(OBJ): gdevpcl.c $(PDEVH) $(gdevpcl_h)
  2311.  
  2312. gdevdjet.$(OBJ): gdevdjet.c $(PDEVH) $(gdevpcl_h)
  2313.  
  2314. deskjet.dev: $(HPMONO)
  2315.     $(SETDEV) deskjet $(HPMONO)
  2316.  
  2317. djet500.dev: $(HPMONO)
  2318.     $(SETDEV) djet500 $(HPMONO)
  2319.  
  2320. laserjet.dev: $(HPMONO)
  2321.     $(SETDEV) laserjet $(HPMONO)
  2322.  
  2323. ljetplus.dev: $(HPMONO)
  2324.     $(SETDEV) ljetplus $(HPMONO)
  2325.  
  2326. ### Selecting ljet2p provides TIFF (mode 2) compression on LaserJet III,
  2327. ### IIIp, IIId, IIIsi, IId, and IIp. 
  2328.  
  2329. ljet2p.dev: $(HPMONO)
  2330.     $(SETDEV) ljet2p $(HPMONO)
  2331.  
  2332. ### Selecting ljet3 provides Delta Row (mode 3) compression on LaserJet III,
  2333. ### IIIp, IIId, IIIsi.
  2334.  
  2335. ljet3.dev: $(HPMONO)
  2336.     $(SETDEV) ljet3 $(HPMONO)
  2337.  
  2338. ### Selecting ljet4 also provides Delta Row compression on LaserJet IV series.
  2339.  
  2340. ljet4.dev: $(HPMONO)
  2341.     $(SETDEV) ljet4 $(HPMONO)
  2342.  
  2343. lp2563.dev: $(HPMONO)
  2344.     $(SETDEV) lp2563 $(HPMONO)
  2345.  
  2346. ### The H-P DeskJet, PaintJet, and DesignJet family color printer devices.###
  2347. ### Note: there are two different 500C drivers, both contributed by users.###
  2348. ###   If you have questions about the djet500c driver,                    ###
  2349. ###       please contact AKayser@et.tudelft.nl.                           ###
  2350. ###   If you have questions about the cdj* drivers,                       ###
  2351. ###       please contact g.cameron@biomed.abdn.ac.uk.                     ###
  2352. ###   If you have questions about the dnj560c driver,                     ###
  2353. ###       please contact koert@digex.net.                                 ###
  2354.  
  2355. cdeskjet_=gdevcdj.$(OBJ) $(HPPCL)
  2356.  
  2357. cdeskjet.dev: $(cdeskjet_)
  2358.     $(SETDEV) cdeskjet $(cdeskjet_)
  2359.  
  2360. cdjcolor.dev: $(cdeskjet_)
  2361.     $(SETDEV) cdjcolor $(cdeskjet_)
  2362.  
  2363. cdjmono.dev: $(cdeskjet_)
  2364.     $(SETDEV) cdjmono $(cdeskjet_)
  2365.  
  2366. cdj500.dev: $(cdeskjet_)
  2367.     $(SETDEV) cdj500 $(cdeskjet_)
  2368.  
  2369. cdj550.dev: $(cdeskjet_)
  2370.     $(SETDEV) cdj550 $(cdeskjet_)
  2371.  
  2372. declj250.dev: $(cdeskjet_)
  2373.     $(SETDEV) declj250 $(cdeskjet_)
  2374.  
  2375. dnj650c.dev: $(cdeskjet_)
  2376.     $(SETDEV) dnj650c $(cdeskjet_)
  2377.  
  2378. pj.dev: $(cdeskjet_)
  2379.     $(SETDEV) pj $(cdeskjet_)
  2380.  
  2381. pjxl.dev: $(cdeskjet_)
  2382.     $(SETDEV) pjxl $(cdeskjet_)
  2383.  
  2384. pjxl300.dev: $(cdeskjet_)
  2385.     $(SETDEV) pjxl300 $(cdeskjet_)
  2386.  
  2387. # NB: you can also customise the build if required, using
  2388. # -DBitsPerPixel=<number> if you wish the default to be other than 24
  2389. # for the generic drivers (cdj500, cdj550, pjxl300, pjtest, pjxltest).
  2390. gdevcdj.$(OBJ): gdevcdj.c $(PDEVH) $(gdevpcl_h)
  2391.     $(CCC) gdevcdj.c
  2392.  
  2393. djet500c_=gdevdjtc.$(OBJ) $(HPPCL)
  2394. djet500c.dev: $(djet500c_)
  2395.     $(SETDEV) djet500c $(djet500c_)
  2396.  
  2397. gdevdjtc.$(OBJ): gdevdjtc.c $(PDEVH) $(gdevpcl_h)
  2398.  
  2399. ### -------------------- The Mitsubishi CP50 printer -------------------- ###
  2400. ### Note: this driver was contributed by a user: please contact           ###
  2401. ###       Michael Hu (michael@ximage.com) if you have questions.          ###
  2402.  
  2403. cp50_=gdevcp50.$(OBJ) gdevprn.$(OBJ)
  2404. cp50.dev: $(cp50_)
  2405.     $(SETDEV) cp50 $(cp50_)
  2406.  
  2407. gdevcp50.$(OBJ): gdevcp50.c $(PDEVH)
  2408.  
  2409. ### ----------------- The generic Epson printer device ----------------- ###
  2410. ### Note: most of this code was contributed by users.  Please contact    ###
  2411. ###       the following people if you have questions:                    ###
  2412. ###   eps9mid - Guenther Thomsen (thomsen@cs.tu-berlin.de)               ###
  2413. ###   eps9high - David Wexelblat (dwex@mtgzfs3.att.com)                  ###
  2414. ###   ibmpro - James W. Birdsall (jwbirdsa@picarefy.picarefy.com)        ###
  2415.  
  2416. epson_=gdevepsn.$(OBJ) gdevprn.$(OBJ)
  2417.  
  2418. epson.dev: $(epson_)
  2419.     $(SETDEV) epson $(epson_)
  2420.  
  2421. eps9mid.dev: $(epson_)
  2422.     $(SETDEV) eps9mid $(epson_)
  2423.  
  2424. eps9high.dev: $(epson_)
  2425.     $(SETDEV) eps9high $(epson_)
  2426.  
  2427. gdevepsn.$(OBJ): gdevepsn.c $(PDEVH)
  2428.  
  2429. ### ----------------- The IBM Proprinter printer device ---------------- ###
  2430.  
  2431. ibmpro.dev: $(epson_)
  2432.     $(SETDEV) ibmpro $(epson_)
  2433.  
  2434. ### -------------- The Epson LQ-2550 color printer device -------------- ###
  2435. ### Note: this driver was contributed by users: please contact           ###
  2436. ###       Dave St. Clair (dave@exlog.com) if you have questions.         ###
  2437.  
  2438. epsonc_=gdevepsc.$(OBJ) gdevprn.$(OBJ)
  2439. epsonc.dev: $(epsonc_)
  2440.     $(SETDEV) epsonc $(epsonc_)
  2441.  
  2442. gdevepsc.$(OBJ): gdevepsc.c $(PDEVH)
  2443.  
  2444. ### ------------ The Epson ESC/P 2 language printer devices ------------ ###
  2445. ### Note: these drivers were contributed by a user: please contact       ###
  2446. ###       Richard Brown (rab@tauon.ph.unimelb.edu.au) with any questions.###
  2447. ### This driver supports the Stylus 800 and AP3250 printers.             ###
  2448.  
  2449. ESCP2=gdevescp.$(OBJ) gdevprn.$(OBJ)
  2450.  
  2451. gdevescp.$(OBJ): gdevescp.c $(PDEVH)
  2452.  
  2453. ap3250.dev: $(ESCP2)
  2454.     $(SETDEV) ap3250 $(ESCP2)
  2455.  
  2456. st800.dev: $(ESCP2)
  2457.     $(SETDEV) st800 $(ESCP2)
  2458.  
  2459. ### ------------ The H-P PaintJet color printer device ----------------- ###
  2460. ### Note: this driver also supports the DEC LJ250 color printer, which   ###
  2461. ###       has a PaintJet-compatible mode, and the PaintJet XL.           ###
  2462. ### If you have questions about the XL, please contact Rob Reiss         ###
  2463. ###       (rob@moray.berkeley.edu).                                      ###
  2464.  
  2465. PJET=gdevpjet.$(OBJ) $(HPPCL)
  2466.  
  2467. gdevpjet.$(OBJ): gdevpjet.c $(PDEVH) $(gdevpcl_h)
  2468.  
  2469. lj250.dev: $(PJET)
  2470.     $(SETDEV) lj250 $(PJET)
  2471.  
  2472. paintjet.dev: $(PJET)
  2473.     $(SETDEV) paintjet $(PJET)
  2474.  
  2475. pjetxl.dev: $(PJET)
  2476.     $(SETDEV) pjetxl $(PJET)
  2477.  
  2478. ### -------------- Imagen ImPress Laser Printer device ----------------- ###
  2479. ### Note: this driver was contributed by a user: please contact          ###
  2480. ###       Alan Millar (AMillar@bolis.sf-bay.org) if you have questions.  ###
  2481. ### Set USE_BYTE_STREAM if using parallel interface;                     ###
  2482. ### Don't set it if using 'ipr' spooler (default).                       ###
  2483. ### You may also add -DA4 if needed for A4 paper.             ###
  2484.  
  2485. imagen_=gdevimgn.$(OBJ) gdevprn.$(OBJ)
  2486. imagen.dev: $(imagen_)
  2487.     $(SHP)gssetdev imagen $(imagen_)
  2488.  
  2489. gdevimgn.$(OBJ): gdevimgn.c $(PDEVH)
  2490.     $(CCC) gdevimgn.c            # for ipr spooler
  2491. #    $(CCC) -DUSE_BYTE_STREAM gdevimgn.c    # for parallel
  2492.  
  2493. ### ------- The IBM 3852 JetPrinter color inkjet printer device -------- ###
  2494. ### Note: this driver was contributed by users: please contact           ###
  2495. ###       Kevin Gift (kgift@draper.com) if you have questions.           ###
  2496. ### Note that the paper size that can be addressed by the graphics mode  ###
  2497. ###   used in this driver is fixed at 7-1/2 inches wide (the printable   ###
  2498. ###   width of the jetprinter itself.)                                   ###
  2499.  
  2500. jetp3852_=gdev3852.$(OBJ) gdevprn.$(OBJ)
  2501. jetp3852.dev: $(jetp3852_)
  2502.     $(SETDEV) jetp3852 $(jetp3852_)
  2503.  
  2504. gdevjetp.$(OBJ): gdevjetp.c $(PDEVH) $(gdevpcl_h)
  2505.  
  2506. ### ---------- The Canon LBP-8II and LIPS III printer devices ---------- ###
  2507. ### Note: these drivers were contributed by users.                       ###
  2508. ### For questions about the LBP8 driver, please contact                  ###
  2509. ###       Tom Quinn (trq@prg.oxford.ac.uk).                              ###
  2510. ### For questions about the LIPS III driver, please contact              ###
  2511. ###       Kenji Okamoto (okamoto@okamoto.cias.osakafu-u.ac.jp).          ###
  2512.  
  2513. lbp8_=gdevlbp8.$(OBJ) gdevprn.$(OBJ)
  2514. lbp8.dev: $(lbp8_)
  2515.     $(SETDEV) lbp8 $(lbp8_)
  2516.  
  2517. lips3.dev: $(lbp8_)
  2518.     $(SETDEV) lips3 $(lips3_)
  2519.  
  2520. gdevlbp8.$(OBJ): gdevlbp8.c $(PDEVH)
  2521.  
  2522. ### ----------- The DEC LN03/LA50/LA70/LA75 printer devices ------------ ###
  2523. ### Note: this driver was contributed by users: please contact           ###
  2524. ###       Ulrich Mueller (ulm@vsnhd1.cern.ch) if you have questions.     ###
  2525. ### For questions about LA50 and LA75, please contact                    ###
  2526. ###       Ian MacPhedran (macphed@dvinci.USask.CA).                      ###
  2527. ### For questions about the LA70, please contact                         ###
  2528. ###       Bruce Lowekamp (lowekamp@csugrad.cs.vt.edu).                   ###
  2529. ### For questions about the LA75plus, please contact                     ###
  2530. ###       Andre' Beck (Andre_Beck@IRS.Inf.TU-Dresden.de).                ###
  2531.  
  2532. ln03_=gdevln03.$(OBJ) gdevprn.$(OBJ)
  2533. ln03.dev: $(ln03_)
  2534.     $(SETDEV) ln03 $(ln03_)
  2535.  
  2536. la50.dev: $(ln03_)
  2537.     $(SETDEV) la50 $(ln03_)
  2538.  
  2539. la70.dev: $(ln03_)
  2540.     $(SETDEV) la70 $(ln03_)
  2541.  
  2542. la75.dev: $(ln03_)
  2543.     $(SETDEV) la75 $(ln03_)
  2544.  
  2545. la75plus.dev: $(ln03_)
  2546.     $(SETDEV) la75plus $(ln03_)
  2547.  
  2548. gdevln03.$(OBJ): gdevln03.c $(PDEVH)
  2549.  
  2550. # LA70 driver with low-resolution text enhancement.
  2551.  
  2552. la70t_=gdevla7t.$(OBJ) gdevprn.$(OBJ)
  2553. la70t.dev: $(la70t_)
  2554.     $(SETDEV) la70t $(la70t_)
  2555.  
  2556. gdevla7t.$(OBJ): gdevla7t.c $(PDEVH)
  2557.  
  2558. ### -------------- The C.Itoh M8510 printer device --------------------- ###
  2559. ### Note: this driver was contributed by a user: please contact Bob      ###
  2560. ###       Smith <bob@snuffy.penfield.ny.us> if you have questions.       ###
  2561.  
  2562. m8510_=gdev8510.$(OBJ) gdevprn.$(OBJ)
  2563. m8510.dev: $(m8510_)
  2564.     $(SETDEV) m8510 $(m8510_)
  2565.  
  2566. gdev8510.$(OBJ): gdev8510.c $(PDEVH)
  2567.  
  2568. ### --------------------- The NEC P6 family devices -------------------- ###
  2569.  
  2570. necp6_=gdevnp6.$(OBJ) gdevprn.$(OBJ)
  2571. necp6.dev: $(necp6_)
  2572.     $(SETDEV) necp6 $(necp6_)
  2573.  
  2574. gdevnp6.$(OBJ): gdevnp6.c $(PDEVH)
  2575.  
  2576. ### ----------------- The Okidata MicroLine 182 device ----------------- ###
  2577. ### Note: this driver was contributed by a user: please contact          ###
  2578. ###       Maarten Koning (smeg@bnr.ca) if you have questions.            ###
  2579.  
  2580. oki182_=gdevo182.$(OBJ) gdevprn.$(OBJ)
  2581. oki182.dev: $(oki182_)
  2582.     $(SETDEV) oki182 $(oki182_)
  2583.  
  2584. gdevo182.$(OBJ): gdevo182.c $(PDEVH)
  2585.  
  2586. ### ------------- The Ricoh 4081 laser printer device ------------------ ###
  2587. ### Note: this driver was contributed by users:                          ###
  2588. ###       please contact kdw@oasis.icl.co.uk if you have questions.      ###
  2589.  
  2590. r4081_=gdev4081.$(OBJ) gdevprn.$(OBJ)
  2591. r4081.dev: $(r4081_)
  2592.     $(SETDEV) r4081 $(r4081_)
  2593.  
  2594. gdev4081.$(OBJ): gdev4081.c $(PDEVH)
  2595.  
  2596. ###### ------------------------ Sony devices ------------------------ ######
  2597. ### Note: these drivers were contributed by users: please contact        ###
  2598. ###       Mike Smolenski (mike@intertech.com) if you have questions.     ###
  2599.  
  2600. ### ------------------- Sony NeWS frame buffer device ------------------ ###
  2601.  
  2602. sonyfb_=gdevsnfb.$(OBJ) gdevprn.$(OBJ)
  2603. sonyfb.dev: $(sonyfb_)
  2604.     $(SETDEV) sonyfb $(sonyfb_)
  2605.  
  2606. gdevsnfb.$(OBJ): gdevsnfb.c $(PDEVH)
  2607.  
  2608. ### -------------------- Sony NWP533 printer device -------------------- ###
  2609. ### Note: this driver was contributed by a user: please contact Tero     ###
  2610. ###       Kivinen (kivinen@joker.cs.hut.fi) if you have questions.       ###
  2611.  
  2612. nwp533_=gdevn533.$(OBJ) gdevprn.$(OBJ)
  2613. nwp533.dev: $(nwp533_)
  2614.     $(SETDEV) nwp533 $(nwp533_)
  2615.  
  2616. gdevn533.$(OBJ): gdevn533.c $(PDEVH)
  2617.  
  2618. ### ------------------------- The SPARCprinter ------------------------- ###
  2619. ### Note: this driver was contributed by users: please contact Martin    ###
  2620. ###       Schulte (schulte@thp.uni-koeln.de) if you have questions.      ###
  2621. ###       He would also like to hear from anyone using the driver.       ###
  2622. ### Please consult the source code for additional documentation.         ###
  2623.  
  2624. sparc_=gdevsppr.$(OBJ) gdevprn.$(OBJ)
  2625. sparc.dev: $(sparc_)
  2626.     $(SETDEV) sparc $(sparc_)
  2627.  
  2628. gdevsppr.$(OBJ): gdevsppr.c $(PDEVH)
  2629.  
  2630. ### ----------------- The StarJet SJ48 device -------------------------- ###
  2631. ### Note: this driver was contributed by a user: if you have questions,  ###
  2632. ###                          .                                          ###
  2633. ###       please contact Mats Akerblom (f86ma@dd.chalmers.se).           ###
  2634.  
  2635. sj48_=gdevsj48.$(OBJ) gdevprn.$(OBJ)
  2636. sj48.dev: $(sj48_)
  2637.     $(SETDEV) sj48 $(sj48_)
  2638.  
  2639. gdevsj48.$(OBJ): gdevsj48.c $(PDEVH)
  2640.  
  2641. ###### --------------------- The SunView device --------------------- ######
  2642. ### Note: this driver is maintained by a user: if you have questions,    ###
  2643. ###       please contact Andreas Stolcke (stolcke@icsi.berkeley.edu).    ###
  2644.  
  2645. sunview_=gdevsun.$(OBJ)
  2646. sunview.dev: $(sunview_)
  2647.     $(SETDEV) sunview $(sunview_)
  2648.     $(ADDMOD) sunview -lib suntool sunwindow pixrect
  2649.  
  2650. gdevsun.$(OBJ): gdevsun.c $(GDEV) $(arch_h)
  2651.  
  2652. ### ----------------- Tektronix 4396d color printer -------------------- ###
  2653. ### Note: this driver was contributed by a user: please contact          ###
  2654. ###       Karl Hakimian (hakimian@haney.eecs.wsu.edu)                    ###
  2655. ###       if you have questions.                                         ###
  2656.  
  2657. t4693d_=gdev4693.$(OBJ) gdevprn.$(OBJ)
  2658. t4693d2.dev: $(t4693d_)
  2659.     $(SETDEV) t4693d2 $(t4693d_)
  2660.  
  2661. t4693d4.dev: $(t4693d_)
  2662.     $(SETDEV) t4693d4 $(t4693d_)
  2663.  
  2664. t4693d8.dev: $(t4693d_)
  2665.     $(SETDEV) t4693d8 $(t4693d_)
  2666.  
  2667. gdev4693.$(OBJ): gdev4693.c $(GDEV)
  2668.  
  2669. ### -------------------- Tektronix ink-jet printers -------------------- ###
  2670. ### Note: this driver was contributed by a user: please contact          ###
  2671. ###       Karsten Spang (spang@nbivax.nbi.dk) if you have questions.     ###
  2672.  
  2673. tek4696_=gdevtknk.$(OBJ) gdevprn.$(OBJ)
  2674. tek4696.dev: $(tek4696_)
  2675.     $(SETDEV) tek4696 $(tek4696_)
  2676.  
  2677. gdevtknk.$(OBJ): gdevtknk.c $(PDEVH)
  2678.  
  2679. ###### ------------------------- Fax devices ------------------------- ######
  2680.  
  2681. ### --------------- Generic PostScript system compatible fax ------------ ###
  2682.  
  2683. # This code doesn't work yet.  Don't even think about using it.
  2684.  
  2685. PSFAX=gdevpfax.$(OBJ) gdevprn.$(OBJ)
  2686.  
  2687. psfax_=$(PSFAX)
  2688. psfax.dev: $(psfax_)
  2689.     $(SETDEV) psfax $(psfax_)
  2690.     $(ADDMOD) psfax -iodev Fax
  2691.  
  2692. gdevpfax.$(OBJ): gdevpfax.c $(PDEVH) $(gxiodev_h)
  2693.  
  2694. ### ------------------------- The DigiFAX device ------------------------ ###
  2695. ###    This driver outputs images in a format suitable for use with       ###
  2696. ###    DigiBoard, Inc.'s DigiFAX software.  Use -sDEVICE=dfaxhigh for     ###
  2697. ###    high resolution output, -sDEVICE=dfaxlow for normal output.        ###
  2698. ### Note: this driver was contributed by a user: please contact           ###
  2699. ###       Rick Richardson (rick@digibd.com) if you have questions.        ###
  2700.  
  2701. dfax_=gdevdfax.$(OBJ) gdevtfax.$(OBJ) gdevprn.$(OBJ) scfe.$(OBJ) scftab.$(OBJ) sbits.$(OBJ)
  2702.  
  2703. dfaxlow.dev: $(dfax_)
  2704.     $(SETDEV) dfaxlow $(dfax_)
  2705.  
  2706. dfaxhigh.dev: $(dfax_)
  2707.     $(SETDEV) dfaxhigh $(dfax_)
  2708.  
  2709. gdevdfax.$(OBJ): gdevdfax.c $(GDEV) $(gdevprn_h)
  2710.  
  2711. ###### ------------------- Linux PC with vgalib ---------------------- ######
  2712. ### Note: this driver was contributed by users: please contact           ###
  2713. ###       Erik Talvola (talvola@gnu.ai.mit.edu) if you have questions.   ###
  2714.  
  2715. vgalib_=gdevvglb.$(OBJ)
  2716. vgalib.dev: $(vgalib_)
  2717.     $(SETDEV) vgalib $(vgalib_)
  2718.     $(ADDMOD) vgalib -lib vga
  2719.  
  2720. gdevvglb.$(OBJ): gdevvglb.c $(GDEV)
  2721.  
  2722. ###### ----------------------- The X11 device ----------------------- ######
  2723.  
  2724. # Aladdin Enterprises does not support Ghostview.  For more information
  2725. # about Ghostview, please contact Tim Theisen (ghostview@cs.wisc.edu).
  2726.  
  2727. # See the main makefile for the definition of XLIBS.
  2728. x11_=gdevx.$(OBJ) gdevxini.$(OBJ) gdevxxf.$(OBJ) gdevemap.$(OBJ)
  2729. x11.dev: $(x11_)
  2730.     $(SETDEV) x11 $(x11_)
  2731.     $(ADDMOD) x11 -lib $(XLIBS)
  2732.  
  2733. # See the main makefile for the definition of XINCLUDE.
  2734. GDEVX=$(GDEV) x_.h gdevx.h $(MAKEFILE)
  2735. gdevx.$(OBJ): gdevx.c $(GDEVX) $(gsparam_h)
  2736.     $(CCC) $(XINCLUDE) gdevx.c
  2737.  
  2738. gdevxini.$(OBJ): gdevxini.c $(GDEVX) $(ctype__h)
  2739.     $(CCC) $(XINCLUDE) gdevxini.c
  2740.  
  2741. gdevxxf.$(OBJ): gdevxxf.c $(GDEVX) $(gsstruct_h) $(gsutil_h) $(gxxfont_h)
  2742.     $(CCC) $(XINCLUDE) gdevxxf.c
  2743.  
  2744. ### ----------------- The Xerox XES printer device --------------------- ###
  2745. ### Note: this driver was contributed by users: please contact           ###
  2746. ###       Peter Flass (flass@lbdrscs.bitnet) if you have questions.      ###
  2747.  
  2748. xes_=gdevxes.$(OBJ) gdevprn.$(OBJ)
  2749. xes.dev: $(xes_)
  2750.     $(SETDEV) xes $(xes_)
  2751.  
  2752. gdevxes.$(OBJ): gdevxes.c $(GDEV)
  2753.  
  2754. ### --------------------- The "plain bits" device ----------------------- ###
  2755.  
  2756. bit_=gdevbit.$(OBJ) gdevprn.$(OBJ)
  2757. bit.dev: $(bit_)
  2758.     $(SETDEV) bit $(bit_)
  2759.  
  2760. gdevbit.$(OBJ): gdevbit.c $(PDEVH) $(gsparam_h) $(gxlum_h)
  2761.  
  2762. ###### ----------------------- PC file formats ----------------------- ######
  2763.  
  2764. ### ------------------------- .BMP file formats ------------------------- ###
  2765.  
  2766. bmp_=gdevbmp.$(OBJ) gdevpccm.$(OBJ) gdevprn.$(OBJ)
  2767.  
  2768. gdevbmp.$(OBJ): gdevbmp.c $(PDEVH) $(gdevpccm_h)
  2769.  
  2770. bmpmono.dev: $(bmp_)
  2771.     $(SETDEV) bmpmono $(bmp_)
  2772.  
  2773. bmp16.dev: $(bmp_)
  2774.     $(SETDEV) bmp16 $(bmp_)
  2775.  
  2776. bmp256.dev: $(bmp_)
  2777.     $(SETDEV) bmp256 $(bmp_)
  2778.  
  2779. bmp16m.dev: $(bmp_)
  2780.     $(SETDEV) bmp16m $(bmp_)
  2781.  
  2782. ### -------------------- The CIF file format for VLSI ------------------ ###
  2783. ### Note: this driver was contributed by a user: please contact          ###
  2784. ###       Frederic Petrot (petrot@masi.ibp.fr) if you have questions.    ###
  2785.  
  2786. cif_=gdevcif.$(OBJ) gdevprn.$(OBJ)
  2787. cif.dev: $(cif_)
  2788.     $(SETDEV) cif $(cif_)
  2789.  
  2790. gdevcif.$(OBJ): gdevcif.c $(PDEVH)
  2791.  
  2792. ### ------------------------- GIF file formats ------------------------- ###
  2793.  
  2794. GIF=gdevgif.$(OBJ) gdevpccm.$(OBJ) gdevprn.$(OBJ)
  2795.  
  2796. gdevgif.$(OBJ): gdevgif.c $(PDEVH) $(gdevpccm_h)
  2797.  
  2798. gifmono.dev: $(GIF)
  2799.     $(SETDEV) gifmono $(GIF)
  2800.  
  2801. gif8.dev: $(GIF)
  2802.     $(SETDEV) gif8 $(GIF)
  2803.  
  2804. ### --------------------------- MGR devices ---------------------------- ###
  2805. ### Note: these drivers were contributed by a user: please contact       ###
  2806. ###       Carsten Emde (carsten@ce.pr.net.ch) if you have questions.     ###
  2807.  
  2808. MGR=gdevmgr.$(OBJ) gdevpccm.$(OBJ) gdevprn.$(OBJ)
  2809.  
  2810. gdevmgr.$(OBJ): gdevmgr.c $(PDEVH) $(gdevpccm_h) gdevmgr.h
  2811.  
  2812. mgrmono.dev: $(MGR)
  2813.     $(SETDEV) mgrmono $(MGR)
  2814.  
  2815. mgrgray2.dev: $(MGR)
  2816.     $(SETDEV) mgrgray2 $(MGR)
  2817.  
  2818. mgrgray4.dev: $(MGR)
  2819.     $(SETDEV) mgrgray4 $(MGR)
  2820.  
  2821. mgrgray8.dev: $(MGR)
  2822.     $(SETDEV) mgrgray8 $(MGR)
  2823.  
  2824. mgr4.dev: $(MGR)
  2825.     $(SETDEV) mgr4 $(MGR)
  2826.  
  2827. mgr8.dev: $(MGR)
  2828.     $(SETDEV) mgr8 $(MGR)
  2829.  
  2830. ### ------------------------- PCX file formats ------------------------- ###
  2831.  
  2832. pcx_=gdevpcx.$(OBJ) gdevpccm.$(OBJ) gdevprn.$(OBJ)
  2833.  
  2834. gdevpcx.$(OBJ): gdevpcx.c $(PDEVH) $(gdevpccm_h) $(gxlum_h)
  2835.  
  2836. pcxmono.dev: $(pcx_)
  2837.     $(SETDEV) pcxmono $(pcx_)
  2838.  
  2839. pcxgray.dev: $(pcx_)
  2840.     $(SETDEV) pcxgray $(pcx_)
  2841.  
  2842. pcx16.dev: $(pcx_)
  2843.     $(SETDEV) pcx16 $(pcx_)
  2844.  
  2845. pcx256.dev: $(pcx_)
  2846.     $(SETDEV) pcx256 $(pcx_)
  2847.  
  2848. pcx24b.dev: $(pcx_)
  2849.     $(SETDEV) pcx24b $(pcx_)
  2850.  
  2851. ###### ---------------- Portable Bitmap file formats ---------------- ######
  2852. ### For more information, see the pbm(5), pgm(5), and ppm(5) man pages.  ###
  2853.  
  2854. pxm_=gdevpbm.$(OBJ) gdevprn.$(OBJ)
  2855.  
  2856. gdevpbm.$(OBJ): gdevpbm.c $(PDEVH) $(gxlum_h)
  2857.  
  2858. ### Portable Bitmap (PBM, plain or raw format, magic numbers "P1" or "P4")
  2859.  
  2860. pbm.dev: $(pxm_)
  2861.     $(SETDEV) pbm $(pxm_)
  2862.  
  2863. pbmraw.dev: $(pxm_)
  2864.     $(SETDEV) pbmraw $(pxm_)
  2865.  
  2866. ### Portable Graymap (PGM, plain or raw format, magic numbers "P2" or "P5")
  2867.  
  2868. pgm.dev: $(pxm_)
  2869.     $(SETDEV) pgm $(pxm_)
  2870.  
  2871. pgmraw.dev: $(pxm_)
  2872.     $(SETDEV) pgmraw $(pxm_)
  2873.  
  2874. ### Portable Pixmap (PPM, plain or raw format, magic numbers "P3" or "P6")
  2875.  
  2876. ppm.dev: $(pxm_)
  2877.     $(SETDEV) ppm $(pxm_)
  2878.  
  2879. ppmraw.dev: $(pxm_)
  2880.     $(SETDEV) ppmraw $(pxm_)
  2881.  
  2882. ### -------------------- Plain or TIFF fax encoding --------------------- ###
  2883. ###    Use -sDEVICE=tiffg3 or tiffg4 and                  ###
  2884. ###      -r204x98 for low resolution output, or              ###
  2885. ###      -r204x196 for high resolution output                  ###
  2886. ###    These drivers recognize 3 page sizes: letter, A4, and B4.      ###
  2887.  
  2888. tfax_=gdevtfax.$(OBJ) gdevprn.$(OBJ) scfe.$(OBJ) scftab.$(OBJ) sbits.$(OBJ)
  2889.  
  2890. gdevtfax.$(OBJ): gdevtfax.c $(GDEV) $(gdevprn_h) gdevtifs.h
  2891.  
  2892. ### Plain G3/G4 fax with no header
  2893.  
  2894. faxg3.dev: $(tfax_)
  2895.     $(SETDEV) faxg3 $(tfax_)
  2896.  
  2897. faxg32d.dev: $(tfax_)
  2898.     $(SETDEV) faxg32d $(tfax_)
  2899.  
  2900. faxg4.dev: $(tfax_)
  2901.     $(SETDEV) faxg4 $(tfax_)
  2902.  
  2903. ### G3/G4 fax TIFF
  2904.  
  2905. tiffg3.dev: $(tfax_)
  2906.     $(SETDEV) tiffg3 $(tfax_)
  2907.  
  2908. tiffg32d.dev: $(tfax_)
  2909.     $(SETDEV) tiffg32d $(tfax_)
  2910.  
  2911. tiffg4.dev: $(tfax_)
  2912.     $(SETDEV) tiffg4 $(tfax_)
  2913. #    Copyright (C) 1990, 1992, 1993, 1994 Aladdin Enterprises.  All rights reserved.
  2914. # This file is part of Aladdin Ghostscript.
  2915. # Aladdin Ghostscript is distributed with NO WARRANTY OF ANY KIND.  No author
  2916. # or distributor accepts any responsibility for the consequences of using it,
  2917. # or for whether it serves any particular purpose or works at all, unless he
  2918. # or she says so in writing.  Refer to the Aladdin Ghostscript Free Public
  2919. # License (the "License") for full details.
  2920. # Every copy of Aladdin Ghostscript must include a copy of the License,
  2921. # normally in a plain ASCII text file named PUBLIC.  The License grants you
  2922. # the right to copy, modify and redistribute Aladdin Ghostscript, but only
  2923. # under certain conditions described in the License.  Among other things, the
  2924. # License requires that the copyright notice and this notice be preserved on
  2925. # all copies.
  2926.  
  2927. # Partial makefile common to all Unix configurations.
  2928.  
  2929. # This is the last part of the makefile for Unix configurations.
  2930. # Since Unix make doesn't have an 'include' facility, we concatenate
  2931. # the various parts of the makefile together by brute force (in tar_cat).
  2932.  
  2933. # The following prevents GNU make from constructing argument lists that
  2934. # include all environment variables, which can easily be longer than
  2935. # brain-damaged system V allows.
  2936.  
  2937. .NOEXPORT:
  2938.  
  2939. # -------------------------------- Library -------------------------------- #
  2940.  
  2941. ## The Atari platform.
  2942. ## The wstdio device is used to redirect console I/O to a window.
  2943.  
  2944. atari__= gp_tosfs.$(OBJ) gp_atar1.$(OBJ) gp_atar2.$(OBJ) gp_atar3.$(OBJ)\
  2945.  gp_atar4.$(OBJ) gdevpipe.$(OBJ)
  2946.  
  2947. atari_.dev: $(atari__)
  2948.     $(SETMOD) atari_ $(atari__)
  2949.     $(ADDMOD) atari_ -iodev pipe
  2950.     $(ADDMOD) atari_ -iodev wstdio
  2951.  
  2952. gp_tosfs.$(OBJ): gp_tosfs.c\
  2953.  $(AK) $(memory__h) $(string__h) $(gx_h) $(gp_h) \
  2954.  $(gsstruct_h) $(gsutil_h) $(stat__h) $(dirent__h)
  2955.  
  2956. gp_atar1.$(OBJ): gp_atar1.c gp_atar1.h st_bitmp.c st_defs.h \
  2957.  $(AK) $(memory__h) $(string__h) \
  2958.  $(gx_h) $(gp_h) $(stat__h) $(time__h) $(math__h) $(gserrors_h) \
  2959.  $(gsmatrix_h) $(gxdevice_h)
  2960.  
  2961. gp_atar2.$(OBJ): gp_atar2.c gp_atar2.h st_defs.h \
  2962.  $(AK) $(memory__h) $(string__h) \
  2963.  $(gx_h) $(gp_h) $(filedev_h) $(stream_h)
  2964.  
  2965. gp_atar3.$(OBJ): gp_atar3.c gp_atar3.h st_defs.h \
  2966.  $(AK) $(stdio__h) $(math_h)
  2967.  
  2968. gp_atar4.$(OBJ): gp_atar4.c gp_atar4.h st_defs.h \
  2969.  $(AK) $(memory__h) $(string__h) \
  2970.  $(gx_h) $(gp_h) $(stream_h) $(math_h)
  2971.  
  2972. gdevpipe.$(OBJ): gdevpipe.c $(AK) $(stdio__h) \
  2973.   $(gserror_h) $(gsmemory_h) $(gstypes_h) $(gxiodev_h) $(stream_h)
  2974.  
  2975. # System V platforms, which lack some system calls, but have pipes.
  2976. sysv__=gp_nofb.$(OBJ) gp_unix.$(OBJ) gp_unifs.$(OBJ) gp_unifn.$(OBJ) gp_sysv.$(OBJ) gdevpipe.$(OBJ)
  2977. sysv_.dev: $(sysv__)
  2978.     $(SETMOD) sysv_ $(sysv__)
  2979.     $(ADDMOD) sysv_ -iodev pipe
  2980.  
  2981. gp_sysv.$(OBJ): gp_sysv.c $(time__h) $(AK)
  2982.  
  2983. # -------------------------- Auxiliary programs --------------------------- #
  2984.  
  2985. ansi2knr$(LXE): ansi2knr.c $(stdio__h) $(string__h) $(malloc__h)
  2986.     $(CCAUX) $(O)ansi2knr$(LXE) ansi2knr.c
  2987.  
  2988. echogs$(LXE): echogs.c
  2989.     $(CCAUX) $(O)echogs$(LXE) echogs.c
  2990.  
  2991. # On the RS/6000 (at least), compiling genarch.c with gcc with -O
  2992. # produces a buggy executable.
  2993. genarch$(LXE): genarch.c
  2994.     $(CCAUX) $(O)genarch$(LXE) genarch.c
  2995.  
  2996. genconf$(LXE): genconf.c
  2997.     $(CCAUX) $(O)genconf$(LXE) genconf.c
  2998.  
  2999. # We need to query the environment to construct gconfig_.h.
  3000. INCLUDE=/usr/include
  3001. gconfig_.h: $(MAKEFILE) echogs$(LXE)
  3002.     ./echogs -w gconfig_.h -x 2f2a -s This file was generated automatically. -s -x 2a2f
  3003.     if ( test -f $(INCLUDE)/sys/time.h ) then ./echogs -a gconfig_.h -x 23 define SYSTIME_H;\
  3004.     fi
  3005.     if ( test -f $(INCLUDE)/dirent.h ) then ./echogs -a gconfig_.h -x 23 define DIRENT_H;\
  3006.     elif ( test -f $(INCLUDE)/sys/dir.h ) then ./echogs -a gconfig_.h -x 23 define SYSDIR_H;\
  3007.     elif ( test -f $(INCLUDE)/sys/ndir.h ) then ./echogs -a gconfig_.h -x 23 define SYSNDIR_H;\
  3008.     elif ( test -f $(INCLUDE)/ndir.h ) then ./echogs -a gconfig_.h -x 23 define NDIR_H;\
  3009.     fi
  3010.  
  3011. # ----------------------------- Main program ------------------------------ #
  3012.  
  3013. BEGINFILES=
  3014. CCBEGIN=$(CCC) *.c
  3015.  
  3016. # Interpreter main program
  3017.  
  3018. NONDEVS_ALL=gs.$(OBJ) gsmain.$(OBJ) $(INT_ALL) $(LIBGS) gconfig.$(OBJ)
  3019.  
  3020. $(GS)$(XE): ld.tr echogs $(NONDEVS_ALL) $(DEVS_ALL)
  3021.     ./echogs -w ldt.tr -n - $(CCLD) $(LDFLAGS) $(XLIBDIRS) -o $(GS)$(XE)
  3022.     ./echogs -a ldt.tr -n -s gs.$(OBJ) -s
  3023.     cat ld.tr >>ldt.tr
  3024.     ./echogs -a ldt.tr -s - $(EXTRALIBS) -lpml
  3025.     $(SH) <ldt.tr
  3026. #    Copyright (C) 1994 Aladdin Enterprises.  All rights reserved.
  3027. # This file is part of Aladdin Ghostscript.
  3028. # Aladdin Ghostscript is distributed with NO WARRANTY OF ANY KIND.  No author
  3029. # or distributor accepts any responsibility for the consequences of using it,
  3030. # or for whether it serves any particular purpose or works at all, unless he
  3031. # or she says so in writing.  Refer to the Aladdin Ghostscript Free Public
  3032. # License (the "License") for full details.
  3033. # Every copy of Aladdin Ghostscript must include a copy of the License,
  3034. # normally in a plain ASCII text file named PUBLIC.  The License grants you
  3035. # the right to copy, modify and redistribute Aladdin Ghostscript, but only
  3036. # under certain conditions described in the License.  Among other things, the
  3037. # License requires that the copyright notice and this notice be preserved on
  3038. # all copies.
  3039.  
  3040. # Partial makefile common to all Unix and Desqview/X configurations.
  3041.  
  3042. # This is the very last part of the makefile for these configurations.
  3043. # Since Unix make doesn't have an 'include' facility, we concatenate
  3044. # the various parts of the makefile together by brute force (in tar_cat).
  3045.  
  3046. # Installation
  3047.  
  3048. TAGS:
  3049.     etags -t *.c *.h
  3050.  
  3051. install: $(GS)
  3052.     -mkdir $(bindir)
  3053.     for f in $(GS) gsbj gsdj gslj gslp gsnd bdftops font2c ps2ascii ps2epsi ; do $(INSTALL_PROGRAM) $$f $(bindir)/$$f ; done
  3054.     -mkdir $(mandir)
  3055.     -mkdir $(man1dir)
  3056.     for f in gs ps2epsi ; do $(INSTALL_DATA) $$f.1 $(man1dir)/$$f.$(manext) ; done
  3057.     -mkdir $(datadir)
  3058.     -mkdir $(gsdir)
  3059.     -mkdir $(gsdatadir)
  3060.     for f in gslp.ps gs_init.ps gs_btokn.ps gs_ccfnt.ps gs_dps1.ps gs_fonts.ps gs_kanji.ps gs_lev2.ps gs_statd.ps gs_type0.ps gs_type1.ps gs_dbt_e.ps gs_iso_e.ps gs_ksb_e.ps gs_std_e.ps gs_sym_e.ps quit.ps Fontmap bdftops.ps decrypt.ps font2c.ps impath.ps landscap.ps level1.ps prfont.ps printafm.ps ps2ascii.ps ps2epsi.ps ps2image.ps pstoppm.ps showpage.ps type1enc.ps type1ops.ps wrfont.ps ; do $(INSTALL_DATA) $$f $(gsdatadir)/$$f ; done
  3061.     -mkdir $(docdir)
  3062.     for f in COPYING NEWS PUBLIC README current.doc devices.doc drivers.doc fonts.doc gs.1 hershey.doc history.doc humor.doc language.doc lib.doc make.doc ps2epsi.1 ps2epsi.doc psfiles.doc use.doc xfonts.doc ; do $(INSTALL_DATA) $$f $(docdir)/$$f ; done
  3063.     -mkdir $(exdir)
  3064.     for f in chess.ps cheq.ps colorcir.ps golfer.ps escher.ps snowflak.ps tiger.ps ; do $(INSTALL_DATA) $$f $(exdir)/$$f ; done
  3065.