| 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 | # |
| 6 | # @(#)Makefile 5.26 (Berkeley) %G% |
| 7 | # |
| 8 | DESTDIR= |
| 9 | CFLAGS= -O |
| 10 | LIBC= /lib/libc.a |
| 11 | |
| 12 | # Programs that live in subdirectories, and have makefiles of their own. |
| 13 | # |
| 14 | SUBDIR= adb as awk csh diff make passwd sed sh tp |
| 15 | |
| 16 | # Shell scripts that need only be installed and are never removed. |
| 17 | # |
| 18 | SCRIPT= false true |
| 19 | |
| 20 | # C source that lives in the current directory |
| 21 | # |
| 22 | SRCS= ar.c cat.c cc.c chmod.c cmp.c cp.c date.c dd.c df.c du.c \ |
| 23 | echo.c ed.c expr.c hostid.c hostname.c kill.c ld.c ln.c login.c \ |
| 24 | ls.c machine.c mkdir.c mt.c mv.c nice.c nm.c od.c pagesize.c \ |
| 25 | pr.c ps.c pwd.c rcp.c rm.c rmdir.c size.c strip.c \ |
| 26 | stty.c su.c sync.c tar.c tee.c test.c time.c wall.c who.c write.c |
| 27 | |
| 28 | # C programs that live in the current directory and do not need |
| 29 | # explicit make lines. |
| 30 | # |
| 31 | STD= ar cat cc chmod cmp cp date dd du echo ed hostid \ |
| 32 | hostname kill ld ln ls machine mkdir mt mv nice nm od pagesize pr \ |
| 33 | pwd rm rmdir size strip stty sync tar tee test time who |
| 34 | |
| 35 | # C programs that live in the current directory and need explicit make lines. |
| 36 | # |
| 37 | NSTD= expr ps |
| 38 | |
| 39 | # Programs that get installed with special permissions |
| 40 | # |
| 41 | PERM= df login rcp su wall write |
| 42 | |
| 43 | all: ${SUBDIR} ${STD} ${NSTD} ${PERM} |
| 44 | |
| 45 | ${SUBDIR}: FRC |
| 46 | cd $@; make ${MFLAGS} |
| 47 | |
| 48 | ${STD} ${PERM}: ${LIBC} |
| 49 | ${CC} ${CFLAGS} -o $@ $@.c |
| 50 | |
| 51 | install: FRC |
| 52 | -for i in ${SUBDIR}; do \ |
| 53 | (cd $$i; make ${MFLAGS} DESTDIR=${DESTDIR} install); done |
| 54 | -for i in ${SCRIPT}; do \ |
| 55 | (install -c -o bin -g bin -m 755 $$i.sh ${DESTDIR}/bin/$$i); \ |
| 56 | done |
| 57 | install -o bin -g bin -m 755 ${STD} ${DESTDIR}/bin |
| 58 | # programs that run with special permissions |
| 59 | install -s -o root -g bin -m 4755 login ${DESTDIR}/bin/login |
| 60 | install -s -o root -g bin -m 4755 rcp ${DESTDIR}/bin/rcp |
| 61 | install -s -o root -g bin -m 4755 su ${DESTDIR}/bin/su |
| 62 | install -s -o bin -g operator -m 2755 df ${DESTDIR}/bin/df |
| 63 | install -s -o bin -g kmem -m 2755 ps ${DESTDIR}/bin/ps |
| 64 | install -s -o bin -g tty -m 2755 wall ${DESTDIR}/bin/wall |
| 65 | install -s -o bin -g tty -m 2755 write ${DESTDIR}/bin/write |
| 66 | install -s -o bin -g bin -m 755 expr ${DESTDIR}/bin/expr |
| 67 | # directories and links |
| 68 | rm -f ${DESTDIR}/bin/[; ln ${DESTDIR}/bin/test ${DESTDIR}/bin/[ |
| 69 | rm -f ${DESTDIR}/bin/e; ln ${DESTDIR}/bin/ed ${DESTDIR}/bin/e |
| 70 | |
| 71 | clean: FRC |
| 72 | rm -f ${STD} ${NSTD} ${PERM} expr.c a.out core *.s *.o errs |
| 73 | for i in ${SUBDIR}; do (cd $$i; make ${MFLAGS} clean); done |
| 74 | |
| 75 | depend: ldepend |
| 76 | for i in ${SUBDIR}; do (cd $$i; make ${MFLAGS} depend); done |
| 77 | |
| 78 | ldepend: expr.c FRC |
| 79 | mkdep -p ${CFLAGS} ${SRCS} |
| 80 | |
| 81 | FRC: |
| 82 | |
| 83 | # Files listed in ${NSTD} have explicit make lines given below. |
| 84 | |
| 85 | expr: expr.o |
| 86 | ${CC} ${CFLAGS} -o $@ expr.o |
| 87 | |
| 88 | ps: |
| 89 | ${CC} ${CFLAGS} -o $@ ps.c -lm |
| 90 | |
| 91 | # DO NOT DELETE THIS LINE -- mkdep uses it. |
| 92 | # DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. |
| 93 | |
| 94 | ar: ar.c /usr/include/sys/param.h /usr/include/sys/types.h |
| 95 | ar: /usr/include/signal.h /usr/include/machine/trap.h |
| 96 | ar: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 97 | ar: /usr/include/sys/stat.h /usr/include/sys/time.h /usr/include/time.h |
| 98 | ar: /usr/include/stdio.h /usr/include/ar.h |
| 99 | cat: cat.c /usr/include/stdio.h /usr/include/sys/types.h |
| 100 | cat: /usr/include/sys/stat.h |
| 101 | cc: cc.c /usr/include/sys/param.h /usr/include/sys/types.h |
| 102 | cc: /usr/include/signal.h /usr/include/machine/trap.h |
| 103 | cc: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 104 | cc: /usr/include/stdio.h /usr/include/ctype.h /usr/include/signal.h |
| 105 | cc: /usr/include/sys/dir.h |
| 106 | chmod: chmod.c /usr/include/stdio.h /usr/include/sys/types.h |
| 107 | chmod: /usr/include/sys/stat.h /usr/include/sys/dir.h |
| 108 | cmp: cmp.c /usr/include/sys/param.h /usr/include/sys/types.h |
| 109 | cmp: /usr/include/signal.h /usr/include/machine/trap.h |
| 110 | cmp: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 111 | cmp: /usr/include/sys/file.h /usr/include/sys/stat.h /usr/include/stdio.h |
| 112 | cmp: /usr/include/ctype.h /usr/include/errno.h |
| 113 | cp: cp.c /usr/include/stdio.h /usr/include/sys/param.h /usr/include/sys/types.h |
| 114 | cp: /usr/include/signal.h /usr/include/machine/trap.h |
| 115 | cp: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 116 | cp: /usr/include/sys/stat.h /usr/include/sys/dir.h /usr/include/sys/time.h |
| 117 | cp: /usr/include/time.h |
| 118 | date: date.c /usr/include/sys/param.h /usr/include/sys/types.h |
| 119 | date: /usr/include/signal.h /usr/include/machine/trap.h |
| 120 | date: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 121 | date: /usr/include/sys/time.h /usr/include/time.h /usr/include/sys/file.h |
| 122 | date: /usr/include/errno.h /usr/include/syslog.h /usr/include/utmp.h |
| 123 | date: /usr/include/tzfile.h /usr/include/stdio.h /usr/include/ctype.h |
| 124 | date: /usr/include/strings.h /usr/include/sys/socket.h |
| 125 | date: /usr/include/netinet/in.h /usr/include/netdb.h |
| 126 | date: /usr/include/protocols/timed.h |
| 127 | dd: dd.c /usr/include/sys/file.h /usr/include/stdio.h /usr/include/signal.h |
| 128 | dd: /usr/include/machine/trap.h |
| 129 | df: df.c /usr/include/sys/param.h /usr/include/sys/types.h |
| 130 | df: /usr/include/signal.h /usr/include/machine/trap.h |
| 131 | df: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 132 | df: /usr/include/sys/fs.h /usr/include/sys/stat.h /usr/include/errno.h |
| 133 | df: /usr/include/stdio.h /usr/include/fstab.h /usr/include/mtab.h |
| 134 | du: du.c /usr/include/stdio.h /usr/include/sys/param.h /usr/include/sys/types.h |
| 135 | du: /usr/include/signal.h /usr/include/machine/trap.h |
| 136 | du: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 137 | du: /usr/include/sys/stat.h /usr/include/sys/dir.h |
| 138 | echo: echo.c /usr/include/stdio.h |
| 139 | ed: ed.c /usr/include/signal.h /usr/include/machine/trap.h /usr/include/sgtty.h |
| 140 | ed: /usr/include/sys/ioctl.h /usr/include/sys/ttychars.h |
| 141 | ed: /usr/include/sys/ttydefaults.h /usr/include/sys/ttydev.h |
| 142 | ed: /usr/include/setjmp.h |
| 143 | expr: expr.c /usr/include/stdio.h |
| 144 | hostid: hostid.c /usr/include/sys/types.h /usr/include/stdio.h |
| 145 | hostid: /usr/include/ctype.h /usr/include/netdb.h |
| 146 | hostname: hostname.c /usr/include/stdio.h |
| 147 | kill: kill.c /usr/include/signal.h /usr/include/machine/trap.h |
| 148 | kill: /usr/include/ctype.h |
| 149 | ld: ld.c /usr/include/sys/param.h /usr/include/sys/types.h |
| 150 | ld: /usr/include/signal.h /usr/include/machine/trap.h |
| 151 | ld: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 152 | ld: /usr/include/signal.h /usr/include/stdio.h /usr/include/ctype.h |
| 153 | ld: /usr/include/ar.h /usr/include/a.out.h /usr/include/sys/exec.h |
| 154 | ld: /usr/include/ranlib.h /usr/include/sys/stat.h /usr/include/sys/file.h |
| 155 | ln: ln.c /usr/include/sys/param.h /usr/include/sys/types.h |
| 156 | ln: /usr/include/signal.h /usr/include/machine/trap.h |
| 157 | ln: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 158 | ln: /usr/include/sys/stat.h /usr/include/stdio.h /usr/include/errno.h |
| 159 | login: login.c /usr/include/sys/param.h /usr/include/sys/types.h |
| 160 | login: /usr/include/signal.h /usr/include/machine/trap.h |
| 161 | login: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 162 | login: /usr/include/sys/quota.h /usr/include/sys/stat.h /usr/include/sys/time.h |
| 163 | login: /usr/include/time.h /usr/include/sys/resource.h /usr/include/sys/file.h |
| 164 | login: /usr/include/sgtty.h /usr/include/sys/ioctl.h |
| 165 | login: /usr/include/sys/ttychars.h /usr/include/sys/ttydefaults.h |
| 166 | login: /usr/include/sys/ttydev.h /usr/include/utmp.h /usr/include/signal.h |
| 167 | login: /usr/include/pwd.h /usr/include/stdio.h /usr/include/lastlog.h |
| 168 | login: /usr/include/errno.h /usr/include/ttyent.h /usr/include/syslog.h |
| 169 | login: /usr/include/grp.h |
| 170 | ls: ls.c /usr/include/sys/param.h /usr/include/sys/types.h |
| 171 | ls: /usr/include/signal.h /usr/include/machine/trap.h |
| 172 | ls: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 173 | ls: /usr/include/sys/stat.h /usr/include/sys/dir.h /usr/include/stdio.h |
| 174 | ls: /usr/include/sgtty.h /usr/include/sys/ioctl.h /usr/include/sys/ttychars.h |
| 175 | ls: /usr/include/sys/ttydefaults.h /usr/include/sys/ttydev.h /usr/include/pwd.h |
| 176 | ls: /usr/include/grp.h /usr/include/utmp.h |
| 177 | machine: machine.c /usr/include/sys/param.h /usr/include/sys/types.h |
| 178 | machine: /usr/include/signal.h /usr/include/machine/trap.h |
| 179 | machine: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 180 | mkdir: mkdir.c /usr/include/stdio.h |
| 181 | mt: mt.c /usr/include/stdio.h /usr/include/ctype.h /usr/include/sys/types.h |
| 182 | mt: /usr/include/sys/mtio.h /usr/include/sys/ioctl.h |
| 183 | mt: /usr/include/sys/ttychars.h /usr/include/sys/ttydefaults.h |
| 184 | mt: /usr/include/sys/ttydev.h /usr/include/tahoevba/cyreg.h |
| 185 | mv: mv.c /usr/include/sys/param.h /usr/include/sys/types.h |
| 186 | mv: /usr/include/signal.h /usr/include/machine/trap.h |
| 187 | mv: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 188 | mv: /usr/include/sys/stat.h /usr/include/sys/time.h /usr/include/time.h |
| 189 | mv: /usr/include/sys/file.h /usr/include/stdio.h /usr/include/errno.h |
| 190 | nice: nice.c /usr/include/stdio.h /usr/include/sys/time.h /usr/include/time.h |
| 191 | nice: /usr/include/sys/resource.h |
| 192 | nm: nm.c /usr/include/sys/types.h /usr/include/sys/file.h /usr/include/ar.h |
| 193 | nm: /usr/include/stdio.h /usr/include/ctype.h /usr/include/a.out.h |
| 194 | nm: /usr/include/sys/exec.h /usr/include/stab.h /usr/include/ranlib.h |
| 195 | od: od.c /usr/include/stdio.h /usr/include/sys/types.h /usr/include/sys/stat.h |
| 196 | pagesize: pagesize.c |
| 197 | pr: pr.c /usr/include/stdio.h /usr/include/signal.h /usr/include/machine/trap.h |
| 198 | pr: /usr/include/sys/types.h /usr/include/sys/stat.h |
| 199 | ps: ps.c /usr/include/stdio.h /usr/include/ctype.h /usr/include/a.out.h |
| 200 | ps: /usr/include/sys/exec.h /usr/include/pwd.h /usr/include/sys/param.h |
| 201 | ps: /usr/include/sys/types.h /usr/include/signal.h /usr/include/machine/trap.h |
| 202 | ps: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 203 | ps: /usr/include/sys/ioctl.h /usr/include/sys/ttychars.h |
| 204 | ps: /usr/include/sys/ttydefaults.h /usr/include/sys/ttydev.h |
| 205 | ps: /usr/include/sys/tty.h /usr/include/sys/ttychars.h |
| 206 | ps: /usr/include/sys/ttydev.h /usr/include/sys/dir.h /usr/include/sys/user.h |
| 207 | ps: /usr/include/machine/pcb.h /usr/include/sys/dmap.h /usr/include/sys/time.h |
| 208 | ps: /usr/include/time.h /usr/include/sys/resource.h /usr/include/sys/namei.h |
| 209 | ps: /usr/include/sys/uio.h /usr/include/errno.h /usr/include/sys/proc.h |
| 210 | ps: /usr/include/machine/pte.h /usr/include/sys/vm.h /usr/include/sys/vmparam.h |
| 211 | ps: /usr/include/machine/vmparam.h /usr/include/sys/vmmac.h |
| 212 | ps: /usr/include/sys/vmmeter.h /usr/include/sys/vmsystm.h |
| 213 | ps: /usr/include/sys/text.h /usr/include/sys/stat.h /usr/include/sys/mbuf.h |
| 214 | ps: /usr/include/math.h /usr/include/errno.h /usr/include/utmp.h |
| 215 | pwd: pwd.c /usr/include/stdio.h /usr/include/sys/param.h |
| 216 | pwd: /usr/include/sys/types.h /usr/include/signal.h /usr/include/machine/trap.h |
| 217 | pwd: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 218 | rcp: rcp.c /usr/include/sys/param.h /usr/include/sys/types.h |
| 219 | rcp: /usr/include/signal.h /usr/include/machine/trap.h |
| 220 | rcp: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 221 | rcp: /usr/include/sys/file.h /usr/include/sys/stat.h /usr/include/sys/time.h |
| 222 | rcp: /usr/include/time.h /usr/include/sys/ioctl.h /usr/include/sys/ttychars.h |
| 223 | rcp: /usr/include/sys/ttydefaults.h /usr/include/sys/ttydev.h |
| 224 | rcp: /usr/include/netinet/in.h /usr/include/stdio.h /usr/include/signal.h |
| 225 | rcp: /usr/include/pwd.h /usr/include/ctype.h /usr/include/netdb.h |
| 226 | rcp: /usr/include/errno.h /usr/include/sys/dir.h |
| 227 | rm: rm.c /usr/include/stdio.h /usr/include/sys/param.h /usr/include/sys/types.h |
| 228 | rm: /usr/include/signal.h /usr/include/machine/trap.h |
| 229 | rm: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 230 | rm: /usr/include/sys/stat.h /usr/include/sys/dir.h /usr/include/sys/file.h |
| 231 | rmdir: rmdir.c /usr/include/stdio.h |
| 232 | size: size.c /usr/include/stdio.h /usr/include/a.out.h /usr/include/sys/exec.h |
| 233 | strip: strip.c /usr/include/a.out.h /usr/include/sys/exec.h |
| 234 | strip: /usr/include/signal.h /usr/include/machine/trap.h /usr/include/stdio.h |
| 235 | strip: /usr/include/sys/file.h |
| 236 | stty: stty.c /usr/include/stdio.h /usr/include/sys/ioctl.h |
| 237 | stty: /usr/include/sys/ttychars.h /usr/include/sys/ttydefaults.h |
| 238 | stty: /usr/include/sys/ttydev.h |
| 239 | su: su.c /usr/include/stdio.h /usr/include/pwd.h /usr/include/grp.h |
| 240 | su: /usr/include/syslog.h /usr/include/sys/types.h /usr/include/sys/time.h |
| 241 | su: /usr/include/time.h /usr/include/sys/resource.h |
| 242 | sync: sync.c |
| 243 | tar: tar.c /usr/include/stdio.h /usr/include/sys/param.h |
| 244 | tar: /usr/include/sys/types.h /usr/include/signal.h /usr/include/machine/trap.h |
| 245 | tar: /usr/include/machine/machparam.h /usr/include/machine/endian.h |
| 246 | tar: /usr/include/sys/stat.h /usr/include/sys/dir.h /usr/include/sys/ioctl.h |
| 247 | tar: /usr/include/sys/ttychars.h /usr/include/sys/ttydefaults.h |
| 248 | tar: /usr/include/sys/ttydev.h /usr/include/sys/mtio.h /usr/include/sys/time.h |
| 249 | tar: /usr/include/time.h /usr/include/signal.h /usr/include/errno.h |
| 250 | tar: /usr/include/fcntl.h |
| 251 | tee: tee.c /usr/include/signal.h /usr/include/machine/trap.h |
| 252 | tee: /usr/include/sys/types.h /usr/include/sys/stat.h /usr/include/errno.h |
| 253 | test: test.c /usr/include/stdio.h /usr/include/sys/types.h |
| 254 | test: /usr/include/sys/stat.h |
| 255 | time: time.c /usr/include/stdio.h /usr/include/signal.h |
| 256 | time: /usr/include/machine/trap.h /usr/include/sys/types.h |
| 257 | time: /usr/include/sys/time.h /usr/include/time.h /usr/include/sys/resource.h |
| 258 | wall: wall.c /usr/include/stdio.h /usr/include/utmp.h /usr/include/errno.h |
| 259 | wall: /usr/include/signal.h /usr/include/machine/trap.h /usr/include/sys/time.h |
| 260 | wall: /usr/include/time.h /usr/include/fcntl.h /usr/include/sys/types.h |
| 261 | wall: /usr/include/sys/stat.h |
| 262 | who: who.c /usr/include/stdio.h /usr/include/utmp.h /usr/include/pwd.h |
| 263 | who: /usr/include/ctype.h |
| 264 | write: write.c /usr/include/stdio.h /usr/include/ctype.h |
| 265 | write: /usr/include/sys/types.h /usr/include/sys/stat.h /usr/include/signal.h |
| 266 | write: /usr/include/machine/trap.h /usr/include/utmp.h /usr/include/sys/time.h |
| 267 | write: /usr/include/time.h |
| 268 | |
| 269 | # IF YOU PUT ANYTHING HERE IT WILL GO AWAY |