xref: /freebsd/usr.bin/top/Makefile (revision 7afb8adff33d47f10a11368ff54bb2eec5b30165)
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
24LIBADD=	ncursesw m kvm jail
25
26CLEANFILES= sigdesc.h
27SIGCONV_AWK= ${.CURDIR}/../../contrib/top/sigconv.awk
28SIGNAL_H= ${DESTDIR}/usr/include/sys/signal.h
29sigdesc.h: ${SIGCONV_AWK} ${SIGNAL_H}
30	awk -f ${SIGCONV_AWK} < ${SIGNAL_H} > ${.TARGET}
31
32CLEANFILES+= top.local.h top.x
33.SUFFIXES: .X .x .H .h
34.X.x .H.h:
35	@${ECHO} Making ${.TARGET} from ${.IMPSRC}
36	@sed -e's,%LoadMax%,5.0,g' \
37	-e's,%TableSize%,20011,g' \
38	-e's,%NominalTopn%,18,g' \
39	-e's,%topn%,-1,g' \
40	-e's,%delay%,2,g' \
41	-e's,%random%,1,g' \
42	${.IMPSRC} > ${.TARGET}
43
44CLEANFILES+= top.1
45top.1: top.x top.local.1
46	cat ${.ALLSRC} > ${.TARGET}
47
48.include <bsd.prog.mk>
49