# @(#)Makefile	4.7 (Berkeley) 12/10/82
#
#	crt0	Normal C run time startoff
#	mcrt0	C run time start off for profiling, ``prof'' conventions
#	gcrt0	C run time start off for profiling, ``gprof'' conventions
#	skycrt0	Sky C run time startoff
#	skymcrt0 Sky C run time start off for profiling, ``prof'' conventions
#	decmcrt0 C run time start off for profiling DEC fp format, ``prof''
#
CFLAGS=
# Note: don't use -O; it throws out comments, messing up mon.ex

OBJS=	crt0.o mcrt0.o gcrt0.o mon.o gmon.o skycrt0.o skymcrt0.o skymon.o \
	decmcrt0.o decmon.o

install: ${OBJS}
	mv crt0.o ${DESTDIR}/lib/crt0.o
	mv mcrt0.o ${DESTDIR}/lib/mcrt0.o
	mv gcrt0.o ${DESTDIR}/usr/lib/gcrt0.o

all: ${OBJS}

crt0.o:	crt0.c
	cc -E -DCRT0 crt0.c | as -o x.o
	ld -x -r -o crt0.o x.o
	rm -f x.o

moncrt0.o: crt0.c
	cc -E -DMCRT0 crt0.c | as -o x.o
	ld -x -r -o moncrt0.o x.o
	rm -f x.o

skycrt0.o: crt0.c
	cc -E -DCRT0 -DSKY crt0.c | as -o x.o
	ld -x -r -o skycrt0.o x.o
	rm -f x.o

skymoncrt0.o: crt0.c
	cc -E -DMCRT0 -DSKY crt0.c | as -o x.o
	ld -x -r -o skymoncrt0.o x.o
	rm -f x.o

gcrt0.o: moncrt0.o gmon.o
	ld -x -r -o gcrt0.o moncrt0.o gmon.o

mcrt0.o: moncrt0.o mon.o
	ld -x -r -o mcrt0.o moncrt0.o mon.o

skymcrt0.o: skymoncrt0.o skymon.o
	ld -x -r -o skymcrt0.o skymoncrt0.o skymon.o

decmcrt0.o: moncrt0.o decmon.o
	ld -x -r -o decmcrt0.o moncrt0.o decmon.o

mon.o: mon.c mon.ex
	cc -S ${DFLAGS} mon.c
	ex - mon.s < mon.ex
	as -o x.o mon.s
	ld -x -r -o mon.o x.o
	rm -f x.o mon.s

skymon.o: mon.c mon.ex.sky
	cc -S -f ${DFLAGS} mon.c
	ex - mon.s < mon.ex.sky
	as -o x.o mon.s
	ld -x -r -o skymon.o x.o
	rm -f x.o mon.s

decmon.o: mon.c mon.ex
	cc -S -fD ${DFLAGS} mon.c
	ex - mon.s < mon.ex
	as -o x.o mon.s
	ld -x -r -o decmon.o x.o
	rm -f x.o mon.s

gmon.o: gmon.c gmon.h gmon.ex
	cc -S ${DFLAGS} gmon.c
	ex - gmon.s < gmon.ex
	as -o x.o gmon.s
	ld -x -r -o gmon.o x.o
	rm -f x.o gmon.s

clean:
	rm -f ${OBJS} *.o *.s core errs
