Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 Jun 2026 07:48:26 +0000
From:      Piotr Kubaj <pkubaj@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 5c4e77204622 - main - net-p2p/aeron: add powerpc64* support
Message-ID:  <6a2a684a.21109.24a828@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by pkubaj:

URL: https://cgit.FreeBSD.org/ports/commit/?id=5c4e77204622386fc3326be92aaddcc967ed4c2b

commit 5c4e77204622386fc3326be92aaddcc967ed4c2b
Author:     Piotr Kubaj <pkubaj@FreeBSD.org>
AuthorDate: 2026-06-08 19:11:44 +0000
Commit:     Piotr Kubaj <pkubaj@FreeBSD.org>
CommitDate: 2026-06-11 07:47:58 +0000

    net-p2p/aeron: add powerpc64* support
    
    Backport of upstream 3a7c08365fa023b7084f6f75ac3ab39d74f7992b.
---
 net-p2p/aeron/Makefile                                   |  2 +-
 ...ch-aeron-client_src_main_c_concurrent_aeron__atomic.h | 11 +++++++++++
 ...ch-aeron-client_src_main_c_concurrent_aeron__thread.c | 11 +++++++++++
 .../patch-aeron-client_src_main_c_util_aeron__platform.h | 16 ++++++++++++++++
 ...on-client_src_main_cpp__wrapper_concurrent_Atomic64.h | 11 +++++++++++
 ...ch-aeron-client_src_main_cpp__wrapper_util_Platform.h | 13 +++++++++++++
 ...patch-aeron-client_src_main_cpp_concurrent_Atomic64.h | 11 +++++++++++
 .../patch-aeron-client_src_main_cpp_util_Platform.h      | 13 +++++++++++++
 8 files changed, 87 insertions(+), 1 deletion(-)

diff --git a/net-p2p/aeron/Makefile b/net-p2p/aeron/Makefile
index 51ad0b561d58..41549642c9eb 100644
--- a/net-p2p/aeron/Makefile
+++ b/net-p2p/aeron/Makefile
@@ -10,7 +10,7 @@ WWW=		https://aeron.io/ \
 LICENSE=	APACHE20
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
-ONLY_FOR_ARCHS=	aarch64 amd64 # limited in aeron-client/src/main/c/concurrent/aeron_atomic.h
+ONLY_FOR_ARCHS=	aarch64 amd64 powerpc64 powerpc64le # limited in aeron-client/src/main/c/concurrent/aeron_atomic.h
 
 LIB_DEPENDS=	libuuid.so:misc/libuuid # only for uuid_generate
 TEST_DEPENDS=	googletest>0:devel/googletest
diff --git a/net-p2p/aeron/files/patch-aeron-client_src_main_c_concurrent_aeron__atomic.h b/net-p2p/aeron/files/patch-aeron-client_src_main_c_concurrent_aeron__atomic.h
new file mode 100644
index 000000000000..64af74a48935
--- /dev/null
+++ b/net-p2p/aeron/files/patch-aeron-client_src_main_c_concurrent_aeron__atomic.h
@@ -0,0 +1,11 @@
+--- aeron-client/src/main/c/concurrent/aeron_atomic.h.orig	2025-11-24 19:20:55 UTC
++++ aeron-client/src/main/c/concurrent/aeron_atomic.h
+@@ -23,6 +23,8 @@
+     #include "concurrent/aeron_atomic64_gcc_x86_64.h"
+ #elif defined(AERON_COMPILER_GCC) && defined(AERON_CPU_ARM)
+     #include "concurrent/aeron_atomic64_c11.h"
++#elif defined(AERON_CPU_PPC64)
++    #include "concurrent/aeron_atomic64_c11.h"
+ #elif defined(AERON_COMPILER_MSVC) && defined(AERON_CPU_X64)
+     #include "concurrent/aeron_atomic64_msvc.h"
+ #else
diff --git a/net-p2p/aeron/files/patch-aeron-client_src_main_c_concurrent_aeron__thread.c b/net-p2p/aeron/files/patch-aeron-client_src_main_c_concurrent_aeron__thread.c
new file mode 100644
index 000000000000..b342466c2895
--- /dev/null
+++ b/net-p2p/aeron/files/patch-aeron-client_src_main_c_concurrent_aeron__thread.c
@@ -0,0 +1,11 @@
+--- aeron-client/src/main/c/concurrent/aeron_thread.c.orig	2025-11-24 19:20:55 UTC
++++ aeron-client/src/main/c/concurrent/aeron_thread.c
+@@ -336,7 +336,7 @@ void proc_yield(void)
+ 
+ void proc_yield(void)
+ {
+-#if !defined(AERON_CPU_ARM)
++#if !defined(AERON_CPU_ARM) && !defined(AERON_CPU_PPC64)
+     __asm__ volatile("pause\n": : : "memory");
+ #endif
+ }
diff --git a/net-p2p/aeron/files/patch-aeron-client_src_main_c_util_aeron__platform.h b/net-p2p/aeron/files/patch-aeron-client_src_main_c_util_aeron__platform.h
new file mode 100644
index 000000000000..aa973a28572a
--- /dev/null
+++ b/net-p2p/aeron/files/patch-aeron-client_src_main_c_util_aeron__platform.h
@@ -0,0 +1,16 @@
+--- aeron-client/src/main/c/util/aeron_platform.h.orig	2025-11-24 19:20:55 UTC
++++ aeron-client/src/main/c/util/aeron_platform.h
+@@ -48,6 +48,13 @@
+         #endif
+     #endif
+ 
++    #if defined(__powerpc64__)
++        #define AERON_CPU_PPC64 1
++        #if defined(__STDC_NO_ATOMICS__)
++            #error C11 atomics are required to compile for powerpc64!
++        #endif
++    #endif
++
+ #else
+     #error Unsupported compiler!
+ #endif
diff --git a/net-p2p/aeron/files/patch-aeron-client_src_main_cpp__wrapper_concurrent_Atomic64.h b/net-p2p/aeron/files/patch-aeron-client_src_main_cpp__wrapper_concurrent_Atomic64.h
new file mode 100644
index 000000000000..9304e49c196a
--- /dev/null
+++ b/net-p2p/aeron/files/patch-aeron-client_src_main_cpp__wrapper_concurrent_Atomic64.h
@@ -0,0 +1,11 @@
+--- aeron-client/src/main/cpp_wrapper/concurrent/Atomic64.h.orig	2025-11-24 19:20:55 UTC
++++ aeron-client/src/main/cpp_wrapper/concurrent/Atomic64.h
+@@ -22,6 +22,8 @@
+     #include "concurrent/atomic/Atomic64_gcc_x86_64.h"
+ #elif defined(AERON_COMPILER_GCC) && defined(AERON_CPU_ARM)
+     #include "concurrent/atomic/Atomic64_gcc_cpp11.h"
++#elif defined(AERON_COMPILER_GCC) && defined(AERON_CPU_PPC64)
++    #include "concurrent/atomic/Atomic64_gcc_cpp11.h"
+ #elif defined(AERON_COMPILER_MSVC) && defined(AERON_CPU_X64)
+     #include "concurrent/atomic/Atomic64_msvc.h"
+ #else
diff --git a/net-p2p/aeron/files/patch-aeron-client_src_main_cpp__wrapper_util_Platform.h b/net-p2p/aeron/files/patch-aeron-client_src_main_cpp__wrapper_util_Platform.h
new file mode 100644
index 000000000000..5c34ee933204
--- /dev/null
+++ b/net-p2p/aeron/files/patch-aeron-client_src_main_cpp__wrapper_util_Platform.h
@@ -0,0 +1,13 @@
+--- aeron-client/src/main/cpp_wrapper/util/Platform.h.orig	2025-11-24 19:20:55 UTC
++++ aeron-client/src/main/cpp_wrapper/util/Platform.h
+@@ -48,6 +48,10 @@
+         #endif
+     #endif
+ 
++    #if defined(__powerpc64__)
++        #define AERON_CPU_PPC64 1
++    #endif
++
+ #else
+     #error Unsupported compiler!
+ #endif
diff --git a/net-p2p/aeron/files/patch-aeron-client_src_main_cpp_concurrent_Atomic64.h b/net-p2p/aeron/files/patch-aeron-client_src_main_cpp_concurrent_Atomic64.h
new file mode 100644
index 000000000000..6d064506d5dd
--- /dev/null
+++ b/net-p2p/aeron/files/patch-aeron-client_src_main_cpp_concurrent_Atomic64.h
@@ -0,0 +1,11 @@
+--- aeron-client/src/main/cpp/concurrent/Atomic64.h.orig	2026-06-08 18:51:26 UTC
++++ aeron-client/src/main/cpp/concurrent/Atomic64.h
+@@ -22,6 +22,8 @@
+     #include "concurrent/atomic/Atomic64_gcc_x86_64.h"
+ #elif defined(AERON_COMPILER_GCC) && defined(AERON_CPU_ARM)
+     #include "concurrent/atomic/Atomic64_gcc_cpp11.h"
++#elif defined(AERON_COMPILER_GCC) && defined(AERON_CPU_PPC64)
++    #include "concurrent/atomic/Atomic64_gcc_cpp11.h"
+ #elif defined(AERON_COMPILER_MSVC) && defined(AERON_CPU_X64)
+     #include "concurrent/atomic/Atomic64_msvc.h"
+ #else
diff --git a/net-p2p/aeron/files/patch-aeron-client_src_main_cpp_util_Platform.h b/net-p2p/aeron/files/patch-aeron-client_src_main_cpp_util_Platform.h
new file mode 100644
index 000000000000..92f7897cd144
--- /dev/null
+++ b/net-p2p/aeron/files/patch-aeron-client_src_main_cpp_util_Platform.h
@@ -0,0 +1,13 @@
+--- aeron-client/src/main/cpp/util/Platform.h.orig	2026-06-08 19:08:57 UTC
++++ aeron-client/src/main/cpp/util/Platform.h
+@@ -48,6 +48,10 @@
+         #endif
+     #endif
+ 
++    #if defined(__powerpc64__)
++        #define AERON_CPU_PPC64 1
++    #endif
++
+ #else
+     #error Unsupported compiler!
+ #endif


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6a2a684a.21109.24a828>