#sccs	"@(#)diagmain:Makefile	1.5"

#	Convergent Technologies - System V - Apr 1984

include $(MAKEINC)/Makepre.h

SUBDIRS = sys
UNITS = UNITsys=diaghead
ID = id.o
LCFLAGS=-UKERNEL -DP2 -DDIAGNOSTIC -UDEBUG -DDVER=$(VER)\
	-UMANUFACTURE -UVID
ASFLAGS=
NM=nm
VER = 3
LLDFLAGS= -n ifile.0410 -x #delete R 06/2/84

CSRC=main.c init.c error.c trap.c msg.c \
	mem.c mapram.c page.c prot.c  parity.c clk.c uie.c\
	input.c printf.c i8274.c atoi.c sprintf.c gdtest.c\
	disksub.c disktst.c disk.c i8274sub.c i8274tst.c lp.c vid.c \
	modem.c dialer.c kbd.c font.c mouse.c odump.c \
	version.c rtc.c exp.c tape.c tapetst.c showdate.c \
	z8530tst.c conf.c

DEPENDLIST = $(CSRC)

ASSRC=main1.s mch.s math.s

OBJ=main1.o mch.o math.o main.o init.o error.o trap.o msg.o \
	mem.o mapram.o page.o  prot.o parity.o clk.o uie.o\
	input.o printf.o i8274.o atoi.o sprintf.o gdtest.o\
	disksub.o disk.o disktst.o \
	i8274sub.o i8274tst.o  lp.o vid.o  \
	modem.o dialer.o kbd.o rastop.o font.o mouse.o odump.o\
	rtc.o exp.o tape.o tapetst.o z8530tst.o conf.o\
	showdate.o version.o

all: 	Makeincludes s4diag

s4diag: newversion $(OBJ) $(ID)
	$(LD) -o s4diag $(LLDFLAGS) $(OBJ) $(ID)
	$(NM) -xe s4diag | grep -v static > s4diag.nm

Makeincludes: $(DEPENDLIST)
	$(INCCMD) $(DEPENDLIST) | $(SORT) | $(FILTER) > Makeincludes
	$(MAKE)

includes: $(DEPENDLIST)
	$(INCCMD) $(DEPENDLIST) | $(SORT) | $(FILTER) > Makeincludes

install:
	$(INSTALL) -i$(EXITFLAG) s4diag $(INSDIR) $(PROTOFILE)

newversion:
	rm -f version.o showdate.o


kbd.c:		kpic.h

rastop.o:	rastop.m4
		m4 < rastop.m4 > ..tmp.i
		$(CPP) ..tmp.i > ..tmp.s
		$(CC) $(LCFLAGS) -c ..tmp.s
		mv ..tmp.o rastop.o
		rm -f ..tmp.s ..tmp.i

showdate.o:
	$(CC) $(LCFLAGS) -DDATE="\"`date`\"" -DPWD="\"`pwd`\"" -c $< 
		

.SUFFIXES: .o

.c.o:
	$(CC) $(LCFLAGS) -c $<

include Makeincludes

clean:
	rm -f *.o

clobber: clean
	rm -f s4diag

lint:
	lint $(LCFLAGS) $(CSRC) >lint$(VER).out

print:
	lp Makefile Makeincludes *.h $(CSRC) rastop.m4 $(ASSRC) 


justnm:
	$(NM) -h  s4diag |cut -c1-30|pr -l56 -4 -h "alphabetic s4diag.nm" -w120 >s4diag.nm
	$(NM) -hn s4diag |cut -c1-30|pr -l56 -4 -h "numeric s4diag.nm"  -w120 >>s4diag.nm

id.c: diagmain.sl
	mkslid > id.c

populate: $(SUBDIRS)
	for D in $(SUBDIRS); \
	do \
		(cd $$D; echo "** $$D **:"; getunit ; mv diag_iohw.h iohw.h); \
	done

$(SUBDIRS):
	@$(UNITS) ;echo "Making Directory for $@"; mkdir $@; echo $$UNIT$@ > $@/.unit

include $(MAKEINC)/Makepost.h

.s.o:
	$(CPP) $(LCFLAGS) $< > ..tmp.s
	$(CC) $(ASFLAGS) -c ..tmp.s
	mv ..tmp.o $@; rm ..tmp.s
