Changeset View
Changeset View
Standalone View
Standalone View
net-mgmt/librenms/Makefile
# Created by: Muhammad Moinur Rahman<bofh@FreeBSD.org> | # Created by: Muhammad Moinur Rahman<bofh@FreeBSD.org> | ||||
# $FreeBSD$ | # $FreeBSD$ | ||||
PORTNAME= librenms | PORTNAME= librenms | ||||
PORTVERSION= 1.33.01 | PORTVERSION= 1.35 | ||||
PORTREVISION= 1 | PORTREVISION= 0 | ||||
PORTEPOCH= 1 | PORTEPOCH= 1 | ||||
CATEGORIES= net-mgmt | CATEGORIES= net-mgmt | ||||
MAINTAINER= bofh@FreeBSD.org | MAINTAINER= bofh@FreeBSD.org | ||||
COMMENT= Autodiscovering PHP/MySQL/SNMP based network monitoring | COMMENT= Autodiscovering PHP/MySQL/SNMP based network monitoring | ||||
LICENSE= GPLv3 | LICENSE= GPLv3 | ||||
USE_GITHUB= yes | USE_GITHUB= yes | ||||
GH_ACCOUNT= librenms | GH_ACCOUNT= librenms | ||||
USES= php:cli python${PY_MYSQL} shebangfix | USES= python${PY_MYSQL} shebangfix | ||||
SHEBANG_FILES= scripts/auth_test.php scripts/deploy-docs.sh scripts/github-remove \ | SHEBANG_FILES= scripts/auth_test.php scripts/deploy-docs.sh scripts/github-remove \ | ||||
scripts/Migration/Standard_Conversion/convert_no_xml.sh \ | scripts/Migration/Standard_Conversion/convert_no_xml.sh \ | ||||
scripts/Migration/Standard_Conversion/destwork_no_xml.sh \ | scripts/Migration/Standard_Conversion/destwork_no_xml.sh \ | ||||
scripts/Migration/Standard_Conversion/mkdir.sh \ | scripts/Migration/Standard_Conversion/mkdir.sh \ | ||||
scripts/Migration/XML_Conversion/convert.sh \ | scripts/Migration/XML_Conversion/convert.sh \ | ||||
scripts/Migration/XML_Conversion/destwork.sh \ | scripts/Migration/XML_Conversion/destwork.sh \ | ||||
scripts/Migration/XML_Conversion/mkdir.sh \ | scripts/Migration/XML_Conversion/mkdir.sh \ | ||||
scripts/removespikes.php scripts/agent-local/nfs-stats.sh \ | scripts/removespikes.php scripts/agent-local/nfs-stats.sh \ | ||||
scripts/removespikes.pl scripts/watchmaillog/watchmaillog.pl \ | scripts/removespikes.pl scripts/watchmaillog/watchmaillog.pl \ | ||||
vendor/ezyang/htmlpurifier/maintenance/add-vimline.php \ | vendor/ezyang/htmlpurifier/maintenance/add-vimline.php \ | ||||
vendor/ezyang/htmlpurifier/maintenance/config-scanner.php \ | vendor/ezyang/htmlpurifier/maintenance/config-scanner.php \ | ||||
vendor/ezyang/htmlpurifier/maintenance/flush-definition-cache.php \ | vendor/ezyang/htmlpurifier/maintenance/flush-definition-cache.php \ | ||||
vendor/ezyang/htmlpurifier/maintenance/flush.php \ | vendor/ezyang/htmlpurifier/maintenance/flush.php \ | ||||
vendor/ezyang/htmlpurifier/maintenance/generate-entity-file.php \ | vendor/ezyang/htmlpurifier/maintenance/generate-entity-file.php \ | ||||
vendor/ezyang/htmlpurifier/maintenance/generate-includes.php \ | vendor/ezyang/htmlpurifier/maintenance/generate-includes.php \ | ||||
vendor/ezyang/htmlpurifier/maintenance/generate-schema-cache.php \ | vendor/ezyang/htmlpurifier/maintenance/generate-schema-cache.php \ | ||||
vendor/ezyang/htmlpurifier/maintenance/generate-standalone.php \ | vendor/ezyang/htmlpurifier/maintenance/generate-standalone.php \ | ||||
vendor/ezyang/htmlpurifier/maintenance/merge-library.php \ | vendor/ezyang/htmlpurifier/maintenance/merge-library.php \ | ||||
vendor/ezyang/htmlpurifier/maintenance/old-extract-schema.php \ | vendor/ezyang/htmlpurifier/maintenance/old-extract-schema.php \ | ||||
vendor/ezyang/htmlpurifier/maintenance/old-remove-require-once.php \ | vendor/ezyang/htmlpurifier/maintenance/old-remove-require-once.php \ | ||||
vendor/ezyang/htmlpurifier/maintenance/old-remove-schema-def.php \ | vendor/ezyang/htmlpurifier/maintenance/old-remove-schema-def.php \ | ||||
vendor/ezyang/htmlpurifier/maintenance/rename-config.php \ | vendor/ezyang/htmlpurifier/maintenance/rename-config.php \ | ||||
vendor/ezyang/htmlpurifier/maintenance/remove-trailing-whitespace.php \ | vendor/ezyang/htmlpurifier/maintenance/remove-trailing-whitespace.php \ | ||||
vendor/ezyang/htmlpurifier/maintenance/update-config.php \ | vendor/ezyang/htmlpurifier/maintenance/update-config.php \ | ||||
vendor/tecnickcom/tcpdf/tools/tcpdf_addfont.php | vendor/tecnickcom/tcpdf/tools/tcpdf_addfont.php \ | ||||
poller.php poller-wrapper.py | |||||
USE_PHP= ctype curl filter gd hash json ldap mcrypt mysqli openssl session simplexml snmp tokenizer xml | USE_PHP= ctype curl filter gd hash json ldap mcrypt mysqli openssl posix session simplexml snmp tokenizer xml | ||||
NO_BUILD= yes | NO_BUILD= yes | ||||
RUN_DEPENDS+= rrdtool:databases/rrdtool \ | RUN_DEPENDS+= rrdtool:databases/rrdtool \ | ||||
dot:graphics/graphviz \ | dot:graphics/graphviz \ | ||||
${LOCALBASE}/share/pear/Net/IPv4.php:net/pear-Net_IPv4 \ | ${LOCALBASE}/share/pear/Net/IPv4.php:net/pear-Net_IPv4 \ | ||||
${LOCALBASE}/share/pear/Net/IPv6.php:net/pear-Net_IPv6 \ | ${LOCALBASE}/share/pear/Net/IPv6.php:net/pear-Net_IPv6 \ | ||||
snmpget:net-mgmt/net-snmp \ | snmpget:net-mgmt/net-snmp \ | ||||
Show All 20 Lines | X11_RUN_DEPENDS= Magick-config:graphics/ImageMagick \ | ||||
mtr:net/mtr | mtr:net/mtr | ||||
X11_RUN_DEPENDS_OFF= Magick-config:graphics/ImageMagick-nox11 \ | X11_RUN_DEPENDS_OFF= Magick-config:graphics/ImageMagick-nox11 \ | ||||
mtr:net/mtr-nox11 | mtr:net/mtr-nox11 | ||||
WMIC_RUN_DEPENDS= wmic:net-mgmt/wmi-client | WMIC_RUN_DEPENDS= wmic:net-mgmt/wmi-client | ||||
MYSQLD_USES= mysql:server | MYSQLD_USES= mysql:server | ||||
MYSQLD_USES_OFF= mysql:client | MYSQLD_USES_OFF= mysql:client | ||||
SUB_FILES+= pkg-message | SUB_FILES+= librenms.conf pkg-message | ||||
SUB_LIST+= PHP="${PHPBASE}/bin/php" PYTHON=${PYTHON_CMD} | SUB_LIST+= PHP="${PHPBASE}/bin/php" PYTHON=${PYTHON_CMD} | ||||
ROOT_FILES= addhost.php adduser.php alerts.php build-base.php build.sql \ | ROOT_FILES= addhost.php adduser.php alerts.php build-base.php build.sql \ | ||||
billing-calculate.php \ | billing-calculate.php check-services.php composer.json \ | ||||
check-services.php composer.json config_to_json.php cronic daily.php daily.sh \ | config.php.default config_to_json.php cronic daily.php daily.sh \ | ||||
delhost.php discovery-wrapper.py discovery.php dist-pollers.php irc.php \ | delhost.php discovery-wrapper.py discovery.php dist-pollers.php irc.php \ | ||||
mkdocs.yml pbin.sh phpunit.xml poll-billing.php poller.php poller-service.py \ | mkdocs.yml pbin.sh phpunit.xml poll-billing.php poller.php poller-service.py \ | ||||
poller-wrapper.py readmegen.yml renamehost.php services-wrapper.py \ | poller-wrapper.py readmegen.yml renamehost.php services-wrapper.py \ | ||||
snmptrap.php syslog.php validate.php | snmptrap.php syslog.php validate.php | ||||
ROOT_DIRS= LibreNMS contrib doc html includes lib mibs misc scripts sql-schema tests vendor | ROOT_DIRS= LibreNMS contrib doc html includes lib logs mibs misc rrd scripts sql-schema tests vendor | ||||
DOCS= AUTHORS.md CHANGELOG CONTRIBUTING.md LICENSE.txt README.md | DOCS= AUTHORS.md CHANGELOG CONTRIBUTING.md LICENSE.txt README.md | ||||
PORTDOCS= * | PORTDOCS= * | ||||
PORTEXAMPLES= snmp.conf.example snmpd.conf.example | PORTEXAMPLES= snmp.conf.example snmpd.conf.example | ||||
NO_ARCH= yes | NO_ARCH= yes | ||||
.if !defined(PACKAGE_BUILDING) | APACHEMOD_USES= php:mod | ||||
APACHEMOD_VARS_ON= WANT_PHP_MOD=yes | APACHEMOD_USES_OFF= php:web | ||||
APACHEMOD_USE= APACHE_RUN=22+ | APACHEMOD_USE= APACHE_RUN=22+ | ||||
.else | |||||
# Package builder doesn't create php5 with module | |||||
USES+= php:web | |||||
.endif | |||||
post-patch: | post-patch: | ||||
${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' \ | ${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' \ | ||||
${WRKSRC}/poller-wrapper.py ${WRKSRC}/poller.php | ${WRKSRC}/poller-wrapper.py ${WRKSRC}/poller.php | ||||
${REINPLACE_CMD} 's|%%PORTVERSION%%|${PORTVERSION}|g' \ | ${REINPLACE_CMD} 's|%%PORTVERSION%%|${PORTVERSION}|g' \ | ||||
${WRKSRC}/includes/common.php | ${WRKSRC}/includes/common.php | ||||
${REINPLACE_CMD} -e 's|/opt/librenms|${WWWDIR}|' \ | |||||
${WRKSRC}/html/install.php | |||||
${RM} ${WRKSRC}/LibreNMS/Validations/Updates.php | |||||
do-install: | do-install: | ||||
@${MKDIR} ${STAGEDIR}/${WWWDIR} | ${MKDIR} ${STAGEDIR}/${WWWDIR} ${STAGEDIR}/${PREFIX}/etc/newsyslog.conf.d | ||||
.for dir in ${ROOT_DIRS} | .for dir in ${ROOT_DIRS} | ||||
@${MKDIR} ${STAGEDIR}/${WWWDIR}/${dir} | ${MKDIR} ${STAGEDIR}/${WWWDIR}/${dir} | ||||
@cd ${WRKSRC}/${dir} && ${COPYTREE_SHARE} . ${STAGEDIR}/${WWWDIR}/${dir} | (cd ${WRKSRC}/${dir} && ${COPYTREE_SHARE} . ${STAGEDIR}/${WWWDIR}/${dir}) | ||||
.endfor | .endfor | ||||
.for f in ${ROOT_FILES} | .for f in ${ROOT_FILES} | ||||
${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}/${WWWDIR} | ${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}/${WWWDIR} | ||||
.endfor | .endfor | ||||
# Create empty rrd dir writable by www | |||||
@${MKDIR} ${STAGEDIR}/${WWWDIR}/rrd | |||||
@${CHMOD} 0775 ${STAGEDIR}/${WWWDIR}/rrd | |||||
# Create empty logs dir | |||||
@${MKDIR} ${STAGEDIR}/${WWWDIR}/logs | |||||
# Make daily.sh executable | # Make daily.sh executable | ||||
@${CHMOD} 0755 ${STAGEDIR}/${WWWDIR}/daily.sh | ${CHMOD} 0755 ${STAGEDIR}/${WWWDIR}/daily.sh | ||||
# Files in scripts dir should be executable | # Files in scripts dir should be executable | ||||
@${FIND} ${STAGEDIR}/${WWWDIR}/scripts -type f -exec ${CHMOD} +x {} \; | ${FIND} ${STAGEDIR}/${WWWDIR}/scripts -type f -exec ${CHMOD} +x {} \; | ||||
# Ensure PHP and Python scripts are executable | # Ensure PHP and Python scripts are executable | ||||
@${FIND} ${STAGEDIR}/${WWWDIR} -type f -name '*.py' -or -type f -name \ | ${FIND} ${STAGEDIR}/${WWWDIR} -type f -name '*.py' -or -type f -name \ | ||||
'*.php' -exec ${CHMOD} +x {} \; | '*.php' -exec ${CHMOD} +x {} \; | ||||
${INSTALL_DATA} ${WRKDIR}/librenms.conf ${STAGEDIR}/${PREFIX}/etc/newsyslog.conf.d/librenms.conf | |||||
do-install-DOCS-on: | do-install-DOCS-on: | ||||
@${MKDIR} ${STAGEDIR}/${DOCSDIR} | ${MKDIR} ${STAGEDIR}/${DOCSDIR} | ||||
.for f in ${DOCS} | .for f in ${DOCS} | ||||
${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}/${DOCSDIR} | ${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}/${DOCSDIR} | ||||
.endfor | .endfor | ||||
@cd ${WRKSRC}/doc && ${COPYTREE_SHARE} . ${STAGEDIR}/${DOCSDIR} | cd ${WRKSRC}/doc && ${COPYTREE_SHARE} . ${STAGEDIR}/${DOCSDIR} | ||||
do-install-EXAMPLES-on: | do-install-EXAMPLES-on: | ||||
@${MKDIR} ${STAGEDIR}/${EXAMPLESDIR} | ${MKDIR} ${STAGEDIR}/${EXAMPLESDIR} | ||||
.for f in ${PORTEXAMPLES} | .for f in ${PORTEXAMPLES} | ||||
${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}/${EXAMPLESDIR} | ${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}/${EXAMPLESDIR} | ||||
.endfor | .endfor | ||||
post-install: | post-install: | ||||
@${ECHO_CMD} "@owner ${WWWOWN}" >> ${TMPPLIST} | @${FIND} -s ${STAGEDIR}${WWWDIR} -type f '(' -name '*.orig' -or -name '*.bak' ')' -delete | ||||
@${ECHO_CMD} "@group ${WWWGRP}" >> ${TMPPLIST} | |||||
@${FIND} -s ${STAGEDIR}${WWWDIR} -not -type d | ${SORT} | \ | @${FIND} -s ${STAGEDIR}${WWWDIR} -not -type d | ${SORT} | \ | ||||
${SED} -e 's#^${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST} | ${SED} -e 's#^${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST} | ||||
@${FIND} -s ${STAGEDIR}${WWWDIR} -type d | \ | @${ECHO_CMD} "etc/newsyslog.conf.d/librenms.conf" >> ${TMPPLIST} | ||||
${SED} -e 's#^${STAGEDIR}#@dir #' >> ${TMPPLIST} | @${ECHO_CMD} "@dir(www,www,0775) ${WWWDIR}/logs" >> ${TMPPLIST} | ||||
${INSTALL_DATA} ${WRKSRC}/config.php.default \ | @${ECHO_CMD} "@dir(www,www,0775) ${WWWDIR}/rrd" >> ${TMPPLIST} | ||||
${STAGEDIR}/${WWWDIR}/config.php.sample | |||||
@${ECHO} @sample ${WWWDIR}/config.php.sample >> ${TMPPLIST} | |||||
@${ECHO_CMD} "@group" >> ${TMPPLIST} | |||||
@${ECHO_CMD} "@owner" >> ${TMPPLIST} | |||||
.include <bsd.port.mk> | .include <bsd.port.mk> |