aboutsummaryrefslogtreecommitdiff
path: root/net-mgmt/xymon-server/Makefile
blob: f4b115baaa686f9a09c66c21e308c9c61cda15d0 (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
# $FreeBSD$

PORTNAME=	xymon
PORTVERSION=	4.3.17
PORTREVISION=	3
CATEGORIES=	net-mgmt www
MASTER_SITES=	SF/xymon/Xymon/${PORTVERSION}
PKGNAMESUFFIX=	-server${PKGNAMESUFFIX2}
DIST_SUBDIR=	repacked

MAINTAINER=	feld@FreeBSD.org
COMMENT=	System for monitoring servers and networks

LICENSE=	GPLv2

BUILD_DEPENDS=	rrdtool:${PORTSDIR}/databases/rrdtool
LIB_DEPENDS=	libpng.so:${PORTSDIR}/graphics/png \
		libpcre.so:${PORTSDIR}/devel/pcre \
		libcares.so:${PORTSDIR}/dns/c-ares
RUN_DEPENDS=	rrdtool:${PORTSDIR}/databases/rrdtool \
		fping:${PORTSDIR}/net/fping \
		mtr:${PORTSDIR}/net/mtr-nox11

USERS=		xymon
GROUPS=		xymon

# Options
XYMONUSER?=	xymon
XYMONHOSTNAME?=	xymon.example.com
XYMONHOSTIP?=	127.0.0.1

USES=		gmake
USE_OPENSSL=	yes
MAKE_JOBS_UNSAFE=	yes
CONFIGURE_ENV=	MAKE=gmake
MAKE_ENV+=	XYMONUSER="${XYMONUSER}"
MAKE_ENV+=	XYMONHOSTNAME="${XYMONHOSTNAME}"
MAKE_ENV+=	XYMONHOSTIP="${XYMONHOSTIP}"
MAKE_ENV+=	INSTALLROOT="${STAGEDIR}"
MANPREFIX=	${STAGEDIR}${PREFIX}
MAKE_ARGS+=	PKGBUILD="true"
USE_RC_SUBR=	xymon-server
SUB_LIST+=	XYMONUSER="${XYMONUSER}"
PLIST_SUB+=	XYMONUSER="${XYMONUSER}"

CONFIG_FILES=	alerts.cfg analysis.cfg cgioptions.cfg client-local.cfg \
		columndoc.csv combo.cfg graphs.cfg holidays.cfg protocols.cfg \
		rrddefinitions.cfg tasks.cfg xymonserver.cfg
FIXME1=		alerts.cfg hosts.cfg xymon-apache-open xymon-apache-secure
FIXME2=		analysis.cfg combo.cfg holidays.cfg rrddefinitions.cfg \
		snmpmibs.cfg xymonmenu.cfg xymonserver-migration.cfg

OPTIONS_DEFINE=LDAP NETSNMP
NETSNMP_DESC=Enable Net-SNMP support

.include <bsd.port.options.mk>

.if ${PORT_OPTIONS:MLDAP}
MAKE_ENV+=	WITH_LDAP=1
USE_OPENLDAP=	yes
.endif

.if ${PORT_OPTIONS:MNETSNMP}
MAKE_ENV+=	WITH_NETSNMP=1
LIB_DEPENDS+=	libnetsnmp.so:${PORTSDIR}/net-mgmt/net-snmp
.endif

post-patch:
	${REINPLACE_CMD} -e 's|!/bin/bash|!/usr/local/bin/bash|' \
		${WRKSRC}/xymond/xymonreports.sh.DIST
	${REINPLACE_CMD} -e 's|web-build client|web-build|' ${WRKSRC}/build/Makefile.rules
	${REINPLACE_CMD} -e 's|install-docs install-client|install-docs|' ${WRKSRC}/build/Makefile.rules
	${REINPLACE_CMD} -e 's|$(INSTALLETCDIR)/protocols.cfg|$(INSTALLETCDIR)/protocols.cfg.DIST|' ${WRKSRC}/xymonnet/Makefile
	${REINPLACE_CMD} -e 's|TRACEROUTE="traceroute"|TRACEROUTE="mtr -c 2 -n --report"|' ${WRKSRC}/xymond/etcfiles/xymonserver.cfg.DIST

# Configure script is interactive
do-configure:
	${CP} ${FILESDIR}/Makefile ${WRKSRC}/

post-install:
	${MKDIR} ${STAGEDIR}${WWWDIR}/server/etc
	${INSTALL_SCRIPT} ${WRKSRC}/build/upgrade430.sh ${STAGEDIR}${WWWDIR}/server/bin/
	${INSTALL_PROGRAM} ${WRKSRC}/build/renamevars ${STAGEDIR}${WWWDIR}/server/bin/
.for i in ${FIXME1}
	${INSTALL_DATA} ${WRKSRC}/xymond/etcfiles/${i}.DIST ${STAGEDIR}${WWWDIR}/server/etc/
.endfor
.for i in ${FIXME2}
	${INSTALL_DATA} ${WRKSRC}/xymond/etcfiles/${i} ${STAGEDIR}${WWWDIR}/server/etc/${i}.DIST
.endfor
.for i in ${CONFIG_FILES}
	${CP} -np ${STAGEDIR}${WWWDIR}/server/etc/${i}.DIST \
		${STAGEDIR}${WWWDIR}/server/etc/${i} || ${TRUE}
.endfor

	# this dir should NOT get installed with the package; will do in rc script
	${RMDIR} ${STAGEDIR}/var/log/xymon
	${RMDIR} ${STAGEDIR}/var/log
	${RMDIR} ${STAGEDIR}/var

.include <bsd.port.mk>