Commit | Line | Data |
---|---|---|
e63bfae4 KB |
1 | # |
2 | # Copyright (c) 1987 The Regents of the University of California. | |
3 | # All rights reserved. | |
4 | # | |
5 | # Redistribution and use in source and binary forms are permitted | |
6 | # provided that the above copyright notice and this paragraph are | |
7 | # duplicated in all such forms and that any documentation, | |
8 | # advertising materials, and other materials related to such | |
9 | # distribution and use acknowledge that the software was developed | |
10 | # by the University of California, Berkeley. The name of the | |
11 | # University may not be used to endorse or promote products derived | |
12 | # from this software without specific prior written permission. | |
13 | # THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR | |
14 | # IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED | |
15 | # WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. | |
16 | # | |
b087cbb5 | 17 | # @(#)Makefile 5.21 (Berkeley) %G% |
11ece1e5 SL |
18 | # |
19 | # This version expects the 4.2BSD directory reading routines to | |
20 | # located in libc.a. If they aren't, augment LIBS. Also, LIBS | |
21 | # can be set to reference other object modules and libraries needed | |
22 | # by uucico, such as -lunet (needed when UNET is defined). | |
23 | # | |
24 | # Common object files are assembled into a library {uulib.a} | |
25 | # | |
1a85e9d2 | 26 | ALL= uucico uucp uux uuxqt uulog uuclean uuname uupoll uusnap \ |
87314c22 | 27 | uusend uuq acucntrl |
11ece1e5 | 28 | # Common object files placed in uulib.a |
e63bfae4 KB |
29 | COMMON= anlwrk.o anyread.o cfgets.o chkpth.o cpmv.o expfile.o gename.o \ |
30 | getargs.o getprm.o getpwinfo.o gnxseq.o lastpart.o logent.o \ | |
31 | mailst.o prefix.o setline.o subdir.o sysacct.o systat.o ulockf.o \ | |
32 | uucpdefs.o uucpname.o versys.o xqt.o | |
281ecb58 JB |
33 | SRCS= ${USRCS} ${OSRCS} ${LSRCS} |
34 | USRCS= cico.c cntrl.c conn.c condevs.c gnsys.c pk0.c chksum.c pk1.c tio.c \ | |
35 | fio.c gio.c imsg.c | |
36 | OSRCS= uuclean.c uucp.c uulog.c uuname.c uupoll.c \ | |
37 | uusend.c uusnap.c uux.c uuxqt.c uuq.c acucntrl.c | |
e63bfae4 KB |
38 | LSRCS= anlwrk.c anyread.c cfgets.c chkpth.c cpmv.c expfile.c gename.c \ |
39 | getargs.c getprm.c getpwinfo.c gnxseq.c lastpart.c logent.c \ | |
40 | mailst.c prefix.c setline.c subdir.c sysacct.c systat.c ulockf.c \ | |
281ecb58 | 41 | uucpdefs.c uucpname.c versys.c xqt.c |
87314c22 | 42 | MAN1= uucp.0 uulog.0 uuname.0 uux.0 uuq.0 uusend.0 |
e63bfae4 | 43 | MAN8= uucico.0 uuclean.0 uupoll.0 uusnap.0 uuxqt.0 |
87314c22 MT |
44 | MAN5= L-devices.0 L-dialcodes.0 L.aliases.0 L.cmds.0 L.sys.0 \ |
45 | USERFILE.0 | |
281ecb58 | 46 | |
907f54c1 RA |
47 | #These might be useful on non 4.3bsd systems. |
48 | MISC= htonl.c ioctl.c index.c mkdir.c strpbrk.c | |
88db71e9 | 49 | |
b087cbb5 TH |
50 | .SUFFIXES: .out .o .c .y .l .s .8 .7 .6 .5 .4 .3 .2 .1 .0 |
51 | ||
52 | .8.0 .7.0 .6.0 .5.0 .4.0 .3.0 .2.0 .1.0: | |
53 | nroff -mandoc -h ${.IMPSRC} > ${.TARGET} | |
54 | ||
11ece1e5 | 55 | DESTDIR= |
281ecb58 | 56 | |
eddee743 RA |
57 | # Define P=& if your make supports parallelism (e.g. Sequent) |
58 | P= | |
59 | ||
11ece1e5 SL |
60 | OWNER= uucp |
61 | GROUP= daemon | |
87314c22 | 62 | CFLAGS= -DUSE_OLD_TTY -O |
11ece1e5 | 63 | LDFLAGS= |
281ecb58 | 64 | LINTFLAGS= -chbap |
e63bfae4 KB |
65 | LIBS= |
66 | LIBC= /lib/libc.a | |
88db71e9 RC |
67 | LIBDIR= ${DESTDIR}/usr/lib/uucp |
68 | BIN= ${DESTDIR}/usr/bin | |
602b7055 | 69 | ETC= ${DESTDIR}/etc |
b087cbb5 TH |
70 | PUBDIR= ${DESTDIR}/var/spool/uucppublic |
71 | SPOOL= ${DESTDIR}/var/spool/uucp | |
88db71e9 RC |
72 | XQTDIR= ${SPOOL}/XTMP |
73 | CORRUPT= ${SPOOL}/CORRUPT | |
74 | AUDIT= ${SPOOL}/AUDIT | |
281ecb58 JB |
75 | LCK= ${SPOOL}/LCK |
76 | LOG= ${SPOOL}/LOG | |
88db71e9 | 77 | STST= ${SPOOL}/STST |
1a85e9d2 | 78 | # The six subdirs {not counting XTMP}. |
281ecb58 JB |
79 | HOSTNAME=`uuname -l | sed 's/\(.......\).*/\1/'` |
80 | SUBDIRS=C. D.${HOSTNAME}X D.${HOSTNAME} D. X. TM. | |
11ece1e5 | 81 | |
e63bfae4 | 82 | all: $(P) ${ALL} |
11ece1e5 | 83 | |
e63bfae4 | 84 | print: $(SRCS) |
88db71e9 RC |
85 | vgrind $? |
86 | vgrind -x index | |
87 | touch print | |
88 | ||
e63bfae4 | 89 | uucp uux uuxqt uulog uuclean uuname uupoll uusend uuq: uulib.a ${LIBS} ${LIBC} |
87314c22 | 90 | ${CC} -o $@ ${LDFLAGS} $@.c uulib.a ${LIBS} -lcompat |
11ece1e5 | 91 | |
87314c22 | 92 | uusnap acucntrl: ${LIBS} ${LIBC} |
e63bfae4 | 93 | ${CC} -o $@ ${LDFLAGS} $@.c ${LIBS} |
11ece1e5 | 94 | |
eddee743 | 95 | uucico: $(P) cico.o cntrl.o conn.o condevs.o gnsys.o pk0.o chksum.o pk1.o \ |
e63bfae4 | 96 | tio.o fio.o gio.o imsg.o uulib.a $(P) aculib/aculib.a ${LIBC} |
281ecb58 JB |
97 | ${CC} -o uucico ${LDFLAGS} cico.o cntrl.o conn.o condevs.o gnsys.o \ |
98 | pk0.o chksum.o pk1.o tio.o fio.o gio.o imsg.o \ | |
87314c22 | 99 | uulib.a aculib/aculib.a ${LIBS} -lcompat |
11ece1e5 | 100 | |
b087cbb5 | 101 | |
11ece1e5 SL |
102 | # Note: mode 700 on ${LIBDIR} would be safer. |
103 | # Also, L.sys etc should be 600. | |
88db71e9 | 104 | |
11ece1e5 | 105 | mkdirs: |
88db71e9 | 106 | -for i in ${LIBDIR} ${SPOOL} ${PUBDIR} ${XQTDIR} ${CORRUPT} \ |
1a85e9d2 | 107 | ${AUDIT} ${LCK} ${LOG} ${STST} ; do \ |
88db71e9 | 108 | rm -f $$i ; mkdir $$i ; \ |
87314c22 | 109 | chmod 755 $$i; chown ${OWNER} $$i; chgrp ${GROUP} $$i ; \ |
88db71e9 RC |
110 | done |
111 | chmod 777 ${PUBDIR} ${LCK} | |
1a85e9d2 RC |
112 | -cd ${LOG}; for i in uucico uux uuxqt uucp xferstats; do\ |
113 | rm -f $$i ; mkdir $$i ; \ | |
87314c22 | 114 | chmod 755 $$i; chown ${OWNER} $$i; chgrp ${GROUP} $$i ; \ |
1a85e9d2 | 115 | done |
88db71e9 | 116 | -cd ${SPOOL}; for i in ${SUBDIRS} ; do \ |
11ece1e5 | 117 | mkdir $$i; \ |
87314c22 | 118 | chown ${OWNER} $$i; chgrp ${GROUP} $$i; chmod 755 $$i; \ |
11ece1e5 SL |
119 | done |
120 | ||
121 | # The lorder...tsort below is for systems w/o ranlib | |
122 | # But it doesnt hurt to use it. Ignore the spurious "cycle" messages | |
eddee743 | 123 | uulib.a: $(P) ${COMMON} |
11ece1e5 SL |
124 | rm -f $@ |
125 | ar cr $@ `lorder ${COMMON} | tsort` | |
126 | ranlib $@ | |
127 | ||
88db71e9 | 128 | aculib/aculib.a: |
eddee743 | 129 | cd aculib; make ${MFLAGS} "CFLAGS=${CFLAGS}" "P=${P}" |
88db71e9 | 130 | |
87314c22 MT |
131 | install: ${MAN1} ${MAN8} ${MAN5} |
132 | chown ${OWNER} ${LIBDIR} | |
88db71e9 RC |
133 | chgrp ${GROUP} ${LIBDIR} |
134 | chmod 755 ${LIBDIR} | |
e63bfae4 KB |
135 | install -s -m 6111 -o ${OWNER} -g ${GROUP} uucico uuclean ${LIBDIR} |
136 | install -s -m 6111 -o ${OWNER} -g ${GROUP} \ | |
137 | uucp uux uulog uuname uusnap uupoll uuq ${BIN} | |
88db71e9 | 138 | install -s -m 6110 -o ${OWNER} -g ${GROUP} uuxqt ${LIBDIR} |
1a85e9d2 | 139 | install -s -m 6110 -o root -g ${GROUP} acucntrl ${LIBDIR} |
eddee743 | 140 | install -s -m 755 -o bin -g bin uusend ${BIN} |
eddee743 RA |
141 | rm -f ${BIN}/ruusend |
142 | ln ${BIN}/uusend ${BIN}/ruusend | |
b087cbb5 TH |
143 | install -c -o bin -g bin -m 444 ${MAN1} ${DESTDIR}/usr/share/man/cat1 |
144 | install -c -o bin -g bin -m 444 ${MAN5} ${DESTDIR}/usr/share/man/cat5 | |
145 | install -c -o bin -g bin -m 444 ${MAN8} ${DESTDIR}/usr/share/man/cat8 | |
11ece1e5 SL |
146 | |
147 | clean: | |
148 | rm -f *.o ${ALL} uulib.a | |
1a85e9d2 | 149 | cd aculib; make ${MFLAGS} clean |
11ece1e5 | 150 | |
e63bfae4 KB |
151 | cleandir: clean |
152 | rm -f ${MAN} tags .depend | |
153 | cd aculib; make ${MFLAGS} cleandir | |
8f59f016 | 154 | |
e63bfae4 KB |
155 | depend: ${SRCS} |
156 | mkdep ${CFLAGS} ${USRCS} ${LSRCS} | |
157 | mkdep -a -p ${CFLAGS} ${OSRCS} | |
158 | cd aculib; make ${MFLAGS} depend | |
8f59f016 | 159 | |
e63bfae4 KB |
160 | lint: ${SRCS} |
161 | lint ${LINTFLAGS} ${USRCS} ${LSRCS} | |
162 | -for i in ${OSRCS} ; do \ | |
163 | lint ${LINTFLAGS} $$i ${LSRCS} ;\ | |
164 | done | |
8f59f016 | 165 | |
e63bfae4 KB |
166 | tags: ${SRCS} |
167 | ctags ${SRCS} |