diff --git a/net-mgmt/zabbix6-server/Makefile b/net-mgmt/zabbix6-server/Makefile index 9389c39b359a..4f81530ddac7 100644 --- a/net-mgmt/zabbix6-server/Makefile +++ b/net-mgmt/zabbix6-server/Makefile @@ -1,235 +1,240 @@ PORTNAME= zabbix6 DISTVERSION= 6.0.10 +PORTREVISION= 1 CATEGORIES= net-mgmt MASTER_SITES= https://cdn.zabbix.com/zabbix/sources/stable/${DISTVERSION:R}/ PKGNAMESUFFIX?= -server DISTNAME= zabbix-${DISTVERSION} MAINTAINER= otis@FreeBSD.org COMMENT= Enterprise-class open source distributed monitoring (${PKGNAMESUFFIX:S/^-//}) WWW= https://www.zabbix.com/ LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING -LIB_DEPENDS= libpcre.so:devel/pcre - -CONFLICTS_INSTALL= zabbix5[0-9]${PKGNAMESUFFIX} \ - zabbix[0-57-9]${PKGNAMESUFFIX} \ - ${PORTNAME}[0-9]${PKGNAMESUFFIX} +CONFLICTS_INSTALL= ${PORTNAME}[0-9]${PKGNAMESUFFIX} \ + zabbix5[0-9]${PKGNAMESUFFIX} \ + zabbix[0-57-9]${PKGNAMESUFFIX} ZABBIX_BUILD= ${PKGNAMESUFFIX:S/^-//:S/-$//} .if ${ZABBIX_BUILD} != "frontend" # frontend only needs the version/distribution settings .if ${ZABBIX_BUILD} != "agent" -CONFIGURE_ARGS+= --with-libevent=${LOCALBASE} --cache-file=${WRKSRC}/config.cache -LIB_DEPENDS+= libevent.so:devel/libevent -USE_RC_SUBR= zabbix_${ZABBIX_BUILD} +CONFIGURE_ARGS+= --cache-file=${WRKSRC}/config.cache \ + --with-libevent=${LOCALBASE} +LIB_DEPENDS+= libevent.so:devel/libevent +USE_RC_SUBR= zabbix_${ZABBIX_BUILD} .else -USE_RC_SUBR= zabbix_${ZABBIX_BUILD}d +USE_RC_SUBR= zabbix_${ZABBIX_BUILD}d .endif -USES= pkgconfig iconv +USES= iconv pkgconfig USERS= zabbix GROUPS= zabbix -.if ${ZABBIX_BUILD} != "proxy" -PLIST_SUB= PROXY="@comment " -.else +.if ${ZABBIX_BUILD} == "proxy" PLIST_SUB= PROXY="" -PLIST_FILES+= bin/zabbix_proxy_js +.else +PLIST_SUB= PROXY="@comment " .endif - .if ${ZABBIX_BUILD} == "server" PLIST_SUB+= SERVER="" -PLIST_FILES+= bin/zabbix_js .else PLIST_SUB+= SERVER="@comment " .endif -PLIST_SUB+= ZABBIX_BUILD=${ZABBIX_BUILD} DISTVERSION=${DISTVERSION} +PLIST_SUB+= DISTVERSION=${DISTVERSION} \ + ZABBIX_BUILD=${ZABBIX_BUILD} SUB_LIST= ZABBIX_BUILD=${ZABBIX_BUILD} -MAKE_ARGS+= ARCH=freebsd -GNU_CONFIGURE= yes -CONFIGURE_ARGS+= --enable-${ZABBIX_BUILD} \ +MAKE_ARGS+= ARCH=freebsd +GNU_CONFIGURE= yes +CONFIGURE_ARGS+= --datadir=${ETCDIR} \ + --enable-${ZABBIX_BUILD} \ --sysconfdir=${ETCDIR} \ - --datadir=${ETCDIR} \ --with-iconv=${ICONV_PREFIX} .if ${ZABBIX_BUILD} != "agent" && ${ZABBIX_BUILD} != "java" LIB_DEPENDS+= libnetsnmp.so:net-mgmt/net-snmp CPPFLAGS+= -I${LOCALBASE}/include PORTSCOUT= limit:^6\.0\. SUB_FILES= pkg-message CONFIGURE_ARGS+= --with-net-snmp -OPTIONS_DEFINE= IPV6 FPING CURL LDAP IPMI SSH NMAP LIBXML2 UNIXODBC - -OPTIONS_DEFAULT= FPING CURL UNIXODBC MYSQL OPENSSL +OPTIONS_DEFINE= CURL FPING IPMI IPV6 LDAP LIBXML2 NMAP SSH UNIXODBC +OPTIONS_DEFAULT= CURL FPING MYSQL OPENSSL PCRE2 UNIXODBC OPTIONS_SUB= yes - -FPING_DESC= Build/install fping for ping checks -IPMI_DESC= Support for IPMI checks -LDAP_DESC= Support for LDAP server checks -NMAP_DESC= Build/install nmap for o/s detection -SSH_DESC= Support for SSH-based checks -UNIXODBC_DESC= Support for database checks via ODBC -LIBXML2_DESC= Support for libxml2 (required by monitoring VMware) -MYSQL_DESC= MySQL 8.0 database support -MYSQLDV_DESC= MYSQL DEFAULT_VERSIONS= (poudriere) - -OPTIONS_SINGLE= DB SSL -OPTIONS_SINGLE_DB?= MDB5 MDB6 MYSQL MYSQLDV PGSQL ORACLE -OPTIONS_SINGLE_SSL= OPENSSL GNUTLS +OPTIONS_SINGLE= DB PCRE SSL +OPTIONS_SINGLE_DB?= MDB5 MDB6 MYSQL MYSQLDV ORACLE PGSQL +OPTIONS_SINGLE_SSL= GNUTLS OPENSSL +OPTIONS_SINGLE_PCRE= PCRE1 PCRE2 + +FPING_DESC= Build/install fping for ping checks +IPMI_DESC= Support for IPMI checks +LDAP_DESC= Support for LDAP server checks +NMAP_DESC= Build/install nmap for o/s detection +PCRE_DESC= PCRE library to use +PCRE1_DESC= Use PCRE v1 library +PCRE2_DESC= Use PCRE v2 library +SSH_DESC= Support for SSH-based checks +UNIXODBC_DESC= Support for database checks via ODBC +LIBXML2_DESC= Support for libxml2 (required by monitoring VMware) +MYSQL_DESC= MySQL 8.0 database support +MYSQLDV_DESC= MYSQL DEFAULT_VERSIONS= (poudriere) MYSQL_CONFIGURE_ON= --with-mysql MYSQL_USES+= compiler:c11 mysql:80 MYSQLDV_CONFIGURE_ON= --with-mysql MYSQLDV_USES+= compiler:c11 mysql MDB5_CONFIGURE_ON= --with-mysql=${LOCALBASE}/bin/mysql_config MDB5_USES+= compiler:c11 mysql:105m MDB5_DESC= Mariadb 10.5 database support MDB6_CONFIGURE_ON= --with-mysql=${LOCALBASE}/bin/mysql_config MDB6_USES+= compiler:c11 mysql:106m MDB6_DESC= Mariadb 10.6 database support +PCRE1_LIB_DEPENDS= libpcre.so:devel/pcre +PCRE1_CONFIGURE_WITH= libpcre +PCRE2_LIB_DEPENDS= libpcre2-8.so:devel/pcre2 +PCRE2_CONFIGURE_WITH= libpcre2 + PGSQL_CONFIGURE_WITH= postgresql PGSQL_USES+= pgsql SQLITE_CONFIGURE_WITH= sqlite3 SQLITE_USES+= sqlite:3 ORACLE_CONFIGURE_WITH= oracle LDAP_CONFIGURE_WITH= ldap LDAP_USE= OPENLDAP=yes IPMI_CONFIGURE_WITH= openipmi IPMI_LIB_DEPENDS= libOpenIPMI.so:sysutils/openipmi FPING_RUN_DEPENDS= fping:net/fping SSH_CONFIGURE_WITH= ssh2 SSH_LIB_DEPENDS= libssh2.so:security/libssh2 -UNIXODBC_CONFIGURE_WITH=unixodbc -UNIXODBC_LIB_DEPENDS= libodbc.so:databases/unixODBC +UNIXODBC_CONFIGURE_WITH= unixodbc +UNIXODBC_LIB_DEPENDS= libodbc.so:databases/unixODBC .elif ${ZABBIX_BUILD} == "agent" -OPTIONS_SINGLE= SSL -OPTIONS_SINGLE_SSL= OPENSSL GNUTLS +OPTIONS_SINGLE= SSL +OPTIONS_SINGLE_SSL= GNUTLS OPENSSL .endif # if ${ZABBIX_BUILD} != "agent" && ${ZABBIX_BUILD} != "java" CURL_DESC= Support for web monitoring CURL_CONFIGURE_WITH= libcurl CURL_LIB_DEPENDS= libcurl.so:ftp/curl IPV6_CONFIGURE_ENABLE= ipv6 NMAP_RUN_DEPENDS= nmap:security/nmap \ sudo:security/sudo LIBXML2_CONFIGURE_WITH= libxml2=${LOCALBASE} LIBXML2_LIB_DEPENDS= libxml2.so:textproc/libxml2 MODBUS_DESC= Support for Modbus checks MODBUS_CONFIGURE_WITH= libmodbus MODBUS_LIB_DEPENDS= libmodbus.so:comms/libmodbus OPENSSL_CONFIGURE_WITH= openssl OPENSSL_USES= ssl OPENSSL_VARS= BROKEN_SSL="libressl libressl-devel" \ BROKEN_SSL_REASON="PSK is not provided by LibreSSL" GNUTLS_CONFIGURE_WITH= gnutls GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls .include post-patch: @${GREP} -rl "/etc/zabbix" ${WRKSRC} \ | ${XARGS} ${REINPLACE_CMD} -e 's#/usr/local/etc#${ETCDIR}#g' @${REINPLACE_CMD} -e 's#/usr/sbin/fping#${LOCALBASE}/sbin/fping#g' \ ${WRKSRC}/conf/zabbix_*.conf \ ${WRKSRC}/src/zabbix_proxy/proxy.c \ ${WRKSRC}/src/zabbix_server/server.c .if ${ZABBIX_BUILD} == "server" @${REINPLACE_CMD} -e 's#/tmp/zabbix_server.pid#/var/run/zabbix/zabbix_server.pid#g' \ ${WRKSRC}/conf/zabbix_server.conf \ ${WRKSRC}/src/zabbix_server/server.c .endif .if ${ZABBIX_BUILD} == "proxy" @${REINPLACE_CMD} -e 's#/tmp/zabbix_proxy.pid#/var/run/zabbix/zabbix_proxy.pid#g' \ ${WRKSRC}/conf/zabbix_proxy.conf \ ${WRKSRC}/src/zabbix_proxy/proxy.c .endif .if ${ZABBIX_BUILD} == "agent" @${REINPLACE_CMD} -e 's#/tmp/zabbix_agentd.pid#/var/run/zabbix/zabbix_agentd.pid#g' \ ${WRKSRC}/conf/zabbix_agentd.conf \ ${WRKSRC}/src/zabbix_agent/zabbix_agentd.c .endif .if ${ZABBIX_BUILD} == "java" @${REINPLACE_CMD} -e 's#/tmp/zabbix_java.pid#/var/run/zabbix/zabbix_java.pid#g' \ ${WRKSRC}/src/zabbix_java/settings.sh .endif .if ${ZABBIX_BUILD} != "agent" . for d in mysql oracle postgresql sqlite3 @${REINPLACE_CMD} \ -e 's|/usr/bin/traceroute|/usr/sbin/traceroute|g' \ -e 's|sudo /usr/bin/nmap|sudo ${LOCALBASE}/bin/nmap|g' \ ${WRKSRC}/database/${d}/data.sql . endfor .endif @${FIND} ${WRKSRC} -type f \( -name '*.bak' -or -name '*.orig' \) \ -exec ${RM} {} + pre-configure: @echo "ac_cv_env_PKG_CONFIG_set=${LOCALBASE}/bin/pkgconf" > ${WRKSRC}/config.cache post-install: .if ${ZABBIX_BUILD} == "java" ${MV} ${STAGEDIR}${PREFIX}/sbin/zabbix_java/settings.sh \ ${STAGEDIR}${PREFIX}/sbin/zabbix_java/settings.sh.sample @${MKDIR} ${STAGEDIR}/var/run/zabbix .endif .if ${ZABBIX_BUILD} != "agent" && ${ZABBIX_BUILD} != "java" ${MKDIR} ${STAGEDIR}${DATADIR}/${ZABBIX_BUILD:Q}/database @${RM} ${WRKSRC}/database/*/Makefile* (cd ${WRKSRC}/database/ && \ ${COPYTREE_SHARE} "mysql oracle postgresql sqlite3" \ ${STAGEDIR}${DATADIR}/${ZABBIX_BUILD:Q}/database/) ${MV} ${STAGEDIR}${ETCDIR}/zabbix_${ZABBIX_BUILD}.conf \ ${STAGEDIR}${ETCDIR}/zabbix_${ZABBIX_BUILD}.conf.sample .endif .if ${ZABBIX_BUILD} == "agent" ${MV} ${STAGEDIR}${ETCDIR}/zabbix_${ZABBIX_BUILD}d.conf \ ${STAGEDIR}${ETCDIR}/zabbix_${ZABBIX_BUILD}d.conf.sample .endif .if ${ZABBIX_BUILD} == "proxy" ${MV} ${STAGEDIR}${LOCALBASE}/bin/zabbix_js \ ${STAGEDIR}${LOCALBASE}/bin/zabbix_proxy_js .endif .else # frontend .include .endif .include diff --git a/net-mgmt/zabbix6-server/pkg-plist b/net-mgmt/zabbix6-server/pkg-plist index 06d85e235292..855b20d2e697 100644 --- a/net-mgmt/zabbix6-server/pkg-plist +++ b/net-mgmt/zabbix6-server/pkg-plist @@ -1,37 +1,39 @@ %%DATADIR%%/%%ZABBIX_BUILD%%/database/mysql/data.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/mysql/double.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/mysql/history_pk_prepare.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/mysql/images.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/mysql/schema.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/oracle/data.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/oracle/double.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/oracle/history_pk_prepare.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/oracle/images.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/oracle/schema.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/data.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/double.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/history_pk_prepare.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/images.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/schema.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/timescaledb.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/tsdb_history_pk_upgrade_no_compression/history_pk.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/tsdb_history_pk_upgrade_no_compression/history_pk_log.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/tsdb_history_pk_upgrade_no_compression/history_pk_str.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/tsdb_history_pk_upgrade_no_compression/history_pk_text.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/tsdb_history_pk_upgrade_no_compression/history_pk_uint.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/tsdb_history_pk_upgrade_with_compression/history_pk.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/tsdb_history_pk_upgrade_with_compression/history_pk_log.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/tsdb_history_pk_upgrade_with_compression/history_pk_str.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/tsdb_history_pk_upgrade_with_compression/history_pk_text.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/postgresql/tsdb_history_pk_upgrade_with_compression/history_pk_uint.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/sqlite3/data.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/sqlite3/images.sql %%DATADIR%%/%%ZABBIX_BUILD%%/database/sqlite3/schema.sql @sample %%ETCDIR%%/zabbix_%%ZABBIX_BUILD%%.conf.sample +%%PROXY%%bin/zabbix_proxy_js %%PROXY%%@dir %%ETCDIR%%/zabbix_proxy.conf.d +%%SERVER%%bin/zabbix_js %%SERVER%%@dir %%ETCDIR%%/zabbix_server.conf.d %%SERVER%%@dir %%ETCDIR%%/zabbix/alertscripts man/man8/zabbix_%%ZABBIX_BUILD%%.8.gz sbin/zabbix_%%ZABBIX_BUILD%% @dir %%ETCDIR%%/zabbix/externalscripts @dir lib/modules