freebsd-ports/net-mgmt/nagios4/Makefile

110 lines
3.1 KiB
Makefile
Raw Normal View History

# Created by: Blaz Zupan <blaz@si.FreeBSD.org>
# $FreeBSD$
PORTNAME= nagios
PORTVERSION= 4.3.1
PORTEPOCH= 1
CATEGORIES= net-mgmt
MASTER_SITES= https://assets.nagios.com/downloads/nagioscore/releases/ \
SF/${PORTNAME}/${PORTNAME}-4.x/${PORTNAME}-${PORTVERSION}
PKGNAMESUFFIX= 4
MAINTAINER= mat@FreeBSD.org
COMMENT= Powerful network monitoring system
LICENSE= GPLv2
LIB_DEPENDS= libltdl.so:devel/libltdl \
libpng16.so:graphics/png \
libgd.so:graphics/gd
USES= cpe gmake jpeg perl5
USE_PERL5= build
USE_PHP= xml
USE_RC_SUBR= nagios
CONFLICTS= nagios-[123].* nagios-devel-*
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --with-command-user=${NAGIOSUSER} \
--with-command-group=${WWWGRP} \
--with-nagios-user=${NAGIOSUSER} \
--with-nagios-group=${NAGIOSGROUP} \
--with-htmurl=${NAGIOSHTMURL} \
--with-cgiurl=${NAGIOSCGIURL} \
--sbindir=${WWWDIR}/cgi-bin \
--libexecdir=${PREFIX}/libexec/nagios \
--datadir=${WWWDIR} \
--sysconfdir=${PREFIX}/etc/nagios \
--localstatedir=${NAGIOSDIR} \
--with-httpd-conf=${PREFIX}/etc \
--with-checkresult-dir=${NAGIOSDIR}/checkresults \
--disable-statuswrl \
converters/libiconv: - Remove const qualifier from iconv(3) to match POSIX: http://pubs.opengroup.org/onlinepubs/9699919799/functions/iconv.html - Patch iconv.h to expose more GNU extensions when LIBICONV_PLUG is defined because the base system iconv supports these extensions too. Add/remove patches to/from ports to call iconv with non-const arguments. This breaks some ports on FreeBSD 10 because base system iconv.h still has the const qualifier. Fix this by letting USES=iconv add a build dependency on converters/libiconv so ports can use its iconv.h (with LIBICONV_PLUG defined) instead of the base system iconv.h. This exposed some ports that link with libiconv when it is available instead of using libc iconv. In these cases one of the following changes has been made: - patch configure scripts to test for libc iconv first - add ac_cv_lib_iconv_libiconv=no or similar to CONFIGURE_ARGS to disable some configure tests - converters/wkhtmltopdf: this includes Qt4 so add a patch from devel/qt4 - lang/gcc5-aux: respect CFLAGS and friends during configure such that LIBICONV_PLUG is defined in the iconv test, also switch to external gettext - mail/gnarwl: replace patches with CPPFLAGS/LIBS - multimedia/ffmpeg2theora: remove iconv test from SConstruct and use ICONV_LIB in port Makefile instead, also fix a bug in subtitles.c - net-im/licq: finish conversion to cmake - net-mgmt/bandwidthd, net-mgmt/icinga, net-mgmt/nagios, net-mgmt/nagios4: don't need iconv - textproc/p5-XML-TinyXML: finish conversion to USES=perl5 Other changes: - databases/qdbm and slaves: respect CFLAGS and friends, also enable bzip2 and lzo support - games/ldmud: respect CFLAGS and friends - graphics/inventor: replace some patches with MAKE_ARGS/MAKE_ENV to respect CFLAGS and friends, also remove FreeBSD/alpha patch and add missing xorg dependencies PR: 199099 Exp-run by: antoine Approved by: portmgr (antoine)
2015-04-15 10:20:27 +02:00
--enable-event-broker \
ac_cv_lib_iconv_main=no
Support LIBS like LDFLAGS. - Add LIBS="${LIBS}" to MAKE_ENV and CONFIGURE_ENV. - Add an option helper for LIBS. - Adjust all ports that already use LIBS. Also remove references to PTHREAD_CFLAGS and PTHREAD_LIBS while here. - Some ports did not support having a LIBS environment variable and required additional patches. Somewhat simplified a linker command line looks like: ${CC} ${src_LDFLAGS} ${LDFLAGS} ${src_LIBS} ${LIBS} where src_LDFLAGS and src_LIBS are controlled by upstream and LDFLAGS and LIBS can be controlled by us. If possible -L and -l flags need to be added to LIBS to make sure they appear after any -L and -l flags set by upstream. Many ports currently add -L${LOCALBASE}/lib to LDFLAGS but this may appear too early on the command line causing installed libraries to be linked in instead of freshly built ones. Additional changes: benchmarks/netio: Replace WITH_IPV6 with an IPV6 option. comms/gnokii: Replace some patches with USES=pathfix. Also remove -fPIC. graphics/gimageview: USES=libtool and install desktop file in DESKTOPDIR. graphics/visionworkbench: Remove FreeBSD 7 support. multimedia/libmovtar: New LIB_DEPENDS syntax. multimedia/opencinematools: Use standard do-build. net/siproxd: USES=libtool:keepla (port actually needs .la files for plugins) net-mgmt/nagios: Remove -fPIC. net-mgmt/nagios4: Remove -fPIC. print/cups-base: Only add -lssp_nonshared on i386 and OSVERSION < 1000036. security/p11-kit: Replace PTHREAD_LIBS in CONFIGURE_ENV with ac_cv_func_pthread_mutexattr_init=no in CONFIGURE_ARGS. This skips a test in configure that falsely detects pthread_mutexattr_init in our libc. sysutils/dar: Fix iconv detection. x11/rxvt-unicode: Remove -lstdc++ and patch configure to remove a FreeBSD hack and use $CXX as linker as on other platforms. PR: 190592 Exp-run by: antoine Approved by: portmgr (antoine)
2014-06-11 16:49:59 +02:00
CONFIGURE_ENV= PERL=${PERL}
Support LIBS like LDFLAGS. - Add LIBS="${LIBS}" to MAKE_ENV and CONFIGURE_ENV. - Add an option helper for LIBS. - Adjust all ports that already use LIBS. Also remove references to PTHREAD_CFLAGS and PTHREAD_LIBS while here. - Some ports did not support having a LIBS environment variable and required additional patches. Somewhat simplified a linker command line looks like: ${CC} ${src_LDFLAGS} ${LDFLAGS} ${src_LIBS} ${LIBS} where src_LDFLAGS and src_LIBS are controlled by upstream and LDFLAGS and LIBS can be controlled by us. If possible -L and -l flags need to be added to LIBS to make sure they appear after any -L and -l flags set by upstream. Many ports currently add -L${LOCALBASE}/lib to LDFLAGS but this may appear too early on the command line causing installed libraries to be linked in instead of freshly built ones. Additional changes: benchmarks/netio: Replace WITH_IPV6 with an IPV6 option. comms/gnokii: Replace some patches with USES=pathfix. Also remove -fPIC. graphics/gimageview: USES=libtool and install desktop file in DESKTOPDIR. graphics/visionworkbench: Remove FreeBSD 7 support. multimedia/libmovtar: New LIB_DEPENDS syntax. multimedia/opencinematools: Use standard do-build. net/siproxd: USES=libtool:keepla (port actually needs .la files for plugins) net-mgmt/nagios: Remove -fPIC. net-mgmt/nagios4: Remove -fPIC. print/cups-base: Only add -lssp_nonshared on i386 and OSVERSION < 1000036. security/p11-kit: Replace PTHREAD_LIBS in CONFIGURE_ENV with ac_cv_func_pthread_mutexattr_init=no in CONFIGURE_ARGS. This skips a test in configure that falsely detects pthread_mutexattr_init in our libc. sysutils/dar: Fix iconv detection. x11/rxvt-unicode: Remove -lstdc++ and patch configure to remove a FreeBSD hack and use $CXX as linker as on other platforms. PR: 190592 Exp-run by: antoine Approved by: portmgr (antoine)
2014-06-11 16:49:59 +02:00
CPPFLAGS+= -I${LOCALBASE}/include
CFLAGS+= ${CPPFLAGS}
Support LIBS like LDFLAGS. - Add LIBS="${LIBS}" to MAKE_ENV and CONFIGURE_ENV. - Add an option helper for LIBS. - Adjust all ports that already use LIBS. Also remove references to PTHREAD_CFLAGS and PTHREAD_LIBS while here. - Some ports did not support having a LIBS environment variable and required additional patches. Somewhat simplified a linker command line looks like: ${CC} ${src_LDFLAGS} ${LDFLAGS} ${src_LIBS} ${LIBS} where src_LDFLAGS and src_LIBS are controlled by upstream and LDFLAGS and LIBS can be controlled by us. If possible -L and -l flags need to be added to LIBS to make sure they appear after any -L and -l flags set by upstream. Many ports currently add -L${LOCALBASE}/lib to LDFLAGS but this may appear too early on the command line causing installed libraries to be linked in instead of freshly built ones. Additional changes: benchmarks/netio: Replace WITH_IPV6 with an IPV6 option. comms/gnokii: Replace some patches with USES=pathfix. Also remove -fPIC. graphics/gimageview: USES=libtool and install desktop file in DESKTOPDIR. graphics/visionworkbench: Remove FreeBSD 7 support. multimedia/libmovtar: New LIB_DEPENDS syntax. multimedia/opencinematools: Use standard do-build. net/siproxd: USES=libtool:keepla (port actually needs .la files for plugins) net-mgmt/nagios: Remove -fPIC. net-mgmt/nagios4: Remove -fPIC. print/cups-base: Only add -lssp_nonshared on i386 and OSVERSION < 1000036. security/p11-kit: Replace PTHREAD_LIBS in CONFIGURE_ENV with ac_cv_func_pthread_mutexattr_init=no in CONFIGURE_ARGS. This skips a test in configure that falsely detects pthread_mutexattr_init in our libc. sysutils/dar: Fix iconv detection. x11/rxvt-unicode: Remove -lstdc++ and patch configure to remove a FreeBSD hack and use $CXX as linker as on other platforms. PR: 190592 Exp-run by: antoine Approved by: portmgr (antoine)
2014-06-11 16:49:59 +02:00
LIBS+= -L${LOCALBASE}/lib
INSTALL_TARGET= install install-commandmode install-config
PLIST_SUB= NAGIOSDIR=${NAGIOSDIR} \
NAGIOSUSER=${NAGIOSUSER} \
NAGIOSGROUP=${NAGIOSGROUP} \
WWWGRP=${WWWGRP}
SUB_LIST= NAGIOSDIR=${NAGIOSDIR} \
NAGIOSUSER=${NAGIOSUSER} \
NAGIOSGROUP=${NAGIOSGROUP} \
NAGIOSHTMURL=${NAGIOSHTMURL} \
NAGIOSCGIURL=${NAGIOSCGIURL}
SUB_FILES= pkg-message
NAGIOSUSER?= nagios
NAGIOSGROUP?= nagios
NAGIOSDIR?= /var/spool/nagios
.if defined(NAGIOSWWWDIR)
WWWDIR= ${PREFIX}/${NAGIOSWWWDIR}
.endif
NAGIOSHTMURL?= /nagios
NAGIOSCGIURL?= ${NAGIOSHTMURL}/cgi-bin
USERS= ${NAGIOSUSER}
GROUPS= ${NAGIOSGROUP}
OPTIONS_DEFINE= NANOSLEEP UNHANDLED_HACK COREWINDOW
OPTIONS_RADIO= PLUGINS
OPTIONS_RADIO_PLUGINS= MONPLUGINS NAGPLUGINS
OPTIONS_DEFAULT= NAGPLUGINS
NANOSLEEP_DESC= Use nanosleep in event timing
UNHANDLED_HACK_DESC= Display passive checks in unhandled queries
COREWINDOW_DESC= Enable the corewindow parameter
MONPLUGINS_RUN_DEPENDS= ${LOCALBASE}/libexec/nagios/check_nagios:net-mgmt/monitoring-plugins
NAGPLUGINS_RUN_DEPENDS= ${LOCALBASE}/libexec/nagios/check_nagios:net-mgmt/nagios-plugins
COREWINDOW_CONFIGURE_ENABLE= corewindow
OPTIONS_SUB=
NANOSLEEP_CONFIGURE_ENABLE= nanosleep
.if !defined(MAKING_PATCHES)
# make clean patch makepatch MAKING_PATCHES=
post-patch:
${REINPLACE_CMD} -e 's/\<77\([0-7]\)\>/75\1/g; s/\<66\([0-7]\)\>/64\1/; /chmod/d; \
/\.cfg$$/s/$$/-sample/' \
${WRKSRC}/Makefile.in ${WRKSRC}/base/Makefile.in ${WRKSRC}/cgi/Makefile.in ${WRKSRC}/contrib/Makefile.in ${WRKSRC}/html/Makefile.in
post-patch-UNHANDLED_HACK-on:
${REINPLACE_CMD} -e 's#;serviceprops=42\&#;serviceprops=10\&#g' -e \
's#;hostprops=42\"#;hostprops=10\"#g' ${WRKSRC}/html/side.php
.endif
post-install:
@${RMDIR} ${STAGEDIR}${PREFIX}/libexec/nagios
@${MV} ${STAGEDIR}${WWWDIR}/config.inc.php ${STAGEDIR}${WWWDIR}/config.inc.php.sample
.include <bsd.port.mk>