4.3BSD beta release manual page
[unix-history] / usr / src / usr.bin / uucp / Makefile
CommitLineData
1a85e9d2 1# Makefile 5.8 85/04/10
11ece1e5
SL
2#
3# This version expects the 4.2BSD directory reading routines to
4# located in libc.a. If they aren't, augment LIBS. Also, LIBS
5# can be set to reference other object modules and libraries needed
6# by uucico, such as -lunet (needed when UNET is defined).
7#
8# Common object files are assembled into a library {uulib.a}
9#
1a85e9d2
RC
10ALL= uucico uucp uux uuxqt uulog uuclean uuname uupoll uusnap \
11 uuencode uudecode uusend uucpd uuq acucntrl
11ece1e5
SL
12# Common object files placed in uulib.a
13COMMON= anlwrk.o anyread.o assert.o cfgets.o chkpth.o \
88db71e9
RC
14 cpmv.o expfile.o gename.o getargs.o getprm.o \
15 getpwinfo.o gio.o gnamef.o gnxseq.o gwd.o imsg.o \
16 lastpart.o logent.o mailst.o pk0.o chksum.o pk1.o prefix.o \
1a85e9d2 17 setline.o subdir.o sysacct.o systat.o \
88db71e9
RC
18 ulockf.o \
19 uucpname.o versys.o xqt.o uucpdefs.o tio.o fio.o
20
21SRCS= anlwrk.c anyread.c assert.c cfgets.c chkpth.c chksum.c \
22 cico.c cntrl.c condevs.c conn.c cpmv.c expfile.c \
23 gename.c getargs.c getprm.c getpwinfo.c \
24 gio.c gnamef.c gnsys.c gnxseq.c gwd.c imsg.c \
25 ioctl.c lastpart.c logent.c mailst.c ndir.h \
26 pk.h pk0.c pk1.c pkon.c prefix.c \
1a85e9d2 27 setline.c subdir.c sysacct.c systat.c tio.c fio.c\
88db71e9
RC
28 ulockf.c \
29 uuclean.c uucp.c uucp.h uucpdefs.c uucpname.c uudecode.c \
30 uuencode.c uulog.c uuname.c uupoll.c uusend.c uusnap.c \
31 uux.c uuxqt.c \
1a85e9d2 32 versys.c xqt.c uuq.c acucntrl.c
88db71e9 33#These might be useful on non 4.2bsd systems.
1a85e9d2 34MISC= htonl.c ioctl.c index.c mkdir.c
88db71e9 35
11ece1e5
SL
36DESTDIR=
37OWNER= uucp
38GROUP= daemon
39CFLAGS= -O
40LDFLAGS=
88db71e9
RC
41LIBS=
42LIBDIR= ${DESTDIR}/usr/lib/uucp
43BIN= ${DESTDIR}/usr/bin
44PUBDIR= ${DESTDIR}/usr/spool/uucppublic
45SPOOL= ${DESTDIR}/usr/spool/uucp
46XQTDIR= ${SPOOL}/XTMP
47CORRUPT= ${SPOOL}/CORRUPT
48AUDIT= ${SPOOL}/AUDIT
1a85e9d2
RC
49LCK= ${SPOOL}/LCK
50LOG= ${SPOOL}/LOG
88db71e9 51STST= ${SPOOL}/STST
1a85e9d2 52# The six subdirs {not counting XTMP}.
11ece1e5 53SUBDIRS=C. D.`uuname -l`X D.`uuname -l` D. X. TM.
11cfcb47 54# for make depend
88db71e9 55UNDEF= -UNDIR -UUNET -USYSIII -UUNAME -UCCWHOAMI -UGETMYHNAME -UDATAKIT \
1a85e9d2 56 -UBSD4_2 -UUSG -UVMS
11ece1e5
SL
57
58all: ${ALL}
59
88db71e9
RC
60print: $(SRCS)
61 vgrind $?
62 vgrind -x index
63 touch print
64
11ece1e5
SL
65uucp: uucp.o uulib.a
66 ${CC} -o uucp ${LDFLAGS} uucp.o uulib.a
67
68uux: uux.o uulib.a
69 ${CC} -o uux ${LDFLAGS} uux.o uulib.a
70
71uuxqt: uuxqt.o uulib.a
72 ${CC} -o uuxqt ${LDFLAGS} uuxqt.o uulib.a ${LIBS}
73
88db71e9 74uucico: cico.o cntrl.o conn.o condevs.o gnsys.o uulib.a aculib/aculib.a
11ece1e5 75 ${CC} -o uucico ${LDFLAGS} cico.o cntrl.o conn.o condevs.o \
88db71e9 76 gnsys.o uulib.a aculib/aculib.a ${LIBS}
11ece1e5
SL
77
78uulog: uulog.o uulib.a
79 ${CC} -o uulog ${LDFLAGS} uulog.o uulib.a
80
81uuclean: uuclean.o uulib.a
88db71e9 82 ${CC} -o uuclean ${LDFLAGS} uuclean.o uulib.a ${LIBS}
11ece1e5
SL
83
84uuname: uuname.o uulib.a
85 ${CC} -o uuname ${LDFLAGS} uuname.o uulib.a
88db71e9 86
11ece1e5
SL
87uupoll: uupoll.o uulib.a
88 ${CC} -o uupoll ${LDFLAGS} uupoll.o uulib.a
89
88db71e9
RC
90uusnap: uusnap.o
91 ${CC} -o uusnap ${LDFLAGS} uusnap.o ${LIBS}
11ece1e5 92
88db71e9
RC
93uuencode: uuencode.o
94 ${CC} -o uuencode ${LDFLAGS} uuencode.o
11ece1e5 95
88db71e9
RC
96uudecode: uudecode.o
97 ${CC} -o uudecode ${LDFLAGS} uudecode.o
11ece1e5 98
88db71e9
RC
99uusend: uusend.o
100 ${CC} -o uusend ${LDFLAGS} uusend.o
11ece1e5 101
88db71e9 102uucpd: uucpd.o uucp.h
480fe9de
RC
103 ${CC} -o uucpd ${LDFLAGS} uucpd.o
104
88db71e9
RC
105uuq: uuq.o uulib.a
106 ${CC} -o uuq ${LDFLAGS} uuq.o uulib.a
107
1a85e9d2
RC
108acucntrl: acucntrl.o
109 ${CC} -o acucntrl ${LDFLAGS} acucntrl.o
110
11ece1e5
SL
111# Note: mode 700 on ${LIBDIR} would be safer.
112# Also, L.sys etc should be 600.
88db71e9 113
11ece1e5 114mkdirs:
88db71e9 115 -for i in ${LIBDIR} ${SPOOL} ${PUBDIR} ${XQTDIR} ${CORRUPT} \
1a85e9d2 116 ${AUDIT} ${LCK} ${LOG} ${STST} ; do \
88db71e9
RC
117 rm -f $$i ; mkdir $$i ; \
118 chmod 755 $$i; chown ${OWNER} $$i; chgrp ${GROUP} $$i ; \
119 done
120 chmod 777 ${PUBDIR} ${LCK}
1a85e9d2
RC
121 -cd ${LOG}; for i in uucico uux uuxqt uucp xferstats; do\
122 rm -f $$i ; mkdir $$i ; \
123 chmod 755 $$i; chown ${OWNER} $$i; chgrp ${GROUP} $$i ; \
124 done
88db71e9 125 -cd ${SPOOL}; for i in ${SUBDIRS} ; do \
11ece1e5 126 mkdir $$i; \
11cfcb47 127 chown ${OWNER} $$i; chgrp ${GROUP} $$i; chmod 755 $$i; \
11ece1e5
SL
128 done
129
130# The lorder...tsort below is for systems w/o ranlib
131# But it doesnt hurt to use it. Ignore the spurious "cycle" messages
132uulib.a: ${COMMON}
133 rm -f $@
134 ar cr $@ `lorder ${COMMON} | tsort`
135 ranlib $@
136
88db71e9 137aculib/aculib.a:
1a85e9d2 138 cd aculib; make ${MFLAGS} "CFLAGS=${CFLAGS}"
88db71e9 139
1a85e9d2 140install: ${ALL}
88db71e9
RC
141 chown ${OWNER} ${LIBDIR}
142 chgrp ${GROUP} ${LIBDIR}
143 chmod 755 ${LIBDIR}
144 for i in uucico uuclean; do \
145 install -s -m 6111 -o ${OWNER} -g ${GROUP} $$i ${LIBDIR} ;\
146 done
147 for i in uucp uux uulog uuname uusnap uupoll uuq uusend; do \
148 install -s -m 6111 -o ${OWNER} -g ${GROUP} $$i ${BIN} ;\
149 done
150 rm -f ${BIN}/ruusend
151 ln ${BIN}/uusend ${BIN}/ruusend
152 install -s -m 6110 -o ${OWNER} -g ${GROUP} uuxqt ${LIBDIR}
1a85e9d2 153 install -s -m 6110 -o root -g ${GROUP} acucntrl ${LIBDIR}
88db71e9 154 install -s -m 700 -o root uucpd /etc/uucpd
88db71e9
RC
155 install -s uuencode ${BIN}
156 install -s uudecode ${BIN}
11ece1e5
SL
157
158clean:
159 rm -f *.o ${ALL} uulib.a
1a85e9d2 160 cd aculib; make ${MFLAGS} clean
11ece1e5
SL
161
162depend:
163 for i in *.c; do \
164 (echo `basename $$i .c`.o: $$i >>makedep; \
11cfcb47 165 unifdef ${UNDEF} $$i | \
11ece1e5
SL
166 /bin/grep '^#[ ]*include' | sed \
167 -e '/\.\.\/h/d' \
168 -e 's,<\(.*\)>,"/usr/include/\1",' \
169 -e 's/^[^"]*"\([^"]*\)".*/'"$$i"': \1/' \
170 -e 's/\.c/.o/' >>makedep); done
171 echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep
172 echo '$$r makedep' >>eddep
173 echo 'w' >>eddep
174 cp Makefile Makefile.bak
175 ed - Makefile < eddep
176 rm eddep makedep
177 echo '# DEPENDENCIES MUST END AT END OF FILE' >> Makefile
178 echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> Makefile
179 echo '# see make depend above' >> Makefile
180
181# DO NOT DELETE THIS LINE -- make depend uses it
182# DEPENDENCIES MUST END AT END OF FILE
1a85e9d2
RC
183acucntrl.o: acucntrl.c
184acucntrl.o: uucp.h
11ece1e5
SL
185anlwrk.o: anlwrk.c
186anlwrk.o: uucp.h
88db71e9 187anlwrk.o: uust.h
11ece1e5
SL
188anyread.o: anyread.c
189anyread.o: uucp.h
11ece1e5
SL
190assert.o: assert.c
191assert.o: uucp.h
11ece1e5 192cfgets.o: cfgets.c
11ece1e5
SL
193chkpth.o: chkpth.c
194chkpth.o: uucp.h
88db71e9 195chksum.o: chksum.c
11ece1e5
SL
196cico.o: cico.c
197cico.o: uucp.h
88db71e9
RC
198cico.o: uust.h
199cico.o: uusub.h
11ece1e5
SL
200cntrl.o: cntrl.c
201cntrl.o: uucp.h
88db71e9 202cntrl.o: uust.h
11ece1e5 203condevs.o: condevs.c
1a85e9d2 204condevs.o: condevs.h
11ece1e5
SL
205conn.o: conn.c
206conn.o: uucp.h
11ece1e5
SL
207cpmv.o: cpmv.c
208cpmv.o: uucp.h
11ece1e5
SL
209expfile.o: expfile.c
210expfile.o: uucp.h
88db71e9
RC
211fio.o: fio.c
212fio.o: uucp.h
11ece1e5
SL
213gename.o: gename.c
214gename.o: uucp.h
215getargs.o: getargs.c
1a85e9d2 216getargs.o: uucp.h
11ece1e5 217getprm.o: getprm.c
11ece1e5
SL
218getpwinfo.o: getpwinfo.c
219getpwinfo.o: uucp.h
11ece1e5 220gio.o: gio.c
11ece1e5 221gio.o: uucp.h
1a85e9d2 222gio.o: pk.h
11ece1e5
SL
223gnamef.o: gnamef.c
224gnamef.o: uucp.h
11ece1e5
SL
225gnsys.o: gnsys.c
226gnsys.o: uucp.h
11ece1e5
SL
227gnxseq.o: gnxseq.c
228gnxseq.o: uucp.h
11ece1e5
SL
229gwd.o: gwd.c
230gwd.o: uucp.h
11ece1e5
SL
231imsg.o: imsg.c
232imsg.o: uucp.h
1a85e9d2 233index.o: index.c
11ece1e5
SL
234ioctl.o: ioctl.c
235ioctl.o: uucp.h
11ece1e5
SL
236lastpart.o: lastpart.c
237logent.o: logent.c
238logent.o: uucp.h
11ece1e5
SL
239mailst.o: mailst.c
240mailst.o: uucp.h
1a85e9d2 241mkdir.o: mkdir.c
11ece1e5 242pk0.o: pk0.c
1a85e9d2 243pk0.o: uucp.h
11ece1e5 244pk0.o: pk.h
11ece1e5 245pk1.o: pk1.c
88db71e9 246pk1.o: uucp.h
1a85e9d2 247pk1.o: pk.h
11ece1e5 248prefix.o: prefix.c
11ece1e5
SL
249setline.o: setline.c
250setline.o: uucp.h
11ece1e5
SL
251subdir.o: subdir.c
252subdir.o: uucp.h
253sysacct.o: sysacct.c
11ece1e5
SL
254systat.o: systat.c
255systat.o: uucp.h
88db71e9
RC
256tio.o: tio.c
257tio.o: uucp.h
11ece1e5
SL
258ulockf.o: ulockf.c
259ulockf.o: uucp.h
11ece1e5
SL
260uuclean.o: uuclean.c
261uuclean.o: uucp.h
11ece1e5
SL
262uucp.o: uucp.c
263uucp.o: uucp.h
88db71e9
RC
264uucp.o: uust.h
265uucpd.o: uucpd.c
266uucpd.o: uucp.h
11ece1e5
SL
267uucpdefs.o: uucpdefs.c
268uucpdefs.o: uucp.h
269uucpname.o: uucpname.c
270uucpname.o: uucp.h
11ece1e5 271uudecode.o: uudecode.c
11ece1e5 272uuencode.o: uuencode.c
11ece1e5
SL
273uulog.o: uulog.c
274uulog.o: uucp.h
275uuname.o: uuname.c
276uuname.o: uucp.h
11ece1e5
SL
277uupoll.o: uupoll.c
278uupoll.o: uucp.h
88db71e9
RC
279uuq.o: uuq.c
280uuq.o: uucp.h
11ece1e5 281uusend.o: uusend.c
11ece1e5
SL
282uusnap.o: uusnap.c
283uusnap.o: uucp.h
11ece1e5
SL
284uux.o: uux.c
285uux.o: uucp.h
286uuxqt.o: uuxqt.c
287uuxqt.o: uucp.h
11ece1e5
SL
288versys.o: versys.c
289versys.o: uucp.h
290xqt.o: xqt.c
291xqt.o: uucp.h
11ece1e5
SL
292# DEPENDENCIES MUST END AT END OF FILE
293# IF YOU PUT STUFF HERE IT WILL GO AWAY
294# see make depend above