#
#	SCCSID	@(#)Makefile	1.9 85/06/26
#
DEBUG		= -DEBUG=2
CFLAGS		= -O -K
LDFLAGS		=

LN		= ln
RM		= /bin/rm -f
LINT		= /usr/bin/lint

BIN		= Bin
PROTO		= NNstrpr
PROTO2		= NNstrpr2
PROTO3		= ENproto
LIB		= Lib
LIBC		= Libc
DIRLIB		= Dirlib
INC		= Include

SLIBS		= $(SYSLIBS) -lc ../$(BIN)/$(LIBC).a
LIBS		= ../$(BIN)/$(PROTO).a ../$(BIN)/$(LIB).a ../$(BIN)/$(DIRLIB).a
LIBS2		= ../$(BIN)/$(PROTO2).a ../$(BIN)/$(LIB).a ../$(BIN)/$(DIRLIB).a
LIBS3		= ../$(BIN)/$(PROTO3).a ../$(BIN)/$(LIB).a ../$(BIN)/$(DIRLIB).a
INCLUDE		= -I../$(INC) -I../$(PROTO)
INCLUDE2	= -I../$(INC) -I../$(PROTO2)
INCLUDE3	= -I../$(INC) -I../$(PROTO3)

CONFIG		=
DFLAGS		= $(DEBUG) $(CONFIG)

LFLAGS		= $(INCLUDE) $(DFLAGS)

CFILES		= FindCommand.c RCread.c RCwrite.c Rread.c \
		  children.c driver.c in.c main.c out.c \
		  queue.c recvControl.c sendControl.c state.c
OBJECTS		= FindCommand.o \
		  queue.o recvControl.o sendControl.o \
		  main.o RCread.o RCwrite.o Rread.o \
		  state.o children.o in.o out.o driver.o
OBJECTS2	= FindCommand.o \
		  queue2.o recvControl.o sendControl.o \
		  main.o RCread2.o RCwrite2.o Rread2.o \
		  state.o children.o in.o out.o driver2.o
OBJECTS3	= FindCommand.o \
		  queue3.o recvControl.o sendControl.o \
		  main.o RCread3.o RCwrite3.o Rread3.o \
		  state.o children.o in.o out.o driver3.o
HEADERS		= AQ.h CQ.h PQ.h bad.h daemon.h driver.h proto.h

NAME		= NNdaemon
PRSPOOLER	= sendfile -Aaprinter -e'-b' piers:basset -n
PRSPOOL		= $(PRSPOOLER)$(NAME)
PRFORMATTER	= pr -l66 -w132 -f -n3

GET		= sccs get

.DEFAULT:
		$(GET) SCCS/s.$<

.c.o:
		$(CC) $(CFLAGS) $(INCLUDE) $(DFLAGS) -c $<

all:		../$(BIN)/NNdaemon ../$(BIN)/CNdaemon ../$(BIN)/ENdaemon

../$(BIN)/NNdaemon: \
		$(OBJECTS) $(LIBS)
		$(CC) $(LDFLAGS) -o $@ $(OBJECTS) $(LIBS) $(SLIBS)

../$(BIN)/CNdaemon: \
		$(OBJECTS2) $(LIBS2)
		$(CC) $(LDFLAGS) -o $@ $(OBJECTS2) $(LIBS2) $(SLIBS)

../$(BIN)/ENdaemon: \
		$(OBJECTS3) $(LIBS3)
		$(CC) $(LDFLAGS) -o $@ $(OBJECTS3) $(LIBS3) $(SLIBS)

$(OBJECTS) $(OBJECTS2) $(OBJECTS3):	../$(INC)/global.h

FindCommand.o:	AQ.h bad.h daemon.h driver.h \
		../$(INC)/command.h ../$(INC)/Stream.h ../$(INC)/spool.h
RCread.o:	../$(INC)/command.h ../$(INC)/Stream.h ../$(PROTO)/Channel.h daemon.h driver.h
RCread2.o:	../$(INC)/command.h ../$(INC)/Stream.h ../$(PROTO2)/Channel.h daemon.h driver.h RCread.c
		$(RM) RCread2.c
		$(LN) RCread.c RCread2.c
		$(CC) $(CFLAGS) $(INCLUDE2) $(DFLAGS) -c RCread2.c
		$(RM) RCread2.c
RCread3.o:	../$(INC)/command.h ../$(INC)/Stream.h ../$(PROTO3)/Channel.h daemon.h driver.h RCread.c
		$(RM) RCread3.c
		$(LN) RCread.c RCread3.c
		$(CC) $(CFLAGS) $(INCLUDE3) $(DFLAGS) -c RCread3.c
		$(RM) RCread3.c
RCwrite.o:	../$(PROTO)/Channel.h
RCwrite2.o:	../$(PROTO2)/Channel.h RCwrite.c
		$(RM) RCwrite2.c
		$(LN) RCwrite.c RCwrite2.c
		$(CC) $(CFLAGS) $(INCLUDE2) $(DFLAGS) -c RCwrite2.c
		$(RM) RCwrite2.c
RCwrite3.o:	../$(PROTO3)/Channel.h RCwrite.c
		$(RM) RCwrite3.c
		$(LN) RCwrite.c RCwrite3.c
		$(CC) $(CFLAGS) $(INCLUDE3) $(DFLAGS) -c RCwrite3.c
		$(RM) RCwrite3.c
Rread.o:	../$(INC)/command.h ../$(INC)/Stream.h daemon.h driver.h \
		../$(PROTO)/Channel.h ../$(PROTO)/Pconfig.h ../$(PROTO)/Packet.h
Rread2.o:	../$(INC)/command.h ../$(INC)/Stream.h daemon.h driver.h \
		../$(PROTO2)/Channel.h ../$(PROTO2)/Pconfig.h ../$(PROTO2)/Packet.h Rread.c
		$(RM) Rread2.c
		$(LN) Rread.c Rread2.c
		$(CC) $(CFLAGS) $(INCLUDE2) $(DFLAGS) -c Rread2.c
		$(RM) Rread2.c
Rread3.o:	../$(INC)/command.h ../$(INC)/Stream.h daemon.h driver.h \
		../$(PROTO3)/Channel.h ../$(PROTO3)/Pconfig.h ../$(PROTO3)/Packet.h Rread.c
		$(RM) Rread3.c
		$(LN) Rread.c Rread3.c
		$(CC) $(CFLAGS) $(INCLUDE3) $(DFLAGS) -c Rread3.c
		$(RM) Rread3.c
children.o:	AQ.h bad.h daemon.h driver.h \
		../$(INC)/command.h ../$(INC)/Stream.h \
		../$(INC)/messagename.h ../$(INC)/spool.h
driver.o:	AQ.h CQ.h PQ.h daemon.h driver.h \
		../$(INC)/command.h ../$(INC)/Stream.h \
		../$(PROTO)/Channel.h ../$(PROTO)/Pconfig.h ../$(PROTO)/Packet.h
driver2.o:	AQ.h CQ.h PQ.h daemon.h driver.h \
		../$(INC)/command.h ../$(INC)/Stream.h \
		../$(PROTO2)/Channel.h ../$(PROTO2)/Pconfig.h ../$(PROTO2)/Packet.h driver.c
		$(RM) driver2.c
		$(LN) driver.c driver2.c
		$(CC) $(CFLAGS) $(INCLUDE2) $(DFLAGS) -c driver2.c
		$(RM) driver2.c
driver3.o:	AQ.h CQ.h PQ.h daemon.h driver.h \
		../$(INC)/command.h ../$(INC)/Stream.h \
		../$(PROTO3)/Channel.h ../$(PROTO3)/Pconfig.h ../$(PROTO3)/Packet.h driver.c
		$(RM) driver3.c
		$(LN) driver.c driver3.c
		$(CC) $(CFLAGS) $(INCLUDE3) $(DFLAGS) -c driver3.c
		$(RM) driver3.c
in.o:		AQ.h daemon.h driver.h ../$(INC)/command.h ../$(INC)/Stream.h
main.o:		daemon.h driver.h \
		../$(INC)/command.h ../$(INC)/Stream.h ../$(INC)/spool.h
out.o:		AQ.h CQ.h bad.h daemon.h driver.h \
		../$(INC)/Stream.h ../$(INC)/command.h ../$(INC)/spool.h
queue.o:	AQ.h CQ.h PQ.h driver.h ../$(PROTO)/Packet.h
queue2.o:	AQ.h CQ.h PQ.h driver.h ../$(PROTO2)/Packet.h queue.c
		$(RM) queue2.c
		$(LN) queue.c queue2.c
		$(CC) $(CFLAGS) $(INCLUDE2) $(DFLAGS) -c queue2.c
		$(RM) queue2.c
queue3.o:	AQ.h CQ.h PQ.h driver.h ../$(PROTO3)/Packet.h queue.c
		$(RM) queue3.c
		$(LN) queue.c queue3.c
		$(CC) $(CFLAGS) $(INCLUDE3) $(DFLAGS) -c queue3.c
		$(RM) queue3.c
recvControl.o:	AQ.h driver.h \
		../$(INC)/command.h ../$(INC)/Stream.h proto.h
sendControl.o:	driver.h ../$(INC)/Stream.h proto.h
state.o:	AQ.h daemon.h driver.h ../$(INC)/command.h ../$(INC)/Stream.h

$(OBJECTS):	$(FRC)

lint:		lint.out
		more lint.out

lint.out:	$(HEADERS) $(CFILES)
		$(LINT) $(LFLAGS) $(CFILES) \
		../$(LIB)/llib-$(LIB).ln \
		../$(PROTO)/llib-$(PROTO).ln \
		>lint.out 2>&1

cyntax:		cyntax.out
		more cyntax.out

cyntax.out:	$(HEADERS) $(CFILES)
		-cyntax $(LFLAGS) $(CFILES) >cyntax.out 2>&1

print:
		$(PRFORMATTER) Makefile $(HEADERS) $(CFILES) | $(PRSPOOL)

clean:
		$(RM) $(OBJECTS) $(OBJECTS2) $(OBJECTS3) lint.out cyntax.out

clobber:	clean

llib:

FRC:
