Blame


1 b855148c 2004-05-16 devnull Stuff appears to work, but it's obviously not well tested. I fully
2 b855148c 2004-05-16 devnull expect several iterations before things are correct!! Make sure you
3 b855148c 2004-05-16 devnull can back this out quickly.
4 b855148c 2004-05-16 devnull
5 b855148c 2004-05-16 devnull This code supports UTF encoding. Directory dpost.utf is a version that
6 b855148c 2004-05-16 devnull reads UTF encoded files. Directory dpost is DWB 3.3 source and should be
7 b855148c 2004-05-16 devnull close to what you're currently using. Main source code changes were in
8 b855148c 2004-05-16 devnull dpost.utf (files font.h, font.c, and dpost.c). Select either dpost or
9 b855148c 2004-05-16 devnull dpost.utf in TARGETS in postscript.mk. Both build and install a program
10 b855148c 2004-05-16 devnull called dpost!!
11 b855148c 2004-05-16 devnull
12 b855148c 2004-05-16 devnull dpost.utf is more general and includes code that lets it read either
13 b855148c 2004-05-16 devnull format. Only catch is troff must tell it (with x E UTF) that the file
14 b855148c 2004-05-16 devnull is UTF and troff currently doesn't output encoding info, so you're
15 b855148c 2004-05-16 devnull stuck with two post-processors!
16 b855148c 2004-05-16 devnull
17 b855148c 2004-05-16 devnull Added common/rune.h and common/rune.c so code can be compiled elsewere.
18 b855148c 2004-05-16 devnull Both files are only used by dpost. Remove RUNELIB in commmon/rune.h if
19 b855148c 2004-05-16 devnull fullrune(), chartorune(), and runetochar() are available on your system.
20 b855148c 2004-05-16 devnull You will also need to set READING in common/gen.h. It controls how dpost
21 b855148c 2004-05-16 devnull (from dpost.utf) reads troff output. It should be UTFENCODING on Plan 9
22 b855148c 2004-05-16 devnull and ONEBYTE elsewhere. If troff includes encoding hint (x E UTF) then
23 b855148c 2004-05-16 devnull READING selects the default which sould be ONEBYTE.
24 b855148c 2004-05-16 devnull
25 b855148c 2004-05-16 devnull Leave WRITING (in common/gen.h) set to ONEBYTE. It only controls dpost
26 b855148c 2004-05-16 devnull output and dpost (right now) does not work 100% with UTF.enc. Fix should
27 b855148c 2004-05-16 devnull be easy, but I don't have time now.
28 b855148c 2004-05-16 devnull
29 b855148c 2004-05-16 devnull Other translators passed bytes through so only needed slightly modified
30 b855148c 2004-05-16 devnull proglogues and a new encoding scheme (psencoding/UTF.enc). It works for
31 b855148c 2004-05-16 devnull Latin1, but still needs a bit more attention. Prologue changes were easy
32 b855148c 2004-05-16 devnull and only involved adding lines like,
33 b855148c 2004-05-16 devnull
34 b855148c 2004-05-16 devnull /show {show} bind def
35 b855148c 2004-05-16 devnull /stringwidth {stringwidth} bind def
36 b855148c 2004-05-16 devnull
37 b855148c 2004-05-16 devnull Guarantees text procedures used in prologues aren't operators and can be
38 b855148c 2004-05-16 devnull successfully redefined in UTF.enc. Unbinding means a small but probably
39 b855148c 2004-05-16 devnull not noticeable speed penalty. You may not want to include those changes
40 b855148c 2004-05-16 devnull on other system.
41 b855148c 2004-05-16 devnull
42 b855148c 2004-05-16 devnull -------------
43 b855148c 2004-05-16 devnull Major Changes
44 b855148c 2004-05-16 devnull -------------
45 b855148c 2004-05-16 devnull
46 b855148c 2004-05-16 devnull See the VERSION file.
47 b855148c 2004-05-16 devnull
48 b855148c 2004-05-16 devnull -------------------
49 b855148c 2004-05-16 devnull Tuning The Makefile
50 b855148c 2004-05-16 devnull -------------------
51 b855148c 2004-05-16 devnull
52 b855148c 2004-05-16 devnull Source files, man pages, and low level makefiles can all be updated
53 b855148c 2004-05-16 devnull to reflect settings in postscript.mk in one simple step (described
54 b855148c 2004-05-16 devnull later). In most cases you only need to edit file postscript.mk.
55 b855148c 2004-05-16 devnull
56 b855148c 2004-05-16 devnull First save a copy of file postscript.mk. Then adjust the following
57 b855148c 2004-05-16 devnull definitions in file postscript.mk:
58 b855148c 2004-05-16 devnull
59 b855148c 2004-05-16 devnull SYSTEM best match for your version of Unix. Current choices for
60 b855148c 2004-05-16 devnull SYSTEM are:
61 b855148c 2004-05-16 devnull
62 b855148c 2004-05-16 devnull SYSV - System V
63 b855148c 2004-05-16 devnull V9 - Ninth Edition
64 b855148c 2004-05-16 devnull BSD4_2 - Berkeley (eg. Sun)
65 b855148c 2004-05-16 devnull
66 b855148c 2004-05-16 devnull Controls conditional compilation in a few places.
67 b855148c 2004-05-16 devnull
68 b855148c 2004-05-16 devnull GROUP group assigned to all installed files
69 b855148c 2004-05-16 devnull
70 b855148c 2004-05-16 devnull OWNER owner of everything that's installed
71 b855148c 2004-05-16 devnull
72 b855148c 2004-05-16 devnull BINDIR dpost and picpack go here. All other programs go in POSTBIN.
73 b855148c 2004-05-16 devnull BINDIR must already exist - it will not be created during an
74 b855148c 2004-05-16 devnull install.
75 b855148c 2004-05-16 devnull
76 b855148c 2004-05-16 devnull HOSTDIR hostresident font directory for PostScript printers. Only
77 b855148c 2004-05-16 devnull used in the font download program.
78 b855148c 2004-05-16 devnull
79 b855148c 2004-05-16 devnull FONTDIR width table directory - for troff and most postprocessors
80 b855148c 2004-05-16 devnull
81 b855148c 2004-05-16 devnull MAN1DIR command manpages. A command and its manpage are installed
82 b855148c 2004-05-16 devnull together - there's no easy way to avoid it. Setting MAN1DIR
83 b855148c 2004-05-16 devnull to an existing temporary directory (e.g. /tmp) means an
84 b855148c 2004-05-16 devnull install will work but manpages won't go anywhere permanent.
85 b855148c 2004-05-16 devnull MAN1DIR must already exist - it will not be created during
86 b855148c 2004-05-16 devnull an install.
87 b855148c 2004-05-16 devnull
88 b855148c 2004-05-16 devnull POSTBIN where most PostScript support programs go. dpost and picpack
89 b855148c 2004-05-16 devnull the exceptions.
90 b855148c 2004-05-16 devnull
91 b855148c 2004-05-16 devnull POSTLIB prologues and miscellaneous PostScript files. Primarily for
92 b855148c 2004-05-16 devnull the programs that live in POSTBIN.
93 b855148c 2004-05-16 devnull
94 b855148c 2004-05-16 devnull CFLGS common compiler options - used to build CFLAGS in the low
95 b855148c 2004-05-16 devnull level makefiles. CLFGS and LDFLGS are best set on the make
96 b855148c 2004-05-16 devnull command line.
97 b855148c 2004-05-16 devnull
98 b855148c 2004-05-16 devnull LDFLGS common link editor options - used to build LDFLAGS in the
99 b855148c 2004-05-16 devnull low level makefiles. LDFLGS and CFLGS are best set on the
100 b855148c 2004-05-16 devnull make command line.
101 b855148c 2004-05-16 devnull
102 b855148c 2004-05-16 devnull DKHOST set it to TRUE to compile the DKHOST Datakit support code
103 b855148c 2004-05-16 devnull in postio. Temporarily resets SYSTEM to SYSV if DKHOST is
104 b855148c 2004-05-16 devnull TRUE and SYSTEM is BSD4_2. Ignored if SYSTEM is not SYSV
105 b855148c 2004-05-16 devnull or BSD4_2.
106 b855148c 2004-05-16 devnull
107 b855148c 2004-05-16 devnull DKSTREAMS enables streams based DKHOST support in postio when DKHOST
108 b855148c 2004-05-16 devnull is TRUE and SYSTEM is SYSV or BSD4_2. Choices are TRUE,
109 b855148c 2004-05-16 devnull FALSE, or a stream module name (e.g. dknetty or dkty). TRUE
110 b855148c 2004-05-16 devnull selects dknetty. Newer systems may expect dkty.
111 b855148c 2004-05-16 devnull
112 b855148c 2004-05-16 devnull ROUNDPAGE must only be set to TRUE or FALSE. TRUE means PostScript
113 b855148c 2004-05-16 devnull translators include code that maps clipping path dimensions
114 b855148c 2004-05-16 devnull into known paper sizes.
115 b855148c 2004-05-16 devnull
116 b855148c 2004-05-16 devnull TARGETS the default list of what's built by make. Each target must
117 b855148c 2004-05-16 devnull be the name of a source directory. A target that names a
118 b855148c 2004-05-16 devnull non-existent source directory is ignored. Setting TARGETS
119 b855148c 2004-05-16 devnull on the make command line overrides the default list.
120 b855148c 2004-05-16 devnull
121 b855148c 2004-05-16 devnull -------------------
122 b855148c 2004-05-16 devnull Updating The Source
123 b855148c 2004-05-16 devnull -------------------
124 b855148c 2004-05-16 devnull
125 b855148c 2004-05-16 devnull Whenever file postscript.mk changes you should update source files,
126 b855148c 2004-05-16 devnull man pages, and low level makefiles by typing,
127 b855148c 2004-05-16 devnull
128 b855148c 2004-05-16 devnull make -f postscript.mk changes
129 b855148c 2004-05-16 devnull
130 b855148c 2004-05-16 devnull ------------------------
131 b855148c 2004-05-16 devnull More System Dependencies
132 b855148c 2004-05-16 devnull ------------------------
133 b855148c 2004-05-16 devnull
134 b855148c 2004-05-16 devnull The package has been compiled and tested on System V and Ninth Edition
135 b855148c 2004-05-16 devnull Unix Systems and on Sun workstations. Most differences are handled via
136 b855148c 2004-05-16 devnull the SYSTEM definition in postscript.mk. Problems that remain are:
137 b855148c 2004-05-16 devnull
138 b855148c 2004-05-16 devnull SYSV - System V
139 b855148c 2004-05-16 devnull Use the native compiler if you're on an internal System V UTS
140 b855148c 2004-05-16 devnull machine.
141 b855148c 2004-05-16 devnull
142 b855148c 2004-05-16 devnull V9 - Ninth or Tenth Edition
143 b855148c 2004-05-16 devnull chown is in /etc and chgrp no longer exists - it's been folded into
144 b855148c 2004-05-16 devnull the chown command. You may be forced to build a simple chgrp shell
145 b855148c 2004-05-16 devnull script (put it in your bin) that calls chown. If you're not superuser
146 b855148c 2004-05-16 devnull set OWNER to your login name and GROUP to your group id.
147 b855148c 2004-05-16 devnull
148 b855148c 2004-05-16 devnull BSD4_2 - Sun Workstations
149 b855148c 2004-05-16 devnull Use the Bourne shell. chown is should be in /usr/etc. Add /usr/etc
150 b855148c 2004-05-16 devnull to your PATH and export PATH. If you're not superuser set OWNER to
151 b855148c 2004-05-16 devnull your login name and GROUP to your group id.
152 b855148c 2004-05-16 devnull
153 b855148c 2004-05-16 devnull ----------------------
154 b855148c 2004-05-16 devnull Installing The Package
155 b855148c 2004-05-16 devnull ----------------------
156 b855148c 2004-05-16 devnull
157 b855148c 2004-05-16 devnull To build (but not install) the default package (i.e. everything named by
158 b855148c 2004-05-16 devnull TARGETS in postscript.mk) type,
159 b855148c 2004-05-16 devnull
160 b855148c 2004-05-16 devnull make -f postscript.mk all
161 b855148c 2004-05-16 devnull
162 b855148c 2004-05-16 devnull To build and install the package type,
163 b855148c 2004-05-16 devnull
164 b855148c 2004-05-16 devnull make -f postscript.mk all install
165 b855148c 2004-05-16 devnull
166 b855148c 2004-05-16 devnull After the package is installed use,
167 b855148c 2004-05-16 devnull
168 b855148c 2004-05-16 devnull make -f postscript.mk clobber
169 b855148c 2004-05-16 devnull
170 b855148c 2004-05-16 devnull to delete binary files and compiled programs from the source directories.
171 b855148c 2004-05-16 devnull
172 b855148c 2004-05-16 devnull To select part of the package define TARGETS on the command line. For
173 b855148c 2004-05-16 devnull example,
174 b855148c 2004-05-16 devnull
175 b855148c 2004-05-16 devnull make -f postscript.mk TARGETS="dpost devpost" all install
176 b855148c 2004-05-16 devnull
177 b855148c 2004-05-16 devnull builds and installs dpost and the PostScript font tables. Quotes hide
178 b855148c 2004-05-16 devnull white space from the shell.
179 b855148c 2004-05-16 devnull