xref: /original-bsd/usr.bin/uucp/vms/Makefile (revision ba762ddc)
1#	Makefile	5.5	83/07/18
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#
10ALL=	uucp uux uuxqt uucico uulog uuclean uuname uustat uusub uupoll uusnap \
11	uuencode uudecode uusend uucpd uuq startuucp
12# Common object files placed in uulib.a
13COMMON=	anlwrk.o anyread.o assert.o cfgets.o chkpth.o \
14	cpmv.o expfile.o gename.o getargs.o getopt.o getprm.o \
15	getpwinfo.o gio.o gnamef.o gnxseq.o gwd.o imsg.o \
16	index.o lastpart.o logent.o mailst.o pk0.o chksum.o pk1.o prefix.o \
17	sdmail.o setline.o shio.o subdir.o sysacct.o systat.o ub_sst.o \
18	ulockf.o us_crs.o us_open.o us_rrs.o us_sst.o tio.o fio.o \
19	uucpname.o versys.o xqt.o uucpdefs.o ntoa.o
20DESTDIR=
21OWNER=	uucp
22GROUP=	daemon
23CFLAGS=	-O
24LDFLAGS=
25LIBS= libndir.a
26LIBDIR=	/usr/lib/uucp
27BIN=	/usr/bin
28PUBDIR=	/usr/spool/uucppublic
29SPOOL=	/usr/spool/uucp
30XQTDIR=	/usr/spool/uucp/XTMP
31# The six subdirs {not counting XTMP}.  The order of the D. files is crucial!
32SUBDIRS=C. D.`uuname -l`X D.`uuname -l` D. X. TM. STST CORRUPT AUDIT
33PKON=
34IOCTL=
35# for make depend
36UNDEF=	-UNDIR -UUNET -USYSIII -UUNAME -UCCWHOAMI -UGETMYHNAME -UDATAKIT
37
38all:	${ALL}
39
40uucp:	uucp.o uulib.a
41	${CC} -o uucp ${LDFLAGS} uucp.o uulib.a
42
43uux:	uux.o uulib.a
44	${CC} -o uux ${LDFLAGS} uux.o uulib.a
45
46uuxqt:	uuxqt.o uulib.a
47	${CC} -o uuxqt ${LDFLAGS} uuxqt.o uulib.a ${LIBS}
48
49uucico:	cico.o cntrl.o conn.o condevs.o gnsys.o ${IOCTL} ${PKON} uulib.a
50	${CC} -noshare -o uucico ${LDFLAGS} cico.o cntrl.o conn.o condevs.o \
51		gnsys.o ${IOCTL} ${PKON} uulib.a ${LIBS}
52
53uulog:	uulog.o uulib.a
54	${CC} -o uulog ${LDFLAGS} uulog.o uulib.a
55
56uuclean: uuclean.o uulib.a
57	${CC} -o uuclean ${LDFLAGS} uuclean.o uulib.a ${LIBS}
58
59uuname:	uuname.o uulib.a
60	${CC} -o uuname ${LDFLAGS} uuname.o uulib.a
61
62uustat:	uustat.o uulib.a
63	$(CC) -o uustat $(LDFLAGS) uustat.o uulib.a ${LIBS}
64
65uucpd:	uucpd.obj ntoa.obj validate.obj
66	vms @linkuucpd
67	mv uucpd.exe uucpd
68
69uucpd.obj:
70	cc -S -O uucpd.c
71	vmsas uucpd.s
72	mv a.out uucpd.obj
73	rm uucpd.s
74
75ntoa.obj:
76	cc -S -O ntoa.c
77	vmsas ntoa.s
78	mv a.out ntoa.obj
79	rm ntoa.s
80
81validate.obj:
82	cc -S -O validate.c
83	vmsas validate.s
84	mv a.out validate.obj
85	rm validate.s
86
87startuucp: startuucp.o
88	${CC} -o startuucp startuucp.o
89
90uuq: uuq.o uulib.a
91	${CC} -o uuq ${LDFLAGS} uuq.o uulib.a ${LIBS}
92
93uusub:	uusub.o uulib.a
94	$(CC) -o uusub $(LDFLAGS) uusub.o uulib.a
95
96uupoll:	uupoll.o uulib.a
97	${CC} -o uupoll ${LDFLAGS} uupoll.o uulib.a
98
99uusnap:	uusnap.o uulib.a
100	${CC} -o uusnap ${LDFLAGS} uusnap.o uulib.a ${LIBS}
101
102uuencode: uuencode.o uulib.a
103	${CC} -o uuencode ${LDFLAGS} uuencode.o uulib.a
104
105uudecode: uudecode.o uulib.a
106	${CC} -o uudecode ${LDFLAGS} uudecode.o uulib.a
107
108uusend: uusend.o uulib.a
109	${CC} -o uusend ${LDFLAGS} uusend.o uulib.a
110
111chksum.o: chksum.c chksum.vax.s chksum.11.s
112	${CC} -O -c chksum.c
113	(unixas -o chksum.o chksum.vax.s) >/dev/null 2>&1&
114
115# Note: mode 700 on ${LIBDIR} would be safer.
116# Also,  L.sys etc should be 600.
117mkdirs:
118	echo "Best to make these directories manually."
119
120# The lorder...tsort below is for systems w/o ranlib
121# But it doesnt hurt to use it. Ignore the spurious "cycle" messages
122uulib.a: ${COMMON}
123	rm -f $@
124	ar cr $@ `lorder ${COMMON} | tsort`
125	ranlib $@
126
127install:
128	chown ${OWNER} ${DESTDIR}/${LIBDIR}
129	chgrp ${GROUP} ${DESTDIR}/${LIBDIR}
130	chmod 755 ${DESTDIR}/${LIBDIR}
131	install -s -m 6111 -o ${OWNER} -g ${GROUP} uucp ${DESTDIR}/${BIN}/uucp
132	install -s -m 6111 -o ${OWNER} -g ${GROUP} uux ${DESTDIR}/${BIN}/uux
133	: chmod u+t ${BIN}/uux; : this helps PDPs
134	install -s -m 6110 -o ${OWNER} -g ${GROUP} \
135		uuxqt ${DESTDIR}/${LIBDIR}/uuxqt
136	: chmod u+t ${LIBDIR}/uuxqt; : this helps PDPs
137	install -s -m 6111 -o ${OWNER} -g ${GROUP} \
138		uucico ${DESTDIR}/${LIBDIR}/uucico
139	: chmod u+t ${LIBDIR}/uucico; : this helps PDPs if uucico is pure
140	install -s -m 6111 -o ${OWNER} -g ${GROUP} uulog ${DESTDIR}/${BIN}/uulog
141	install -s -m 6111 -o ${OWNER} -g ${GROUP} \
142		uuclean ${DESTDIR}/${LIBDIR}/uuclean
143	install -s -m 6111 -o ${OWNER} -g ${GROUP} \
144		uuname ${DESTDIR}/${BIN}/uuname
145	install -s -m 6111 -o ${OWNER} -g ${GROUP} \
146		uupoll ${DESTDIR}/${BIN}/uupoll
147	install -s -m 6111 -o ${OWNER} -g ${GROUP} \
148		uuq ${DESTDIR}/${BIN}/uuq
149	install -s -m 6111 -o ${OWNER} -g ${GROUP} \
150		uustat ${DESTDIR}/${BIN}/uustat
151	install -s -m 100 -o ${OWNER} -g ${GROUP} \
152		uusub ${DESTDIR}/${BIN}/uusub
153	install -s -m 6111 -o ${OWNER} -g ${GROUP} \
154		uusnap ${DESTDIR}/${BIN}/uusnap
155	install -s uuencode ${DESTDIR}/${BIN}/uuencode
156	install -s uudecode ${DESTDIR}/${BIN}/uudecode
157	install -s -m 6111 -o ${OWNER} -g ${GROUP} \
158		uusend ${DESTDIR}/${BIN}/uusend
159	rm -f ${DESTDIR}/${BIN}/ruusend
160	ln ${DESTDIR}/${BIN}/uusend ${DESTDIR}/${BIN}/ruusend
161	install -s uucpd ${DESTDIR}/etc/uucpd
162
163clean:
164	rm -f *.o *.obj ${ALL} uulib.a
165
166depend:
167	for i in *.c; do \
168		(echo `basename $$i .c`.o: $$i >>makedep; \
169			unifdef ${UNDEF} $$i | \
170			/bin/grep '^#[ 	]*include' | sed \
171			-e '/\.\.\/h/d' \
172			-e 's,<\(.*\)>,"/usr/include/\1",' \
173			-e 's/^[^"]*"\([^"]*\)".*/'"$$i"': \1/' \
174			-e 's/\.c/.o/' >>makedep); done
175	echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep
176	echo '$$r makedep' >>eddep
177	echo 'w' >>eddep
178	cp Makefile Makefile.bak
179	ed - Makefile < eddep
180	rm eddep makedep
181	echo '# DEPENDENCIES MUST END AT END OF FILE' >> Makefile
182	echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> Makefile
183	echo '# see make depend above' >> Makefile
184
185# DO NOT DELETE THIS LINE -- make depend uses it
186# DEPENDENCIES MUST END AT END OF FILE
187