git: 0a0b8a9fe86c - main - net-mgmt/collectd5: Fix build with python 3.11

From: Nuno Teixeira <eduardo_at_FreeBSD.org>
Date: Wed, 12 Jun 2024 11:34:18 UTC
The branch main has been updated by eduardo:

URL: https://cgit.FreeBSD.org/ports/commit/?id=0a0b8a9fe86c4c4b065f0327c08f30db48c078ba

commit 0a0b8a9fe86c4c4b065f0327c08f30db48c078ba
Author:     Krzysztof <ports@bsdserwis.com>
AuthorDate: 2024-06-12 11:28:55 +0000
Commit:     Nuno Teixeira <eduardo@FreeBSD.org>
CommitDate: 2024-06-12 11:28:55 +0000

    net-mgmt/collectd5: Fix build with python 3.11
    
    While here:
    
    - Put SLURM option as broken, doesn't compile with slurm-wlm >= 21.x
      See also: https://github.com/collectd/collectd/issues/3959
    - Update VARNISH lib depends: www/varnish6 -> www/varnish7
    
    PR:             278686
---
 net-mgmt/collectd5/Makefile                  |  7 ++++---
 net-mgmt/collectd5/files/patch-src__pf.c     | 11 +++++------
 net-mgmt/collectd5/files/patch-src_cpython.h | 11 +++++++++++
 3 files changed, 20 insertions(+), 9 deletions(-)

diff --git a/net-mgmt/collectd5/Makefile b/net-mgmt/collectd5/Makefile
index cd679679e3e6..4b570d907cd4 100644
--- a/net-mgmt/collectd5/Makefile
+++ b/net-mgmt/collectd5/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	collectd
 PORTVERSION=	5.12.0
-PORTREVISION=	12
+PORTREVISION=	13
 CATEGORIES=	net-mgmt
 MASTER_SITES=	https://storage.googleapis.com/collectd-tarballs/
 PKGNAMESUFFIX=	5
@@ -71,7 +71,7 @@ SNMP_DESC=		Enable SNMP plugin
 STATSD_DESC=		Enable statsd plugin
 TOKYOTYRANT_DESC=	Enable tokyotyrant plugin
 TSDB_DESC=		Enable write_tsdb plugin
-VARNISH_DESC=		Enable varnish 6.x cache statistics
+VARNISH_DESC=		Enable varnish 7.x cache statistics
 VIRT_DESC=		Enable libvirt plugin (requires XML)
 XML_DESC=		Enable XML plugins
 ZOOKEEPER_DESC=		Enable zookeeper plugin
@@ -242,6 +242,7 @@ SIGROK_CONFIGURE_ENABLE=	sigrok
 SIGROK_USES=			gettext-runtime
 SIGROK_BROKEN=			working only with sigrok < 0.4
 
+SLURM_BROKEN=			Does not compile with slurm-wlm >= 21.x
 SLURM_LIB_DEPENDS=		libslurm.so:sysutils/slurm-wlm
 SLURM_CONFIGURE_ENABLE=		slurm
 SLURM_CONFIGURE_WITH=		libslurm=${LOCALBASE}
@@ -259,7 +260,7 @@ TOKYOTYRANT_CONFIGURE_WITH=	libtokyotyrant=${LOCALBASE}
 
 TSDB_CONFIGURE_ENABLE=	write_tsdb
 
-VARNISH_LIB_DEPENDS=		libvarnishapi.so:www/varnish6
+VARNISH_LIB_DEPENDS=		libvarnishapi.so:www/varnish7
 VARNISH_CONFIGURE_ENABLE=	varnish
 
 VIRT_IMPLIES=		XML
diff --git a/net-mgmt/collectd5/files/patch-src__pf.c b/net-mgmt/collectd5/files/patch-src__pf.c
index 136a8d307c6b..1c046465d4c4 100644
--- a/net-mgmt/collectd5/files/patch-src__pf.c
+++ b/net-mgmt/collectd5/files/patch-src__pf.c
@@ -4,9 +4,7 @@ Date:   Tue Nov 7 03:35:47 2023 -0700
 
     FreeBSD's PF has a new interface so leverage libpfctl to access it so the right interface is used depending on the version
 
-diff --git src/pf.c src/pf.c
-index 9681d366..eef9540d 100644
---- src/pf.c
+--- src/pf.c.orig	2020-07-20 09:50:14 UTC
 +++ src/pf.c
 @@ -35,6 +35,9 @@
  #endif
@@ -18,12 +16,12 @@ index 9681d366..eef9540d 100644
  
  #ifndef FCNT_NAMES
  #if FCNT_MAX != 3
-@@ -76,6 +79,56 @@ static void pf_submit(char const *type, char const *type_instance, uint64_t val,
+@@ -76,7 +79,57 @@ static void pf_submit(char const *type, char const *ty
    plugin_dispatch_values(&vl);
  } /* void pf_submit */
  
 +#ifdef __FreeBSD__
-+static int pf_read(void) {
+ static int pf_read(void) {
 +  struct pfctl_status *state;
 +  int fd;
 +
@@ -72,9 +70,10 @@ index 9681d366..eef9540d 100644
 +  return 0;
 +} /* int pf_read */
 +#else
- static int pf_read(void) {
++static int pf_read(void) {
    struct pf_status state;
    int fd;
+   int status;
 @@ -119,5 +172,6 @@ static int pf_read(void) {
  
    return 0;
diff --git a/net-mgmt/collectd5/files/patch-src_cpython.h b/net-mgmt/collectd5/files/patch-src_cpython.h
new file mode 100644
index 000000000000..78fc41236fb8
--- /dev/null
+++ b/net-mgmt/collectd5/files/patch-src_cpython.h
@@ -0,0 +1,11 @@
+--- src/cpython.h.orig	2020-07-20 09:50:14 UTC
++++ src/cpython.h
+@@ -26,7 +26,7 @@
+ 
+ /* Some python versions don't include this by default. */
+ 
+-#include <longintrepr.h>
++#include <python3.11/cpython/longintrepr.h>
+ 
+ /* These two macros are basically Py_BEGIN_ALLOW_THREADS and
+  * Py_BEGIN_ALLOW_THREADS