add dmz support; separate name space
[unix-history] / usr / src / bin / Makefile
CommitLineData
1f312495
DF
1#
2# Copyright (c) 1980 Regents of the University of California.
3# All rights reserved. The Berkeley software License Agreement
4# specifies the terms and conditions for redistribution.
5#
258238d5 6# @(#)Makefile 5.14 (Berkeley) %G%
ed4eaf26 7#
79854fee 8DESTDIR=
ed4eaf26 9CFLAGS= -O
ed4eaf26 10
79854fee
KM
11# Programs that live in subdirectories, and have makefiles of their own.
12#
7ddb6d53 13SUBDIR= adb as awk csh diff make sed sh tp
ed4eaf26 14
79854fee
KM
15# Shell scripts that need only be installed and are never removed.
16#
17SCRIPT= false true
ed4eaf26 18
79854fee
KM
19# C programs that live in the current directory and do not need
20# explicit make lines.
21#
43ccba50 22STD= ar cat cc chmod cmp date dd du echo ed grep hostid hostname \
0e0b3772 23 kill ld ln ls mkdir mt nice nm od pagesize pr pwd rm rmail \
84b87180 24 rmdir size stty sync tar tee test time wall who write
ed4eaf26 25
e4cc2084
RC
26# C programs that live in the current directory and need explicit make lines.
27#
43ccba50 28NSTD= expr
e4cc2084 29
79854fee
KM
30# Programs that must run setuid to root
31#
258238d5
MK
32SETUID= chgrp login mail passwd rcp su
33
34# Programs that run set-group-id operator
35#
36OPERATOR= df
ed4eaf26 37
e4cc2084 38# Programs that must run set-group-id kmem.
79854fee 39#
e4cc2084 40KMEM= ps
79854fee 41
258238d5 42all: ${SUBDIR} ${STD} ${NSTD} ${SETUID} ${OPERATOR} ${KMEM} cp mv strip
79854fee 43
7e2bf8ce 44${SUBDIR}: FRC
79854fee
KM
45 cd $@; make ${MFLAGS}
46
7e2bf8ce
KM
47FRC:
48
49
258238d5 50${STD} ${SETUID} ${OPERATOR} mv cp strip:
ff17818f 51 ${CC} ${CFLAGS} -o $@ $@.c
79854fee 52
84b87180 53# take care with cp, strip, and mv, install uses them
79854fee 54install:
5ef6ff74
SL
55 install -s cp ${DESTDIR}/bin/newcp; \
56 mv ${DESTDIR}/bin/newcp ${DESTDIR}/bin/cp;
84b87180
KM
57 install -s strip ${DESTDIR}/bin/newstrip; \
58 mv ${DESTDIR}/bin/newstrip ${DESTDIR}/bin/strip;
56f5b7b8 59 rm -f ${DESTDIR}/bin/mv; cp mv ${DESTDIR}/bin/mv; rm -f mv; \
2134ed1c 60 strip ${DESTDIR}/bin/mv; chmod 755 ${DESTDIR}/bin/mv
bcefba14 61 -for i in ${SUBDIR}; do \
79854fee 62 (cd $$i; make ${MFLAGS} DESTDIR=${DESTDIR} install); done
bcefba14
RE
63 -for i in ${SCRIPT}; do (install -c $$i.sh ${DESTDIR}/bin/$$i); done
64 -for i in ${STD} ${NSTD}; do (install -s $$i ${DESTDIR}/bin/$$i); done
1697d9cb
KM
65 -for i in ${SETUID}; do \
66 (install -o root -m 4755 -s $$i ${DESTDIR}/bin/$$i); done
258238d5
MK
67 -for i in ${OPERATOR}; do \
68 (install -g operator -m 2755 -s $$i ${DESTDIR}/bin/$$i); done
1697d9cb
KM
69 -for i in ${KMEM}; do \
70 (install -g kmem -m 2755 -s $$i ${DESTDIR}/bin/$$i); done
79854fee
KM
71 rm -f ${DESTDIR}/bin/[; ln ${DESTDIR}/bin/test ${DESTDIR}/bin/[
72 rm -f ${DESTDIR}/bin/e; ln ${DESTDIR}/bin/ed ${DESTDIR}/bin/e
8cf6e5dd
RC
73 rm -f ${DESTDIR}/bin/chfn; ln ${DESTDIR}/bin/passwd ${DESTDIR}/bin/chfn
74 rm -f ${DESTDIR}/bin/chsh; ln ${DESTDIR}/bin/passwd ${DESTDIR}/bin/chsh
79854fee
KM
75
76clean:
77 rm -f a.out core *.s *.o errs
78 for i in ${SUBDIR}; do (cd $$i; make ${MFLAGS} clean); done
258238d5 79 rm -f ${STD} ${NSTD} ${KMEM} ${OPERATOR} ${SETUID} expr.c cp mv strip
79854fee
KM
80
81depend:
258238d5 82 for i in ${STD} ${NSTD} ${KMEM} ${OPERATOR} ${SETUID} cp mv strip; do \
feca6c87
KM
83 cc -M ${INCPATH} $$i.c | sed 's/\.o//' | \
84 awk ' { if ($$1 != prev) \
85 { if (rec != "") print rec; rec = $$0; prev = $$1; } \
0e0b3772
KM
86 else { if (length(rec $$2) > 78) { print rec; rec = $$0; } \
87 else rec = rec " " $$2 } } \
88 END { print rec } ' >> makedep; done
79854fee
KM
89 echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep
90 echo '$$r makedep' >>eddep
91 echo 'w' >>eddep
92 cp Makefile Makefile.bak
93 ed - Makefile < eddep
0e0b3772 94 rm eddep makedep
79854fee
KM
95 echo '# DEPENDENCIES MUST END AT END OF FILE' >> Makefile
96 echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> Makefile
97 echo '# see make depend above' >> Makefile
98
99# Files listed in ${NSTD} have explicit make lines given below.
100
43ccba50
JB
101expr: expr.o
102 cc ${CFLAGS} -o expr expr.o
103
79854fee
KM
104ps:
105 cc ${CFLAGS} -o ps ps.c -lm
106
107# DO NOT DELETE THIS LINE -- make depend uses it
108
feca6c87
KM
109ar: ar.c /usr/include/sys/param.h /usr/include/machine/machparam.h
110ar: /usr/include/signal.h /usr/include/sys/types.h /usr/include/sys/stat.h
111ar: /usr/include/sys/time.h /usr/include/time.h /usr/include/stdio.h
112ar: /usr/include/ar.h
113cat: cat.c /usr/include/stdio.h /usr/include/sys/types.h
114cat: /usr/include/sys/stat.h
115cc: cc.c /usr/include/sys/param.h /usr/include/machine/machparam.h
116cc: /usr/include/signal.h /usr/include/sys/types.h /usr/include/stdio.h
117cc: /usr/include/ctype.h /usr/include/signal.h /usr/include/sys/dir.h
118chmod: chmod.c /usr/include/stdio.h /usr/include/sys/types.h
119chmod: /usr/include/sys/stat.h /usr/include/sys/dir.h
120cmp: cmp.c /usr/include/stdio.h /usr/include/ctype.h
121date: date.c /usr/include/sys/param.h /usr/include/machine/machparam.h
122date: /usr/include/signal.h /usr/include/sys/types.h /usr/include/stdio.h
123date: /usr/include/sys/time.h /usr/include/time.h /usr/include/sys/socket.h
124date: /usr/include/netinet/in.h /usr/include/netdb.h
125date: /usr/include/protocols/timed.h /usr/include/sys/file.h
126date: /usr/include/errno.h /usr/include/syslog.h /usr/include/utmp.h
127dd: dd.c /usr/include/stdio.h /usr/include/signal.h
128du: du.c /usr/include/stdio.h /usr/include/sys/param.h
129du: /usr/include/machine/machparam.h /usr/include/signal.h
130du: /usr/include/sys/types.h /usr/include/sys/stat.h /usr/include/sys/dir.h
131echo: echo.c /usr/include/stdio.h
132ed: ed.c /usr/include/signal.h /usr/include/sgtty.h /usr/include/sys/ioctl.h
133ed: /usr/include/sys/ttychars.h /usr/include/sys/ttydev.h /usr/include/setjmp.h
134grep: grep.c /usr/include/stdio.h /usr/include/ctype.h
135hostid: hostid.c /usr/include/stdio.h
136hostname: hostname.c /usr/include/stdio.h
137kill: kill.c /usr/include/signal.h /usr/include/ctype.h
138ld: ld.c /usr/include/sys/param.h /usr/include/machine/machparam.h
139ld: /usr/include/signal.h /usr/include/sys/types.h /usr/include/signal.h
140ld: /usr/include/stdio.h /usr/include/ctype.h /usr/include/ar.h
141ld: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/ranlib.h
142ld: /usr/include/sys/stat.h /usr/include/sys/file.h
143ln: ln.c /usr/include/stdio.h /usr/include/sys/types.h /usr/include/sys/stat.h
144ln: /usr/include/errno.h
145ls: ls.c /usr/include/sys/param.h /usr/include/machine/machparam.h
146ls: /usr/include/signal.h /usr/include/sys/types.h /usr/include/sys/stat.h
147ls: /usr/include/sys/dir.h /usr/include/stdio.h /usr/include/sgtty.h
148ls: /usr/include/sys/ioctl.h /usr/include/sys/ttychars.h
149ls: /usr/include/sys/ttydev.h /usr/include/pwd.h /usr/include/grp.h
150ls: /usr/include/utmp.h
151mkdir: mkdir.c /usr/include/stdio.h
152mt: mt.c /usr/include/stdio.h /usr/include/ctype.h /usr/include/sys/types.h
153mt: /usr/include/sys/mtio.h /usr/include/sys/ioctl.h
154mt: /usr/include/sys/ttychars.h /usr/include/sys/ttydev.h
155mt: /usr/include/vaxmba/mtreg.h /usr/include/vaxmba/htreg.h
156mt: /usr/include/vaxuba/utreg.h /usr/include/vaxuba/tmreg.h
157mt: /usr/include/vaxuba/tsreg.h
158nice: nice.c /usr/include/stdio.h /usr/include/sys/time.h /usr/include/time.h
159nice: /usr/include/sys/resource.h
160nm: nm.c /usr/include/sys/types.h /usr/include/ar.h /usr/include/stdio.h
161nm: /usr/include/ctype.h /usr/include/a.out.h /usr/include/sys/exec.h
162nm: /usr/include/stab.h /usr/include/sys/stat.h
163od: od.c /usr/include/stdio.h /usr/include/sys/types.h /usr/include/sys/stat.h
164pagesize: pagesize.c
165pr: pr.c /usr/include/stdio.h /usr/include/signal.h /usr/include/sys/types.h
166pr: /usr/include/sys/stat.h
167pwd: pwd.c /usr/include/stdio.h /usr/include/sys/param.h
168pwd: /usr/include/machine/machparam.h /usr/include/signal.h
169pwd: /usr/include/sys/types.h
170rm: rm.c /usr/include/stdio.h /usr/include/sys/param.h
171rm: /usr/include/machine/machparam.h /usr/include/signal.h
172rm: /usr/include/sys/types.h /usr/include/sys/stat.h /usr/include/sys/dir.h
173rm: /usr/include/sys/file.h
174rmail: rmail.c /usr/include/stdio.h /usr/include/sysexits.h
175rmdir: rmdir.c /usr/include/stdio.h
176size: size.c /usr/include/stdio.h /usr/include/a.out.h /usr/include/sys/exec.h
feca6c87
KM
177stty: stty.c /usr/include/stdio.h /usr/include/sys/ioctl.h
178stty: /usr/include/sys/ttychars.h /usr/include/sys/ttydev.h
179sync: sync.c
180tar: tar.c /usr/include/stdio.h /usr/include/sys/param.h
181tar: /usr/include/machine/machparam.h /usr/include/signal.h
182tar: /usr/include/sys/types.h /usr/include/sys/stat.h /usr/include/sys/dir.h
183tar: /usr/include/sys/ioctl.h /usr/include/sys/ttychars.h
184tar: /usr/include/sys/ttydev.h /usr/include/sys/mtio.h /usr/include/sys/time.h
185tar: /usr/include/time.h /usr/include/signal.h /usr/include/errno.h
186tee: tee.c /usr/include/signal.h /usr/include/sys/types.h
187tee: /usr/include/sys/stat.h /usr/include/errno.h
188test: test.c /usr/include/stdio.h /usr/include/sys/types.h
189test: /usr/include/sys/stat.h
190time: time.c /usr/include/stdio.h /usr/include/signal.h
191time: /usr/include/sys/types.h /usr/include/sys/time.h /usr/include/time.h
192time: /usr/include/sys/resource.h
193wall: wall.c /usr/include/stdio.h /usr/include/utmp.h /usr/include/errno.h
194wall: /usr/include/signal.h /usr/include/sys/time.h /usr/include/time.h
195wall: /usr/include/fcntl.h /usr/include/sys/types.h /usr/include/sys/stat.h
196who: who.c /usr/include/stdio.h /usr/include/utmp.h /usr/include/pwd.h
197who: /usr/include/ctype.h
198write: write.c /usr/include/stdio.h /usr/include/ctype.h
199write: /usr/include/sys/types.h /usr/include/sys/stat.h /usr/include/signal.h
200write: /usr/include/utmp.h /usr/include/sys/time.h /usr/include/time.h
201expr: expr.c /usr/include/stdio.h
202ps: ps.c /usr/include/stdio.h /usr/include/ctype.h /usr/include/nlist.h
203ps: /usr/include/pwd.h /usr/include/sys/param.h
204ps: /usr/include/machine/machparam.h /usr/include/signal.h
205ps: /usr/include/sys/types.h /usr/include/sys/ioctl.h
206ps: /usr/include/sys/ttychars.h /usr/include/sys/ttydev.h
207ps: /usr/include/sys/tty.h /usr/include/sys/ttychars.h
208ps: /usr/include/sys/ttydev.h /usr/include/sys/dir.h /usr/include/sys/user.h
209ps: /usr/include/machine/pcb.h /usr/include/sys/dmap.h /usr/include/sys/time.h
210ps: /usr/include/time.h /usr/include/sys/resource.h /usr/include/sys/namei.h
211ps: /usr/include/sys/uio.h /usr/include/errno.h /usr/include/sys/proc.h
212ps: /usr/include/machine/pte.h /usr/include/sys/vm.h /usr/include/sys/vmparam.h
213ps: /usr/include/machine/vmparam.h /usr/include/sys/vmmac.h
214ps: /usr/include/sys/vmmeter.h /usr/include/sys/vmsystm.h
215ps: /usr/include/sys/text.h /usr/include/sys/stat.h /usr/include/sys/mbuf.h
216ps: /usr/include/math.h /usr/include/errno.h
217chgrp: chgrp.c /usr/include/stdio.h /usr/include/ctype.h
218chgrp: /usr/include/sys/types.h /usr/include/sys/stat.h /usr/include/grp.h
219chgrp: /usr/include/pwd.h /usr/include/sys/dir.h
220df: df.c /usr/include/sys/param.h /usr/include/machine/machparam.h
221df: /usr/include/signal.h /usr/include/sys/types.h /usr/include/sys/fs.h
222df: /usr/include/sys/stat.h /usr/include/errno.h /usr/include/stdio.h
223df: /usr/include/fstab.h /usr/include/mtab.h
224login: login.c /usr/include/sys/param.h /usr/include/machine/machparam.h
225login: /usr/include/signal.h /usr/include/sys/types.h /usr/include/sys/quota.h
226login: /usr/include/sys/stat.h /usr/include/sys/time.h /usr/include/time.h
227login: /usr/include/sys/resource.h /usr/include/sys/file.h /usr/include/sgtty.h
228login: /usr/include/sys/ioctl.h /usr/include/sys/ttychars.h
229login: /usr/include/sys/ttydev.h /usr/include/utmp.h /usr/include/signal.h
230login: /usr/include/pwd.h /usr/include/stdio.h /usr/include/lastlog.h
231login: /usr/include/errno.h /usr/include/ttyent.h /usr/include/syslog.h
232mail: mail.c /usr/include/sys/types.h /usr/include/sys/stat.h
233mail: /usr/include/sys/file.h /usr/include/ctype.h /usr/include/stdio.h
234mail: /usr/include/pwd.h /usr/include/utmp.h /usr/include/signal.h
235mail: /usr/include/setjmp.h /usr/include/sysexits.h /usr/include/sys/socket.h
236mail: /usr/include/netinet/in.h /usr/include/netdb.h
237passwd: passwd.c /usr/include/sys/types.h /usr/include/sys/file.h
238passwd: /usr/include/sys/time.h /usr/include/time.h /usr/include/sys/resource.h
239passwd: /usr/include/stdio.h /usr/include/signal.h /usr/include/pwd.h
240passwd: /usr/include/ndbm.h /usr/include/errno.h /usr/include/strings.h
241passwd: /usr/include/ctype.h
242rcp: rcp.c /usr/include/sys/param.h /usr/include/machine/machparam.h
243rcp: /usr/include/signal.h /usr/include/sys/types.h /usr/include/sys/stat.h
244rcp: /usr/include/sys/time.h /usr/include/time.h /usr/include/sys/ioctl.h
245rcp: /usr/include/sys/ttychars.h /usr/include/sys/ttydev.h
246rcp: /usr/include/netinet/in.h /usr/include/stdio.h /usr/include/signal.h
247rcp: /usr/include/pwd.h /usr/include/ctype.h /usr/include/netdb.h
248rcp: /usr/include/errno.h /usr/include/sys/dir.h
249su: su.c /usr/include/stdio.h /usr/include/pwd.h /usr/include/grp.h
250su: /usr/include/syslog.h /usr/include/sys/types.h /usr/include/sys/time.h
251su: /usr/include/time.h /usr/include/sys/resource.h
252cp: cp.c /usr/include/stdio.h /usr/include/sys/param.h
253cp: /usr/include/machine/machparam.h /usr/include/signal.h
254cp: /usr/include/sys/types.h /usr/include/sys/stat.h /usr/include/sys/dir.h
255cp: /usr/include/sys/time.h /usr/include/time.h
256mv: mv.c /usr/include/sys/param.h /usr/include/machine/machparam.h
257mv: /usr/include/signal.h /usr/include/sys/types.h /usr/include/sys/stat.h
258mv: /usr/include/sys/time.h /usr/include/time.h /usr/include/stdio.h
259mv: /usr/include/sys/dir.h /usr/include/errno.h /usr/include/signal.h
84b87180
KM
260strip: strip.c /usr/include/a.out.h /usr/include/sys/exec.h
261strip: /usr/include/signal.h /usr/include/stdio.h /usr/include/sys/file.h
dda7c879
SL
262# DEPENDENCIES MUST END AT END OF FILE
263# IF YOU PUT STUFF HERE IT WILL GO AWAY
264# see make depend above