new template
[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#
0981a644 6# @(#)Makefile 5.22 (Berkeley) 6/3/87
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
0981a644
KB
19# C source that lives in the current directory
20#
21SRCS= ar.c cat.c cc.c chgrp.c chmod.c cmp.c date.c dd.c du.c echo.c ed.c \
22 expr.c grep.c hostid.c hostname.c kill.c ld.c ln.c ls.c machine.c \
23 mkdir.c mt.c nice.c nm.c od.c pagesize.c pr.c ps.c pwd.c rm.c \
24 rmail.c rmdir.c size.c stty.c sync.c tar.c tee.c test.c time.c who.c
25
79854fee
KM
26# C programs that live in the current directory and do not need
27# explicit make lines.
28#
69c1d69e 29STD= ar cat cc chgrp chmod cmp date dd du echo ed grep hostid \
12bc7f43 30 hostname kill ld ln ls machine mkdir mt nice nm od pagesize pr \
69c1d69e 31 pwd rm rmail rmdir size stty sync tar tee test time who
ed4eaf26 32
e4cc2084
RC
33# C programs that live in the current directory and need explicit make lines.
34#
0981a644 35NSTD= expr ps
79854fee 36
0981a644 37# Programs that get installed with special permissions
c89291e2 38#
0981a644 39PERM= df login mail passwd rcp su wall write
c89291e2 40
0981a644 41BINS= ${STD} ${NSTD} ${PERM} cp mv strip
c89291e2
KM
42
43all: ${SUBDIR} ${BINS}
79854fee 44
7e2bf8ce 45${SUBDIR}: FRC
79854fee
KM
46 cd $@; make ${MFLAGS}
47
0981a644 48${STD} ${PERM} mv cp strip:
ff17818f 49 ${CC} ${CFLAGS} -o $@ $@.c
79854fee 50
84b87180 51# take care with cp, strip, and mv, install uses them
0981a644
KB
52install: FRC
53 install -s -o bin -g bin -m 755 cp ${DESTDIR}/bin/newcp; \
5ef6ff74 54 mv ${DESTDIR}/bin/newcp ${DESTDIR}/bin/cp;
0981a644 55 install -s -o bin -g bin -m 755 strip ${DESTDIR}/bin/newstrip; \
84b87180 56 mv ${DESTDIR}/bin/newstrip ${DESTDIR}/bin/strip;
0981a644
KB
57 install -c -s -o bin -g bin -m 755 mv ${DESTDIR}/bin/mv
58 rm -f mv
bcefba14 59 -for i in ${SUBDIR}; do \
79854fee 60 (cd $$i; make ${MFLAGS} DESTDIR=${DESTDIR} install); done
0981a644
KB
61 -for i in ${SCRIPT}; do \
62 (install -c -o bin -g bin -m 755 $$i.sh ${DESTDIR}/bin/$$i); \
63 done
64 -for i in ${STD}; do \
65 (install -s -o bin -g bin -m 755 $$i ${DESTDIR}/bin/$$i); \
66 done
67# programs that run with special permissions
68 install -s -o root -o bin -m 4755 login ${DESTDIR}/bin/login
69 install -s -o root -o bin -m 4755 mail ${DESTDIR}/bin/mail
70 install -s -o root -o bin -m 4755 passwd ${DESTDIR}/bin/passwd
71 install -s -o root -o bin -m 4755 rcp ${DESTDIR}/bin/rcp
72 install -s -o root -o bin -m 4755 su ${DESTDIR}/bin/su
73 install -s -o bin -g operator -m 2755 df ${DESTDIR}/bin/df
74 install -s -o bin -g kmem -m 2755 ps ${DESTDIR}/bin/ps
75 install -s -o bin -g tty -m 2755 wall ${DESTDIR}/bin/wall
76 install -s -o bin -g tty -m 2755 write ${DESTDIR}/bin/write
77 install -s -o bin -g bin -m 755 expr ${DESTDIR}/bin/expr
78# directories and links
79854fee
KM
79 rm -f ${DESTDIR}/bin/[; ln ${DESTDIR}/bin/test ${DESTDIR}/bin/[
80 rm -f ${DESTDIR}/bin/e; ln ${DESTDIR}/bin/ed ${DESTDIR}/bin/e
8cf6e5dd
RC
81 rm -f ${DESTDIR}/bin/chfn; ln ${DESTDIR}/bin/passwd ${DESTDIR}/bin/chfn
82 rm -f ${DESTDIR}/bin/chsh; ln ${DESTDIR}/bin/passwd ${DESTDIR}/bin/chsh
79854fee 83
0981a644 84clean: FRC
c89291e2 85 rm -f ${BINS} expr.c a.out core *.s *.o errs
79854fee 86 for i in ${SUBDIR}; do (cd $$i; make ${MFLAGS} clean); done
79854fee 87
0981a644 88depend: expr.c FRC
5d3e745d 89 for i in ${SUBDIR}; do (cd $$i; make ${MFLAGS} depend); done
0981a644
KB
90 mkdep ${CFLAGS} ${SRCS}
91
92FRC:
79854fee
KM
93
94# Files listed in ${NSTD} have explicit make lines given below.
95
43ccba50 96expr: expr.o
0981a644 97 ${CC} ${CFLAGS} -o $@ expr.o
43ccba50 98
79854fee 99ps:
0981a644
KB
100 ${CC} ${CFLAGS} -o $@ ps.c -lm
101
102# DO NOT DELETE THIS LINE -- mkdep uses it.
103# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
104
105ar.o: ar.c /usr/include/sys/param.h /usr/include/sys/types.h
106ar.o: /usr/include/signal.h /usr/include/machine/machparam.h
107ar.o: /usr/include/sys/stat.h /usr/include/sys/time.h /usr/include/time.h
108ar.o: /usr/include/stdio.h /usr/include/ar.h
109cat.o: cat.c /usr/include/stdio.h /usr/include/sys/types.h
110cat.o: /usr/include/sys/stat.h
111cc.o: cc.c /usr/include/sys/param.h /usr/include/sys/types.h
112cc.o: /usr/include/signal.h /usr/include/machine/machparam.h
113cc.o: /usr/include/stdio.h /usr/include/ctype.h /usr/include/signal.h
114cc.o: /usr/include/sys/dir.h
115chgrp.o: chgrp.c /usr/include/stdio.h /usr/include/ctype.h
116chgrp.o: /usr/include/sys/types.h /usr/include/sys/stat.h /usr/include/grp.h
117chgrp.o: /usr/include/pwd.h /usr/include/sys/dir.h
118chmod.o: chmod.c /usr/include/stdio.h /usr/include/sys/types.h
119chmod.o: /usr/include/sys/stat.h /usr/include/sys/dir.h
120cmp.o: cmp.c /usr/include/sys/param.h /usr/include/sys/types.h
121cmp.o: /usr/include/signal.h /usr/include/machine/machparam.h
122cmp.o: /usr/include/sys/file.h /usr/include/sys/stat.h /usr/include/stdio.h
123cmp.o: /usr/include/ctype.h
124date.o: date.c /usr/include/sys/param.h /usr/include/sys/types.h
125date.o: /usr/include/signal.h /usr/include/machine/machparam.h
126date.o: /usr/include/sys/time.h /usr/include/time.h /usr/include/sys/file.h
127date.o: /usr/include/errno.h /usr/include/syslog.h /usr/include/utmp.h
128date.o: /usr/include/tzfile.h /usr/include/stdio.h /usr/include/ctype.h
129date.o: /usr/include/strings.h /usr/include/sys/socket.h
130date.o: /usr/include/netinet/in.h /usr/include/netdb.h
131date.o: /usr/include/protocols/timed.h
132dd.o: dd.c /usr/include/sys/file.h /usr/include/stdio.h /usr/include/signal.h
133du.o: du.c /usr/include/stdio.h /usr/include/sys/param.h
134du.o: /usr/include/sys/types.h /usr/include/signal.h
135du.o: /usr/include/machine/machparam.h /usr/include/sys/stat.h
136du.o: /usr/include/sys/dir.h
137echo.o: echo.c /usr/include/stdio.h
138ed.o: ed.c /usr/include/signal.h /usr/include/sgtty.h /usr/include/sys/ioctl.h
139ed.o: /usr/include/sys/ttychars.h /usr/include/sys/ttydev.h
140ed.o: /usr/include/setjmp.h
141grep.o: grep.c /usr/include/stdio.h /usr/include/ctype.h
142hostid.o: hostid.c /usr/include/sys/types.h /usr/include/stdio.h
143hostid.o: /usr/include/ctype.h /usr/include/netdb.h
144hostname.o: hostname.c /usr/include/stdio.h
145kill.o: kill.c /usr/include/signal.h /usr/include/ctype.h
146ld.o: ld.c /usr/include/sys/param.h /usr/include/sys/types.h
147ld.o: /usr/include/signal.h /usr/include/machine/machparam.h
148ld.o: /usr/include/signal.h /usr/include/stdio.h /usr/include/ctype.h
149ld.o: /usr/include/ar.h /usr/include/a.out.h /usr/include/sys/exec.h
150ld.o: /usr/include/ranlib.h /usr/include/sys/stat.h /usr/include/sys/file.h
151ln.o: ln.c /usr/include/stdio.h /usr/include/sys/types.h
152ln.o: /usr/include/sys/stat.h /usr/include/errno.h
153ls.o: ls.c /usr/include/sys/param.h /usr/include/sys/types.h
154ls.o: /usr/include/signal.h /usr/include/machine/machparam.h
155ls.o: /usr/include/sys/stat.h /usr/include/sys/dir.h /usr/include/stdio.h
156ls.o: /usr/include/sgtty.h /usr/include/sys/ioctl.h /usr/include/sys/ttychars.h
157ls.o: /usr/include/sys/ttydev.h /usr/include/pwd.h /usr/include/grp.h
158ls.o: /usr/include/utmp.h
159machine.o: machine.c /usr/include/sys/param.h /usr/include/sys/types.h
160machine.o: /usr/include/signal.h /usr/include/machine/machparam.h
161mkdir.o: mkdir.c /usr/include/stdio.h
162mt.o: mt.c /usr/include/stdio.h /usr/include/ctype.h /usr/include/sys/types.h
163mt.o: /usr/include/sys/mtio.h /usr/include/sys/ioctl.h
164mt.o: /usr/include/sys/ttychars.h /usr/include/sys/ttydev.h
165mt.o: /usr/include/tahoevba/cyreg.h
166nice.o: nice.c /usr/include/stdio.h /usr/include/sys/time.h /usr/include/time.h
167nice.o: /usr/include/sys/resource.h
168nm.o: nm.c /usr/include/sys/types.h /usr/include/sys/file.h /usr/include/ar.h
169nm.o: /usr/include/stdio.h /usr/include/ctype.h /usr/include/a.out.h
170nm.o: /usr/include/sys/exec.h /usr/include/stab.h /usr/include/ranlib.h
171od.o: od.c /usr/include/stdio.h /usr/include/sys/types.h
172od.o: /usr/include/sys/stat.h
173pagesize.o: pagesize.c
174pr.o: pr.c /usr/include/stdio.h /usr/include/signal.h /usr/include/sys/types.h
175pr.o: /usr/include/sys/stat.h
176pwd.o: pwd.c /usr/include/stdio.h /usr/include/sys/param.h
177pwd.o: /usr/include/sys/types.h /usr/include/signal.h
178pwd.o: /usr/include/machine/machparam.h
179rm.o: rm.c /usr/include/stdio.h /usr/include/sys/param.h
180rm.o: /usr/include/sys/types.h /usr/include/signal.h
181rm.o: /usr/include/machine/machparam.h /usr/include/sys/stat.h
182rm.o: /usr/include/sys/dir.h /usr/include/sys/file.h
183rmail.o: rmail.c /usr/include/stdio.h /usr/include/sysexits.h
184rmdir.o: rmdir.c /usr/include/stdio.h
185size.o: size.c /usr/include/stdio.h /usr/include/a.out.h
186size.o: /usr/include/sys/exec.h
187stty.o: stty.c /usr/include/stdio.h /usr/include/sys/ioctl.h
188stty.o: /usr/include/sys/ttychars.h /usr/include/sys/ttydev.h
189sync.o: sync.c
190tar.o: tar.c /usr/include/stdio.h /usr/include/sys/param.h
191tar.o: /usr/include/sys/types.h /usr/include/signal.h
192tar.o: /usr/include/machine/machparam.h /usr/include/sys/stat.h
193tar.o: /usr/include/sys/dir.h /usr/include/sys/ioctl.h
194tar.o: /usr/include/sys/ttychars.h /usr/include/sys/ttydev.h
195tar.o: /usr/include/sys/mtio.h /usr/include/sys/time.h /usr/include/time.h
196tar.o: /usr/include/signal.h /usr/include/errno.h /usr/include/fcntl.h
197tee.o: tee.c /usr/include/signal.h /usr/include/sys/types.h
198tee.o: /usr/include/sys/stat.h /usr/include/errno.h
199test.o: test.c /usr/include/stdio.h /usr/include/sys/types.h
200test.o: /usr/include/sys/stat.h
201time.o: time.c /usr/include/stdio.h /usr/include/signal.h
202time.o: /usr/include/sys/types.h /usr/include/sys/time.h /usr/include/time.h
203time.o: /usr/include/sys/resource.h
204who.o: who.c /usr/include/stdio.h /usr/include/utmp.h /usr/include/pwd.h
205who.o: /usr/include/ctype.h
206
207# IF YOU PUT ANYTHING HERE IT WILL GO AWAY