xref: /original-bsd/bin/Makefile (revision f0fd5f8a)
1#	@(#)Makefile	4.4	(Berkeley)	12/19/82
2#
3DESTDIR=
4CFLAGS=	-O
5
6# Programs that live in subdirectories, and have makefiles of their own.
7#
8SUBDIR=	adb as awk csh diff make sed sh spell tp
9
10# Shell scripts that need only be installed and are never removed.
11#
12SCRIPT=	false true
13
14# C programs that live in the current directory and do not need
15# explicit make lines.
16#
17STD=	ar cat cc chgrp chmod cmp date dd df du echo ed expr \
18	grep hostid hostname kill ld ln login ls mail mkdir mt mv nice \
19	nm od pagesize passwd pr pwd rm rmail rmdir size strip stty su sync \
20	tee test wall who write
21
22# Programs that must run setuid to root
23#
24SETUID=	chgrp df login mail mkdir mv passwd rmdir su
25
26# C programs that live in the current directory and need explicit make lines.
27#
28NSTD=	ps tar time
29
30all:	${SUBDIR} ${STD} ${NSTD} cp
31
32${SUBDIR}: /tmp
33	cd $@; make ${MFLAGS}
34
35${STD} cp:
36	cc ${CFLAGS} -o $@ $@.c
37
38# take care with cp, install uses it
39install:
40	install cp ${DESTDIR}/bin/newcp; \
41		mv ${DESTDIR}/bin/newcp ${DESTDIR}/bin/cp
42	for i in ${SUBDIR}; do \
43		(cd $$i; make ${MFLAGS} DESTDIR=${DESTDIR} install); done
44	for i in ${SCRIPT}; do (install -c $$i.sh ${DESTDIR}/bin/$$i); done
45	for i in ${STD} ${NSTD}; do (install $$i ${DESTDIR}/bin/$$i); done
46	for i in ${SETUID}; do (chown root ${DESTDIR}/bin/$$i; \
47		chmod 4755 ${DESTDIR}/bin/$$i); done
48	rm -f ${DESTDIR}/bin/[; ln ${DESTDIR}/bin/test ${DESTDIR}/bin/[
49	rm -f ${DESTDIR}/bin/e; ln ${DESTDIR}/bin/ed ${DESTDIR}/bin/e
50
51clean:
52	rm -f a.out core *.s *.o errs
53	for i in ${SUBDIR}; do (cd $$i; make ${MFLAGS} clean); done
54	rm -f ${STD} ${NSTD} expr.c
55
56depend:
57	cat </dev/null >x.c
58	for i in ${STD} ${NSTD}; do \
59		(echo $$i: $$i.c >>makedep; \
60		/bin/grep '^#[ 	]*include' x.c $$i.c | sed \
61			-e 's,<\(.*\)>,"/usr/include/\1",' \
62			-e 's/:[^"]*"\([^"]*\)".*/: \1/' \
63			-e 's/\.c//' >>makedep); done
64	echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep
65	echo '$$r makedep' >>eddep
66	echo 'w' >>eddep
67	cp Makefile Makefile.bak
68	ed - Makefile < eddep
69	rm eddep makedep x.c
70	echo '# DEPENDENCIES MUST END AT END OF FILE' >> Makefile
71	echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> Makefile
72	echo '# see make depend above' >> Makefile
73
74# Files listed in ${NSTD} have explicit make lines given below.
75
76ps:
77	cc ${CFLAGS} -o ps ps.c -lm
78
79tar:
80	cc ${CFLAGS} -o tar tar.c -ljobs
81
82time:
83	cc ${CFLAGS} -o time time.c -ljobs
84
85# DO NOT DELETE THIS LINE -- make depend uses it
86
87ar: ar.c
88ar: /usr/include/stdio.h
89ar: /usr/include/sys/types.h
90ar: /usr/include/sys/stat.h
91ar: /usr/include/ar.h
92ar: /usr/include/signal.h
93cat: cat.c
94cat: /usr/include/stdio.h
95cat: /usr/include/sys/types.h
96cat: /usr/include/sys/stat.h
97cc: cc.c
98cc: /usr/include/sys/param.h
99cc: /usr/include/stdio.h
100cc: /usr/include/ctype.h
101cc: /usr/include/signal.h
102cc: /usr/include/dir.h
103chgrp: chgrp.c
104chgrp: /usr/include/stdio.h
105chgrp: /usr/include/ctype.h
106chgrp: /usr/include/sys/types.h
107chgrp: /usr/include/sys/stat.h
108chgrp: /usr/include/grp.h
109chgrp: /usr/include/pwd.h
110chmod: chmod.c
111chmod: /usr/include/stdio.h
112chmod: /usr/include/sys/types.h
113chmod: /usr/include/sys/stat.h
114cmp: cmp.c
115cmp: /usr/include/stdio.h
116cmp: /usr/include/ctype.h
117cp: cp.c
118cp: /usr/include/stdio.h
119cp: /usr/include/sys/param.h
120cp: /usr/include/sys/stat.h
121cp: /usr/include/dir.h
122date: date.c
123date: /usr/include/stdio.h
124date: /usr/include/time.h
125date: /usr/include/sys/types.h
126date: /usr/include/sys/timeb.h
127date: /usr/include/utmp.h
128dd: dd.c
129dd: /usr/include/stdio.h
130dd: /usr/include/signal.h
131df: df.c
132df: /usr/include/stdio.h
133df: /usr/include/fstab.h
134df: /usr/include/sys/param.h
135df: /usr/include/sys/fs.h
136df: /usr/include/sys/stat.h
137du: du.c
138du: /usr/include/stdio.h
139du: /usr/include/sys/param.h
140du: /usr/include/sys/stat.h
141du: /usr/include/dir.h
142echo: echo.c
143echo: /usr/include/stdio.h
144ed: ed.c
145ed: /usr/include/signal.h
146ed: /usr/include/sgtty.h
147ed: /usr/include/setjmp.h
148expr: expr.c
149expr: /usr/include/stdio.h
150grep: grep.c
151grep: /usr/include/stdio.h
152grep: /usr/include/ctype.h
153hostname: hostname.c
154hostname: /usr/include/stdio.h
155kill: kill.c
156kill: /usr/include/signal.h
157kill: /usr/include/ctype.h
158ld: ld.c
159ld: /usr/include/sys/types.h
160ld: /usr/include/signal.h
161ld: /usr/include/stdio.h
162ld: /usr/include/ctype.h
163ld: /usr/include/ar.h
164ld: /usr/include/a.out.h
165ld: /usr/include/ranlib.h
166ld: /usr/include/stat.h
167ld: /usr/include/pagsiz.h
168ln: ln.c
169ln: /usr/include/stdio.h
170ln: /usr/include/sys/types.h
171ln: /usr/include/sys/stat.h
172login: login.c
173login: /usr/include/sys/types.h
174login: /usr/include/sgtty.h
175login: /usr/include/utmp.h
176login: /usr/include/signal.h
177login: /usr/include/pwd.h
178login: /usr/include/stdio.h
179login: /usr/include/sys/stat.h
180login: /usr/include/lastlog.h
181ls: ls.c
182ls: /usr/include/sys/param.h
183ls: /usr/include/sys/stat.h
184ls: /usr/include/dir.h
185ls: /usr/include/stdio.h
186ls: /usr/include/sgtty.h
187ls: /usr/include/pwd.h
188ls: /usr/include/grp.h
189ls: /usr/include/utmp.h
190mail: mail.c
191mail: /usr/include/ctype.h
192mail: /usr/include/stdio.h
193mail: /usr/include/pwd.h
194mail: /usr/include/utmp.h
195mail: /usr/include/signal.h
196mail: /usr/include/sys/types.h
197mail: /usr/include/sys/stat.h
198mail: /usr/include/setjmp.h
199mail: /usr/include/sysexits.h
200mail: /usr/include/sys/socket.h
201mail: /usr/include/netinet/in.h
202mkdir: mkdir.c
203mkdir: /usr/include/signal.h
204mkdir: /usr/include/stdio.h
205mkdir: /usr/include/sys/types.h
206mkdir: /usr/include/stat.h
207mt: mt.c
208mt: /usr/include/stdio.h
209mt: /usr/include/ctype.h
210mt: /usr/include/sys/types.h
211mt: /usr/include/sys/mtio.h
212mt: /usr/include/sys/ioctl.h
213mt: /usr/include/vaxmba/mtreg.h
214mt: /usr/include/vaxmba/htreg.h
215mt: /usr/include/vaxuba/utreg.h
216mt: /usr/include/vaxuba/tmreg.h
217mt: /usr/include/vaxuba/tsreg.h
218mv: mv.c
219mv: /usr/include/stdio.h
220mv: /usr/include/sys/types.h
221mv: /usr/include/sys/stat.h
222mv: /usr/include/signal.h
223nice: nice.c
224nice: /usr/include/stdio.h
225nm: nm.c
226nm: /usr/include/sys/types.h
227nm: /usr/include/ar.h
228nm: /usr/include/stdio.h
229nm: /usr/include/ctype.h
230nm: /usr/include/a.out.h
231nm: /usr/include/stab.h
232nm: /usr/include/pagsiz.h
233nm: /usr/include/stat.h
234od: od.c
235od: /usr/include/stdio.h
236passwd: passwd.c
237passwd: /usr/include/stdio.h
238passwd: /usr/include/signal.h
239passwd: /usr/include/pwd.h
240pr: pr.c
241pr: /usr/include/stdio.h
242pr: /usr/include/signal.h
243pr: /usr/include/sys/types.h
244pr: /usr/include/sys/stat.h
245pwd: pwd.c
246pwd: /usr/include/stdio.h
247pwd: /usr/include/sys/param.h
248pwd: /usr/include/sys/stat.h
249pwd: /usr/include/dir.h
250rm: rm.c
251rm: /usr/include/stdio.h
252rm: /usr/include/sys/param.h
253rm: /usr/include/sys/stat.h
254rm: /usr/include/dir.h
255rmail: rmail.c
256rmail: /usr/include/stdio.h
257rmdir: rmdir.c
258rmdir: /usr/include/sys/param.h
259rmdir: /usr/include/sys/stat.h
260rmdir: /usr/include/dir.h
261rmdir: /usr/include/stdio.h
262size: size.c
263size: /usr/include/stdio.h
264size: /usr/include/a.out.h
265strip: strip.c
266strip: /usr/include/a.out.h
267strip: /usr/include/signal.h
268strip: /usr/include/pagsiz.h
269stty: stty.c
270stty: /usr/include/stdio.h
271stty: /usr/include/sgtty.h
272su: su.c
273su: /usr/include/stdio.h
274su: /usr/include/pwd.h
275sync: sync.c
276tar: tar.c
277tar: /usr/include/stdio.h
278tar: /usr/include/sys/param.h
279tar: /usr/include/sys/stat.h
280tar: /usr/include/dir.h
281tar: /usr/include/sys/ioctl.h
282tar: /usr/include/sys/mtio.h
283tar: /usr/include/signal.h
284tee: tee.c
285tee: /usr/include/signal.h
286tee: /usr/include/sys/types.h
287tee: /usr/include/sys/stat.h
288tee: /usr/include/errno.h
289tee: /usr/include/pagsiz.h
290test: test.c
291test: /usr/include/stdio.h
292test: /usr/include/sys/types.h
293test: /usr/include/sys/stat.h
294time: time.c
295time: /usr/include/stdio.h
296time: /usr/include/signal.h
297time: /usr/include/sys/types.h
298time: /usr/include/sys/times.h
299wall: wall.c
300wall: /usr/include/stdio.h
301wall: /usr/include/utmp.h
302wall: /usr/include/time.h
303wall: /usr/include/signal.h
304who: who.c
305who: /usr/include/stdio.h
306who: /usr/include/utmp.h
307who: /usr/include/pwd.h
308who: /usr/include/ctype.h
309write: write.c
310write: /usr/include/stdio.h
311write: /usr/include/sys/types.h
312write: /usr/include/sys/stat.h
313write: /usr/include/signal.h
314write: /usr/include/utmp.h
315write: /usr/include/time.h
316ps: ps.c
317ps: /usr/include/stdio.h
318ps: /usr/include/ctype.h
319ps: /usr/include/nlist.h
320ps: /usr/include/pwd.h
321ps: /usr/include/sys/param.h
322ps: /usr/include/sys/tty.h
323ps: /usr/include/dir.h
324ps: /usr/include/sys/user.h
325ps: /usr/include/sys/proc.h
326ps: /usr/include/sys/pte.h
327ps: /usr/include/sys/vm.h
328ps: /usr/include/sys/text.h
329ps: /usr/include/sys/stat.h
330ps: /usr/include/math.h
331ps: /usr/include/sys/vlimit.h
332# DEPENDENCIES MUST END AT END OF FILE
333# IF YOU PUT STUFF HERE IT WILL GO AWAY
334# see make depend above
335