1# $FreeBSD$
2
3TOPDIR=	${.CURDIR}/../../contrib/top
4.PATH: ${TOPDIR}
5
6PROG=	top
7SRCS=	commands.c display.c machine.c screen.c top.c \
8	username.c utils.c version.c
9SRCS+=	sigdesc.h top.local.h
10CFLAGS+= -DHAVE_GETOPT -DHAVE_STRERROR -DORDER
11CFLAGS+= -I${.CURDIR} -I${TOPDIR} -I.
12
13WARNS?=	0
14
15#
16# The table size should be a prime number approximately twice as
17# large as the number of lines in /etc/passwd.  The default number
18# is 20011; use /etc/make.conf to override this.
19#
20.if defined(TOP_TABLE_SIZE)
21CFLAGS+= -D"Table_size=${TOP_TABLE_SIZE}"
22.endif
23
24DPADD=	${LIBTERMCAP} ${LIBM} ${LIBKVM} ${LIBJAIL}
25LDADD=	-ltermcap -lm -lkvm -ljail
26
27CLEANFILES= sigdesc.h
28SIGCONV_AWK= ${.CURDIR}/../../contrib/top/sigconv.awk
29SIGNAL_H= ${DESTDIR}/usr/include/sys/signal.h
30sigdesc.h: ${SIGCONV_AWK} ${SIGNAL_H}
31	awk -f ${SIGCONV_AWK} < ${SIGNAL_H} > ${.TARGET}
32
33CLEANFILES+= top.local.h top.x
34.SUFFIXES: .X .x .H .h
35.X.x .H.h:
36	@${ECHO} Making ${.TARGET} from ${.IMPSRC}
37	@sed -e's,%LoadMax%,5.0,g' \
38	-e's,%TableSize%,20011,g' \
39	-e's,%NominalTopn%,18,g' \
40	-e's,%topn%,-1,g' \
41	-e's,%delay%,2,g' \
42	-e's,%random%,1,g' \
43	${.IMPSRC} > ${.TARGET}
44
45CLEANFILES+= top.1
46top.1: top.x top.local.1
47	cat ${.ALLSRC} > ${.TARGET}
48
49.include <bsd.prog.mk>
50