NAME=venet1
# Optional features
# -DFASTER_QUEUE => smaller code, faster (but incompatible) input queue
# -DSEGREGATE => support for etI[AE]? minor devices (not needed for ARNS)
FEATURES=
CFILES=venet1.c
SECTFILES=Load_Commands.sect Unload_Commands.sect
OFILES=$(CFILES:.c=.o)
# G_LOADABLE=-d $(NAME)_loadable
G_LOADABLE=
MANPAGE=eti.4
CATPAGE=eti.0
PSPAGE=eti.ps
DESTDIR=
SRCS= Makefile $(CFILES) $(SECTFILES) README ${MANPAGE}
INSTALLDIR=/usr/local/lib/kern_loader/$(NAME)
DEVICES=/dev/etI0 /dev/etIE0 /dev/etIA0

all:
	@echo "Try  make NeXT2.x  or  make NeXT3.0"

debug:
	@echo "You've got to be kidding."

$(NAME):	$(NAME)_reloc ${CATPAGE} ${PSPAGE}

$(NAME)_reloc: $(OFILES) $(SECTFILES)
	kl_ld -n $(NAME) -l Load_Commands.sect -u Unload_Commands.sect \
		-i instance $(G_LOADABLE) -o $@ $(OFILES)

${CATPAGE}: ${MANPAGE}
	-rm -f ${CATPAGE}
	tbl ${MANPAGE} | nroff -T37 -man - | col | uniq > ${CATPAGE}

${PSPAGE}: ${MANPAGE}
	-rm -f ${PSPAGE}
	tbl ${MANPAGE} | ptroff -t -man - > ${PSPAGE}

install: $(NAME)_reloc ${INSTALLDIR}
	install -c -m 644 -o root -g wheel $(NAME)_reloc ${INSTALLDIR}

${INSTALLDIR}:
	mkdirs $@
	
installman: ${CATPAGE}
	install -c -m 444 -o root -g wheel ${MANPAGE} ${DESTDIR}/usr/man/manl
	install -c -m 644 -o root -g wheel ${CATPAGE} \
		${DESTDIR}/usr/man/catl/${CATPAGE:.0=.l}

clean:
	-rm -f $(NAME)_reloc $(NAME)_loadable $(NAME).o ${CATPAGE} ${PSPAGE}

NeXT2.x NeXT2.0 NeXT2.1 NeXT2.2 NeXT2.2a:
	@make $(NAME) \
		CFLAGS="-DKERNEL -DKERNEL_FEATURES -DMACH $(FEATURES) -O"

NeXT3.0:
	@make $(NAME) \
		CFLAGS="-DKERNEL -DMACH_USER_API -DMACH $(FEATURES) -O2 -Wall"

devices: $(DEVICES)

# Major device number must agree with Load_Commands.sect
/dev/etI0:
	mknod $@ c 19 0 && chmod 666 $@ && chgrp daemon $@

/dev/etIE0:
	mknod $@ c 19 64 && chmod 666 $@ && chgrp daemon $@

/dev/etIA0:
	mknod $@ c 19 128 && chmod 666 $@ && chgrp daemon $@
