home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-387-Vol-3of3.iso / g / gs252src.zip / GS252 / UNIX-GCC.MAK < prev    next >
Makefile  |  1992-09-21  |  56KB  |  1,627 lines

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