<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/1de455f1174288718996f44322eab9e2d83c6b0c">https://github.com/macports/macports-ports/commit/1de455f1174288718996f44322eab9e2d83c6b0c</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 1de455f1174 bind9: restore atomics.patch
</span>1de455f1174 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 1de455f1174288718996f44322eab9e2d83c6b0c
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Fri Dec 13 04:35:56 2024 +1100
<span style='display:block; white-space:pre;color:#404040;'> bind9: restore atomics.patch
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Closes: https://trac.macports.org/ticket/71522
</span>---
net/bind9/Portfile | 3 ++-
net/bind9/files/atomics.patch | 56 +++++++++++++++++++++++++++++++++++++++++++
2 files changed, 58 insertions(+), 1 deletion(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/bind9/Portfile b/net/bind9/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 4cfb3ecf3d9..ea19ffd3cb9 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/net/bind9/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/bind9/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -62,7 +62,8 @@ compiler.blacklist \
</span> # https://trac.macports.org/wiki/WimplicitFunctionDeclaration#strchr
configure.checks.implicit_function_declaration.whitelist-append strchr
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles lib_dns_Makefile.in.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles atomics.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib_dns_Makefile.in.patch \
</span> setrlimit.patch \
fix-rwlock.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/bind9/files/atomics.patch b/net/bind9/files/atomics.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..12e2a53624b
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/bind9/files/atomics.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,56 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Avoid use of const pointers with atomic_load because strictly C11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compliant compilers error on this. Using const became allowed in C17:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_459
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- lib/isc/histo.c.orig 2024-07-08 23:09:17
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ lib/isc/histo.c 2024-07-25 11:15:59
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -247,7 +247,7 @@ get_chunk(const isc_histo_t *hg, uint chunk) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static hg_bucket_t *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ get_chunk(const isc_histo_t *hg, uint chunk) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return atomic_load_acquire(&hg->chunk[chunk]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ return atomic_load_acquire((hg_chunk_t *)&hg->chunk[chunk]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static inline hg_bucket_t *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -261,7 +261,7 @@ bucket_count(const hg_bucket_t *bp) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static inline uint64_t
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-bucket_count(const hg_bucket_t *bp) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++bucket_count(hg_bucket_t *bp) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return bp == NULL ? 0 : atomic_load_relaxed(bp);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- lib/isc/netmgr/netmgr-int.h.orig 2024-07-08 23:09:17
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ lib/isc/netmgr/netmgr-int.h 2024-07-25 11:24:12
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -240,7 +240,7 @@ isc__nm_dump_active_manager(isc_nm_t *netmgr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define NMHANDLE_MAGIC ISC_MAGIC('N', 'M', 'H', 'D')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define VALID_NMHANDLE(t) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (ISC_MAGIC_VALID(t, NMHANDLE_MAGIC) && \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- atomic_load(&(t)->references) > 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ atomic_load((isc_refcount_t *)&(t)->references) > 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ typedef void (*isc__nm_closecb)(isc_nmhandle_t *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ typedef struct isc_nm_http_session isc_nm_http_session_t;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- lib/dns/xfrin.c.orig 2024-07-08 23:09:17
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ lib/dns/xfrin.c 2024-07-25 11:43:11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -943,7 +943,7 @@ dns_xfrin_getstate(const dns_xfrin_t *xfr, const char
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-dns_xfrin_getstate(const dns_xfrin_t *xfr, const char **statestr,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++dns_xfrin_getstate(dns_xfrin_t *xfr, const char **statestr,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ bool *is_first_data_received, bool *is_ixfr) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xfrin_state_t state;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- lib/dns/include/dns/xfrin.h.orig 2024-07-08 23:09:17
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ lib/dns/include/dns/xfrin.h 2024-07-25 11:48:36
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -104,7 +104,7 @@ dns_xfrin_getstate(const dns_xfrin_t *xfr, const char
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-dns_xfrin_getstate(const dns_xfrin_t *xfr, const char **statestr,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++dns_xfrin_getstate(dns_xfrin_t *xfr, const char **statestr,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ bool *is_first_data_received, bool *is_ixfr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /*%<
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * Get the current state of the xfrin object as a character string, and whether
</span></pre><pre style='margin:0'>
</pre>