aboutsummaryrefslogtreecommitdiff
path: root/net-mgmt/kismet/Makefile
blob: af19aaf68dca86c4906fc572d417bb08c26576a2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
# New ports collection makefile for:	kismet
# Date created:			3 May 2004
# Whom:					Thomas Spreng <spreng@socket.ch>
#
# $FreeBSD$
#

PORTNAME=	kismet
DISTVERSION=	2011-03-R2
PORTEPOCH=	1
CATEGORIES=	net-mgmt
MASTER_SITES=	http://www.kismetwireless.net/code/:1 \
		http://anonsvn.wireshark.org/wireshark/trunk/:2
DISTFILES=	${DISTNAME}${EXTRACT_SUFX}:1
DIST_SUBDIR=	${PORTNAME}
EXTRACT_ONLY=	${DISTNAME}${EXTRACT_SUFX}

MAINTAINER=	bf@FreeBSD.org
COMMENT=	802.11 layer2 wireless network detector, sniffer, and IDS

GNU_CONFIGURE=	yes
USE_GMAKE=	yes
CPPFLAGS+=	-I${LOCALBASE}/include
LDFLAGS+=	-L${LOCALBASE}/lib
CONFIGURE_ENV=	LDFLAGS="${LDFLAGS}"

MAN1=		kismet.1 kismet_drone.1
MAN5=		kismet.conf.5 kismet_drone.conf.5

OPTIONS=	PCRE "Build kismet with PCRE regex filters" on \
		PLUGINS "Build and install plugins" off \
		SETUID "Build kismet with privilege separation" on

.include <bsd.port.options.mk>

.ifndef(NOPORTDOCS)
PORTDOCS=	README manuf
DISTFILES+=	manuf:2
IGNOREFILES=	manuf
.endif

.ifndef(NOPORTEXAMPLES)
PORTEXAMPLES=	*
.endif

.ifdef(WITH_PCRE)
CONFIGURE_ARGS+=--enable-pcre
LIB_DEPENDS+=	pcre:${PORTSDIR}/devel/pcre
.else
CONFIGURE_ARGS+=--disable-pcre
.endif

.ifdef(WITH_SETUID)
KISMET_GROUP?=	kismet
CONFIGURE_ARGS+=--with-suidgroup=${KISMET_GROUP}
INSTALL_TARGET =	suidinstall
PLIST_SUB+=	SUID=""
PKGINSTALL=	${PKGDIR}/suid_pkg-install
PKGDEINSTALL =	${PKGDIR}/suid_pkg-deinstall
PKGMESSAGE=	${WRKDIR}/suid_pkg-message
SUB_FILES+=	suid_pkg-message
SUB_LIST+=	KISMET_GROUP=${KISMET_GROUP}

pre-su-install:
	@${SETENV} PKG_PREFIX=${PREFIX} ${SH} \
		${PKGINSTALL} ${PKGNAME} PRE-INSTALL

.else
INSTALL_TARGET =	install
CONFIGURE_ARGS+=--without-suidgroup
PLIST_SUB+=	SUID="@comment "
.endif

.ifdef(WITH_PLUGINS)
ALL_TARGET=	depend all-with-plugins
INSTALL_TARGET+=	plugins-install
PLIST_SUB+=	PLUGINS=""
.else
PLIST_SUB+=	PLUGINS="@comment "
.endif

post-patch:
	@${REINPLACE_CMD} -e "/gps=/s/true/false/" \
		-e "/ouifile=/{/wireshark/d;s|/etc|${DOCSDIR}|;}" \
			${WRKSRC}/conf/kismet.conf.in \
			${WRKSRC}/conf/kismet_drone.conf
	@${REINPLACE_CMD} -e "s/plugin-/plugin-[aps]/" \
		-e "s/make/${GMAKE}/" \
		-e "s/\$$(MAKE)/${GMAKE}/" \
		${WRKSRC}/Makefile.in
	@${REINPLACE_CMD} -e "/PLUGINLDFLAGS/d" \
		${WRKSRC}/Makefile.inc.in

post-install:
.ifndef(NOPORTDOCS)
	@${MKDIR} ${DOCSDIR}
	@${INSTALL_DATA} ${WRKSRC}/README ${DOCSDIR}
	@${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/manuf ${DOCSDIR}
.endif
.ifndef(NOPORTEXAMPLES)
	@${MKDIR} ${EXAMPLESDIR}
	@${INSTALL_DATA} ${WRKSRC}/ruby/* ${EXAMPLESDIR}
.endif
	@${INSTALL_DATA} ${WRKSRC}/conf/kismet.conf \
		${PREFIX}/etc/kismet.conf.sample
	@${INSTALL_DATA} ${WRKSRC}/conf/kismet_drone.conf \
		${PREFIX}/etc/kismet_drone.conf.sample

.include <bsd.port.mk>