|
|
1.1 root 1: #
2: # Top level makefile. Instructions are included here and in the README file.
3: #
4: # First save a copy of this file. Then adjust the following definitions (all
5: # come immediatedly after the initial block of comments):
6: #
7: # MAKE where make lives
8: #
9: # MAKEFILE name of this file - for recursive make calls. Must change
10: # if you rename this file.
11: #
12: # SYSTEM best match for your version of Unix. Current choices for
13: # SYSTEM are:
14: #
15: # SYSV - System V
16: # V9 - Ninth Edition
17: # BSD4_2 - Berkeley (eg. Sun)
18: #
19: # Controls conditional compilation in a few places.
20: #
21: # VERSION refers to the Version of the DWB package
22: #
23: # GROUP group assigned to all installed files
24: #
25: # OWNER owner of everything that's installed
26: #
27: # HOSTDIR hostresident font directory for PostScript printers. Only
28: # used in the font download program.
29: #
30: # FONTDIR width table directory - for troff and dpost
31: #
32: # MAN1DIR command manpages. A command and its manpage are installed
33: # together - there's no easy way to avoid it. Setting MAN1DIR
34: # to an existing temporary directory (e.g. /tmp) means an
35: # install will work but manpages won't go anywhere permanent.
36: # MAN1DIR must already exist - it will not be created during
37: # an install.
38: #
39: # POSTBIN where most PostScript support programs go. dpost and picpack
40: # are the exceptions.
41: #
42: # POSTLIB prologues and miscellaneous PostScript files. Primarily for
43: # the programs that live in POSTBIN.
44: #
45: # CFLGS common compiler options - used to build CFLAGS in the low
46: # level makefiles. CFLGS and LDFLGS are best set on the make
47: # command line.
48: #
49: # LDFLGS common link editor options - used to build LDFLAGS in the
50: # low level makefiles. LDFLGS and CFLGS are best set on the
51: # make command line.
52: #
53: # DKHOST set it to TRUE to compile the DKHOST Datakit support code
54: # in postio. Temporarily resets SYSTEM to SYSV if DKHOST is
55: # TRUE and SYSTEM is BSD4_2. Ignored if SYSTEM is not SYSV
56: # or BSD4_2.
57: #
58: # DKSTREAMS set it to TRUE only if you have the streams based DKHOST
59: # package. Ignored if SYSTEM is not SYSV or BSD4_2.
60: #
61: # DOROUND must only be set to TRUE or FALSE. TRUE means translators
62: # include code that maps clipping path dimensions into known
63: # paper sizes.
64: #
65: # TARGETS the default list of what's built by make. Each target must
66: # be the name of a source directory. A target that names a
67: # non-existent source directory is ignored. Setting TARGETS
68: # on the make command line overrides the default list.
69: #
70: # Source files must be updated whenever this file changes. If you change any
71: # definitions type,
72: #
73: # make -f postscript.mk changes
74: #
75: # to update the source files, man pages, and low level makefiles.
76: #
77: # To build (but not install) the default package (i.e. everything named by
78: # TARGETS) type,
79: #
80: # make -f postscript.mk all
81: #
82: # The recommended way to build and install the package is,
83: #
84: # make -f postscript.mk all install
85: #
86: # Although you'll likely have to be root for the install to work.
87: #
88: # After the package is installed use,
89: #
90: # make -f postscript.mk clobber
91: #
92: # to delete binary files and compiled programs from the source directories.
93: #
94: # Set TARGETS on the command line to select part of the package. For example,
95: #
96: # make -f postscript.mk TARGETS="dpost devpost" all install
97: #
98: # builds and installs dpsot and the PostScript font tables. Quotes hide white
99: # space from the shell.
100: #
101:
102: MAKE=/bin/make
103: MAKEFILE=postscript.mk
104:
105: SYSTEM=V9
106: VERSION=3.3.1
107:
108: GROUP=bin
109: OWNER=bin
110:
111: ROOT=
112: FONTDIR=$(ROOT)/usr/lib/font
113: HOSTDIR=$(ROOT)/usr/lib/font/postscript
114: MAN1DIR=$(ROOT)/tmp
115: POSTBIN=$(ROOT)/usr/bin/postscript
116: POSTLIB=$(ROOT)/usr/lib/postscript
117: TMACDIR=$(ROOT)/usr/lib/tmac
118:
119: COMMONDIR=common
120: CURRENTDIR=.
121:
122: CFLGS=-O
123: LDFLGS=-s
124:
125: DKHOST=FALSE
126: DKSTREAMS=FALSE
127: ROUNDPAGE=TRUE
128:
129: #
130: # $(TARGETS) is the default list of things built by make.
131: #
132:
133: TARGETS=buildtables\
134: common\
135: cropmarks\
136: devLatin1\
137: devpost\
138: download\
139: dpost\
140: grabit\
141: hardcopy\
142: mpictures\
143: picpack\
144: postbgi\
145: postdaisy\
146: postdmd\
147: postgif\
148: postio\
149: postmd\
150: postprint\
151: postreverse\
152: posttek\
153: printfont\
154: psencoding\
155: psfiles\
156: trofftable
157:
158: ACTION=all
159:
160: all : $(TARGETS)
161:
162: clean clobber :
163: @$(MAKE) -e -f $(MAKEFILE) MAKE=$(MAKE) ACTION=$@ $(TARGETS)
164:
165: install changes :
166: @SYSTEM='$(SYSTEM)'; export SYSTEM; \
167: VERSION='$(VERSION)'; export VERSION; \
168: GROUP='$(GROUP)'; export GROUP; \
169: OWNER='$(OWNER)'; export OWNER; \
170: FONTDIR='$(FONTDIR)'; export FONTDIR; \
171: HOSTDIR='$(HOSTDIR)'; export HOSTDIR; \
172: MAN1DIR='$(MAN1DIR)'; export MAN1DIR; \
173: POSTBIN='$(POSTBIN)'; export POSTBIN; \
174: POSTLIB='$(POSTLIB)'; export POSTLIB; \
175: TMACDIR='$(TMACDIR)'; export TMACDIR; \
176: DKHOST='$(DKHOST)'; export DKHOST; \
177: DKSTREAMS='$(DKSTREAMS)'; export DKSTREAMS; \
178: ROTATION='$(ROTATION)'; export ROTATION; \
179: ROUNDPAGE='$(ROUNDPAGE)'; export ROUNDPAGE; \
180: $(MAKE) -e -f $(MAKEFILE) TARGETS='$(TARGETS)' MAKE=$(MAKE) ACTION=$@ $(TARGETS)
181:
182: $(TARGETS) ::
183: @TARGETS=; unset TARGETS; \
184: HFILES=; unset HFILES; \
185: OFILES=; unset OFILES; \
186: CFLAGS=; unset CFLAGS; \
187: LDFLAGS=; unset LDFLAGS; \
188: YFLAGS=; unset YFLAGS; \
189: SYSTEM='$(SYSTEM)'; export SYSTEM; \
190: VERSION='$(VERSION)'; export VERSION; \
191: CFLGS='$(CFLGS)'; export CFLGS; \
192: LDFLGS='$(LDFLGS)'; export LDFLGS; \
193: COMMONDIR='../$(COMMONDIR)'; export COMMONDIR; \
194: if [ $@ = postio ]; then \
195: EXTRA=; unset EXTRA; \
196: DKLIB=" "; export DKLIB; \
197: if [ $(SYSTEM) = SYSV -a $(DKHOST) = TRUE ]; then \
198: DKLIB=-ldk; export DKLIB; \
199: CFLGS="$(CFLGS) -DDKHOST"; export CFLGS; \
200: if [ "$(DKSTREAMS)" = TRUE ]; then \
201: CFLGS="$$CFLGS -DDKSTREAMS"; export CFLGS; \
202: fi; \
203: fi; \
204: if [ $(SYSTEM) = BSD4_2 -a $(DKHOST) = TRUE ]; then \
205: DKLIB=-ldk; export DKLIB; \
206: CFLGS="$(CFLGS) -DDKHOST -DDKSTREAMS"; export CFLGS; \
207: SYSTEM=SYSV; export SYSTEM; \
208: fi; \
209: if [ $(SYSTEM) = V9 ]; then \
210: DKLIB=-lipc; export DKLIB; \
211: fi; \
212: fi; \
213: if [ -d $@ -a -f $@/[email protected] ]; then \
214: cd $@; \
215: echo "---- Making $(ACTION) in directory $(CURRENTDIR)/$@ ----"; \
216: $(MAKE) -e -f [email protected] MAKE=$(MAKE) $(ACTION); \
217: echo; \
218: fi
219:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.