#	$OpenBSD: Makefile,v 1.28 2021/06/12 13:30:14 visa Exp $

PROG=	kqueue-test
CFLAGS+=-Wall
SRCS=	kqueue-pipe.c kqueue-fork.c main.c kqueue-process.c kqueue-random.c \
	kqueue-pty.c kqueue-tun.c kqueue-signal.c kqueue-fdpass.c \
	kqueue-flock.c kqueue-timer.c kqueue-regress.c
LDADD=	-levent -lutil
DPADD=	${LIBEVENT} ${LIBUTIL}

kq-pipe: ${PROG}
	./${PROG} -p
kq-fork: ${PROG}
	./${PROG} -f
kq-process: ${PROG}
	./${PROG} -P
kq-random: ${PROG}
	./${PROG} -r
kq-tun: ${PROG}
	@-${SUDO} sh -c 'cd /dev && sh MAKEDEV tun98 tun99'
	@EVENT_SHOW_METHOD=yes EVENT_NOPOLL=yes EVENT_NOSELECT=yes ${SUDO} ./${PROG} -t
	@EVENT_SHOW_METHOD=yes EVENT_NOPOLL=yes EVENT_NOKQUEUE=yes ${SUDO} ./${PROG} -t
	@EVENT_SHOW_METHOD=yes EVENT_NOSELECT=yes EVENT_NOKQUEUE=yes ${SUDO} ./${PROG} -t
	@-${SUDO} rm -f /dev/tun98 /dev/tun99
kq-pty-1: ${PROG}
	${SUDO} ./${PROG} -T1
kq-pty-2: ${PROG}
	${SUDO} ./${PROG} -T2
kq-signal: ${PROG}
	./${PROG} -s
kq-fdpass: ${PROG}
	./${PROG} -F
kq-flock: ${PROG}
	./${PROG} -l
kq-timer: ${PROG}
	./${PROG} -i
kq-invalid-timer: ${PROG}
	./${PROG} -I
kq-reset-timer: ${PROG}
	./${PROG} -j
kq-regress-1: ${PROG}
	./${PROG} -R1
kq-regress-2: ${PROG}
	./${PROG} -R2
kq-regress-3: ${PROG}
	./${PROG} -R3
kq-regress-4: ${PROG}
	./${PROG} -R4
kq-regress-5: ${PROG}
	./${PROG} -R5

TESTS+=	kq-fdpass
TESTS+=	kq-flock
TESTS+=	kq-fork
TESTS+=	kq-invalid-timer
TESTS+=	kq-pipe
TESTS+=	kq-process
TESTS+=	kq-pty-1
TESTS+=	kq-pty-2
TESTS+=	kq-random
TESTS+=	kq-regress-1
TESTS+=	kq-regress-2
TESTS+=	kq-regress-3
TESTS+=	kq-regress-4
TESTS+=	kq-regress-5
TESTS+=	kq-reset-timer
TESTS+=	kq-signal
TESTS+=	kq-timer

REGRESS_TARGETS=${TESTS}
# kq-tun broke at some point, apparently from a change in tun routing
REGRESS_ROOT_TARGETS=${REGRESS_TARGETS}
.PHONY: ${REGRESS_TARGETS}

.include <bsd.regress.mk>
