# first phase of make check .o dependencies and remove them if they
# need to be recompiled.
R =	touch -c
I =	/usr/include

OFILE =	unix

# move nami.o into the base segment if possible
OV1 =	sys2.o sys4.o fio.o pipe.o alloc.o iget.o  slp.o rdwri.o dsort.o ra.o \
	sys.o ttyold.o tm.o dh.o
OV2 =	text.o ureg.o malloc.o sys1.o main.o mem.o sig.o trap.o clock.o rd.o r5.o
OV3 =	bio.o dkbad.o dkleave.o subr.o machdep.o sys3.o syslocal.o \
	acct.o prf.o ioctl.o cn.o dz.o prostuff.o
OV4 =	ttynew.o tty.o prim.o kl.o partab.o nami.o hk.o pc.o
BASE =	sysent.o

#	boot.o must be loaded in the base well above 0 data
CONFOBJ = l.o mch.o c.o ioconf.o boot.o 


#	l.o MUST be loaded first, param.o MUST be loaded last
${OFILE}: ${OV1} ${OV2} ${OV3} ${OV4} ${BASE} ${CONFOBJ} \
    param.o checksys
	rm -f ${OFILE}

.PRECIOUS: whoami.h param.h Makeobj1 ../sys/sig.c

whoami.h:  localopts.h
	touch whoami.h

param.h: whoami.h ${I}/signal.h ${I}/sys/psw.h \
	${I}/sys/types.h 
	touch param.h

mch.o:	assym.s ../sys/mch.s whoami.h dz.h ht.h tm.h \
	${I}/a.out.h ${I}/sys/cpu.m ${I}/sys/trap.h \
	${I}/sys/reboot.h ${I}/sys/iopage.m \
	${I}/sys/koverlay.h
	${R} ../sys/mch.s

l.o:	l.s whoami.h ${I}/a.out.h \
	${I}/sys/trap.h ${I}/sys/koverlay.h \
	dh.h dn.h dz.h hk.h hp.h hs.h ht.h kl.h lp.h \
	rk.h rl.h rm.h rp.h tm.h ts.h vp.h xp.h
	${R} l.s

boot.o:	boot.s whoami.h
	${R} boot.s

assym.s: genassym.c param.h dz.h \
	${I}/sys/user.h  ${I}/sys/vm.h ${I}/sys/proc.h \
	${I}/sys/dir.h ${I}/sys/inode.h ${I}/sys/seg.h
	rm -f assym.s

param.o: param.c param.h ${I}/sys/proc.h \
	${I}/sys/text.h ${I}/sys/file.h ${I}/sys/inode.h \
	${I}/sys/dir.h ${I}/sys/buf.h ${I}/sys/tty.h \
	${I}/sys/conf.h ${I}/sys/user.h ${I}/sys/filsys.h \
	${I}/sys/mount.h ${I}/sys/acct.h ${I}/sys/systm.h \
	${I}/sys/map.h
	${R} param.c

checksys: checksys.c
	${R} checksys.c

../sys/sig.c: ../sys/sigjcl.c ../sys/signojcl.c
	touch ../sys/sig.c

sig.o: param.h ${I}/sys/systm.h ${I}/sys/dir.h \
	${I}/sys/user.h ${I}/sys/proc.h ${I}/sys/inode.h \
	${I}/sys/reg.h ${I}/sys/text.h ${I}/sys/seg.h \
	${I}/sys/vm.h
	${R} ../sys/sig.c

# DO NOT DELETE THIS LINE

c.o: c.c
c.o: param.h ${I}/sys/systm.h ${I}/sys/buf.h ${I}/sys/tty.h ${I}/sys/conf.h
c.o: ${I}/sys/proc.h ${I}/sys/text.h ${I}/sys/dir.h ${I}/sys/user.h
c.o: ${I}/sys/file.h ${I}/sys/inode.h ${I}/sys/acct.h ${I}/sys/map.h
