Start development on 386BSD 0.0
[unix-history] / .ref-BSD-4_3_Net_2 / usr / src / contrib / isode / rosy / Makefile
CommitLineData
9e8e5516
C
1###############################################################################
2# Instructions to Make, for compilation of ISODE ROSY processes
3###############################################################################
4
5###############################################################################
6#
7# $Header: /f/osi/rosy/RCS/Makefile,v 7.7 91/02/22 09:41:41 mrose Interim $
8#
9#
10# $Log: Makefile,v $
11# Revision 7.7 91/02/22 09:41:41 mrose
12# Interim 6.8
13#
14# Revision 7.6 91/01/07 12:41:18 mrose
15# update
16#
17# Revision 7.5 90/12/23 18:42:46 mrose
18# update
19#
20# Revision 7.4 90/11/04 19:16:03 mrose
21# update
22#
23# Revision 7.3 90/07/27 08:47:32 mrose
24# update
25#
26# Revision 7.2 90/07/09 14:47:56 mrose
27# sync
28#
29# Revision 7.1 90/07/01 21:06:17 mrose
30# pepsy
31#
32# Revision 6.2 89/07/30 12:16:24 mrose
33# real
34#
35# Revision 6.1 89/07/22 16:05:53 mrose
36# bsd44
37#
38# Revision 6.0 89/03/18 23:42:35 mrose
39# Release 5.0
40#
41###############################################################################
42
43###############################################################################
44#
45# NOTICE
46#
47# Acquisition, use, and distribution of this module and related
48# materials are subject to the restrictions of a license agreement.
49# Consult the Preface in the User's Manual for the full terms of
50# this agreement.
51#
52###############################################################################
53
54.SUFFIXES: .ry .py .c .o
55
56.ry.py:; ./xrosy $(RYFLAGS) $<
57
58
59PEPYLIBES= $(TOPDIR)psap/sprintoid.o \
60 $(TOPDIR)psap/oid_cmp.o $(TOPDIR)psap/oid_cpy.o \
61 $(TOPDIR)psap/oid_free.o \
62 $(TOPDIR)compat/asprintf.o $(TOPDIR)compat/serror.o \
63 $(TOPDIR)compat/sprintb.o $(TOPDIR)compat/sstr2arg.o
64LIBES = $(TOPDIR)libpsap.a $(TOPDIR)libcompat.a
65LLIBS = $(TOPDIR)llib-lpsap $(TOPDIR)llib-lcompat
66HFILES = $(HDIR)rosy.h $(HDIR)rosap.h $(HDIR)acsap.h $(HDIR)psap2.h \
67 $(HDIR)psap.h $(HDIR)ssap.h $(HDIR)isoaddrs.h \
68 $(HDIR)manifest.h $(HDIR)general.h $(HDIR)config.h
69PEPSYFILES= $(HDIR)pepsy.h $(TOPDIR)pepsy/xpepsy
70RYHFILES= rosy-defs.h $(HDIR)psap.h \
71 $(HDIR)manifest.h $(HDIR)general.h $(HDIR)config.h
72
73
74##################################################################
75# Here it is...
76##################################################################
77
78all: rosy librosy
79inst-all: inst-rosy manuals # inst-librosy
80install: inst-all clean
81lint: l-rosy l-librosy
82
83
84##################################################################
85# rosy
86##################################################################
87
88inst-rosy: $(BINDIR)rosy
89
90$(BINDIR)rosy: xrosy
91 -cp $@ zxrosy
92 -rm -f $@
93 cp xrosy $@
94 -@ls -gls $@
95 -@echo ""
96
97rosy: xrosy
98
99xrosy: rosyvrsn.o $(PEPYLIBES)
100 $(LDCC) $(LDFLAGS) -o $@ rosy.o yacc.o pepsy_misc.o \
101 rosyvrsn.o $(PEPYLIBES) $(LSOCKET) -lm
102
103rosy.o: rosy.c $(RYHFILES)
104 $(CC) $(CFLAGS) -c $*.c
105
106pepsy_misc.o: $(TOPDIR)pepsy/pepsy_misc.c
107 $(CC) $(CFLAGS) -c $?
108
109rosyvrsn.c: rosy.o yacc.o pepsy_misc.o
110 @$(UTILDIR)version.sh rosy > $@
111
112yacc.o: yacc.c lex.c $(RYHFILES)
113 $(CC) $(CFLAGS) -c $*.c
114
115yacc.c: yacc.y
116 -@echo "expect 20 shift/reduce and 9 reduce/reduce conflicts"
117 yacc $(YACCFLAGS) yacc.y
118 mv y.tab.c $@
119
120yacc.y: $(TOPDIR)pepy/yacc.y.gnrc
121 $(UTILDIR)extract.sh ROSY < $? > $@
122
123lex.c: lex.l
124 $(LEX) $(LEXFLAGS) lex.l
125 mv lex.yy.c $@
126
127lex.l: $(TOPDIR)pepy/lex.l.gnrc
128 $(UTILDIR)extract.sh ROSY < $? > $@
129
130rosy-defs.h: $(TOPDIR)pepsy/pepsy.h.gnrc
131 $(UTILDIR)extract.sh ROSY < $? > $@
132
133l-rosy: yacc.c lex.c true
134 $(LINT) $(LFLAGS) rosy.c yacc.c $(TOPDIR)pepsy/pepsy_misc.c \
135 rosyvrsn.c $(LLIBS) \
136 | grep -v "warning: possible pointer alignment problem"
137
138
139################################################################
140# librosy
141################################################################
142
143CFILES = rystub.c rydiscard.c ryoperation.c ryopinvoke.c rygenid.c \
144 rydispatch.c rydsresult.c rydserror.c rydsureject.c \
145 rywait.c ryopblock.c rydsblock.c ryfind.c rylose.c
146
147# pepsy based rosy library routines
148P-OFILES= p-rystub.o p-rydiscard.o p-ryoperation.o p-ryopinvoke.o \
149 p-rygenid.o p-rydispatch.o p-rydsresult.o p-rydserror.o \
150 p-rydsureject.o p-rywait.o p-ryopblock.o p-rydsblock.o \
151 p-ryfind.o p-rylose.o
152
153# (old) normal rosy library routines
154N-OFILES= rystub.o rydiscard.o ryoperation.o ryopinvoke.o \
155 rygenid.o rydispatch.o rydsresult.o rydserror.o \
156 rydsureject.o rywait.o ryopblock.o rydsblock.o \
157 ryfind.o rylose.o
158
159OFILES= $(P-OFILES) $(N-OFILES) $(OSTRINGS)
160
161inst-librosy: $(LIBDIR)librosy.a $(LINTDIR)llib-lrosy
162
163$(LIBDIR)librosy.a: librosy.a
164 -rm -f $@
165 cp librosy.a $@
166 @$(UTILDIR)make-lib.sh $(SYSTEM) $@ -ranlib
167 -@ls -gls $@
168 -@echo ""
169
170$(LINTDIR)llib-lrosy: llib-lrosy
171 -cp $@ zllib-lrosy
172 -rm -f $@
173 sed -e 's%#include "\(.*\)"%#include "$(INCDIR)\1"%' \
174 < llib-lrosy | \
175 sed -e 's%#include "/usr/include/\(.*\)"%#include <\1>%' > $@
176 @$(UTILDIR)inst-lint.sh $(SYSTEM) $(OPTIONS) $@
177 -@ls -gls $@ $@.ln
178 -@echo ""
179
180librosy: librosy.a
181
182librosy.a: $(OFILES)
183 -rm -f $@
184 @$(UTILDIR)make-lib.sh $(SYSTEM) $(ARFLAGS) $@ $(OFILES)
185 -@rm -f $(TOPDIR)librosy.a $(TOPDIR)llib-lrosy
186 -@$(LN) librosy.a $(TOPDIR)librosy.a
187 -@$(LN) llib-lrosy $(TOPDIR)llib-lrosy
188 -@ls -l $@
189 -@echo "ROSY library built normally"
190
191l-librosy: $(CFILES) true
192 $(LINT) $(LFLAGS) $(CFILES) $(TOPDIR)llib-lrosap $(LLIBS) \
193 | grep -v "warning: possible pointer alignment problem"
194
195p-rydiscard.o: $(HFILES) $(PEPSYFILES) rydiscard.c
196 $(CC) $(LIBCFLAGS) -DPEPSY_VERSION=2 -o $@ -c rydiscard.c
197
198p-rygenid.o: $(HFILES) $(PEPSYFILES) rygenid.c
199 $(CC) $(LIBCFLAGS) -DPEPSY_VERSION=2 -o $@ -c rygenid.c
200
201p-rystub.o: $(HFILES) $(PEPSYFILES) rystub.c
202 $(CC) $(LIBCFLAGS) -DPEPSY_VERSION=2 -o $@ -c rystub.c
203
204p-rywait.o: $(HFILES) $(PEPSYFILES) rywait.c
205 $(CC) $(LIBCFLAGS) -DPEPSY_VERSION=2 -o $@ -c rywait.c
206
207p-ryoperation.o: $(HFILES) $(PEPSYFILES) ryoperation.c
208 $(CC) $(LIBCFLAGS) -DPEPSY_VERSION=2 -o $@ -c ryoperation.c
209
210p-ryopinvoke.o: $(HFILES) $(PEPSYFILES) ryopinvoke.c
211 $(CC) $(LIBCFLAGS) -DPEPSY_VERSION=2 -o $@ -c ryopinvoke.c
212
213p-rydispatch.o: $(HFILES) $(PEPSYFILES) rydispatch.c
214 $(CC) $(LIBCFLAGS) -DPEPSY_VERSION=2 -o $@ -c rydispatch.c
215
216p-rydsresult.o: $(HFILES) $(PEPSYFILES) rydsresult.c
217 $(CC) $(LIBCFLAGS) -DPEPSY_VERSION=2 -o $@ -c rydsresult.c
218
219p-rydserror.o: $(HFILES) $(PEPSYFILES) rydserror.c
220 $(CC) $(LIBCFLAGS) -DPEPSY_VERSION=2 -o $@ -c rydserror.c
221
222p-rydsureject.o: $(HFILES) $(PEPSYFILES) rydsureject.c
223 $(CC) $(LIBCFLAGS) -DPEPSY_VERSION=2 -o $@ -c rydsureject.c
224
225p-ryopblock.o: $(HFILES) $(PEPSYFILES) ryopblock.c
226 $(CC) $(LIBCFLAGS) -DPEPSY_VERSION=2 -o $@ -c ryopblock.c
227
228p-rydsblock.o: $(HFILES) $(PEPSYFILES) rydsblock.c
229 $(CC) $(LIBCFLAGS) -DPEPSY_VERSION=2 -o $@ -c rydsblock.c
230
231p-ryfind.o: $(HFILES) $(PEPSYFILES) ryfind.c
232 $(CC) $(LIBCFLAGS) -DPEPSY_VERSION=2 -o $@ -c ryfind.c
233
234p-rylose.o: $(HFILES) $(PEPSYFILES) rylose.c
235 $(CC) $(LIBCFLAGS) -DPEPSY_VERSION=2 -o $@ -c rylose.c
236
237
238rystub.o: $(HFILES)
239rydiscard.o: $(HFILES)
240ryoperation.o: $(HFILES)
241ryopinvoke.o: $(HFILES)
242rygenid.o: $(HFILES)
243rydispatch.o: $(HFILES)
244rydsresult.o: $(HFILES)
245rydserror.o: $(HFILES)
246rydsureject.o: $(HFILES)
247rywait.o: $(HFILES)
248ryopblock.o: $(HFILES)
249rydsblock.o: $(HFILES)
250ryfind.o: $(HFILES)
251rylose.o: $(HFILES)
252
253true:;
254
255
256################################################################
257# manual pages
258################################################################
259
260MANUALS = rosy.1 # librosy.3n
261
262manuals:; @$(UTILDIR)inst-man.sh $(MANOPTS) $(MANUALS)
263 -@echo ""
264
265
266################################################################
267# clean
268################################################################
269
270clean:; rm -f *.o *.a x* z* _* core rosy-defs.h yacc.y yacc.c lex.l \
271 lex.c rosyvrsn.c
272
273grind:; iprint Makefile
274 tgrind -lc rosy-defs.h rosy.c rosyvrsn.c
275 tgrind -ly yacc.y lex.l
276 tgrind -lc $(CFILES) llib-lrosy
277 @echo $(MANUALS) | \
278 tr " " "\012" | \
279 sed -e "s%.*%itroff -man &%" | \
280 sh -ve