aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurent Chardon <laurent.chardon@gmail.com>2025-03-12 01:16:12 +0000
committerVladimir Druzenko <vvd@FreeBSD.org>2025-03-12 10:43:36 +0000
commitda3c0949ffea763452de09bd8c7b5026851489dc (patch)
treecff38ea89f230695b83a722c5434804348a9752a
parent7d07ea7bee6b6827a318ef7ba93880a9033b6b2a (diff)
net/openmpi: Fix 16 byte atomic operations on amd64
Clang does not support 16 byte atomic operations without -mcx16 on amd64 Upstream issue: https://github.com/open-mpi/ompi/issues/13134 PR: 285341 MFH: 2025Q1 (cherry picked from commit 07722f6ed2aa26e76ae830cfc26341788f4b7195)
-rw-r--r--net/openmpi/Makefile10
1 files changed, 8 insertions, 2 deletions
diff --git a/net/openmpi/Makefile b/net/openmpi/Makefile
index a28b6ae2ad11..bf1706046c28 100644
--- a/net/openmpi/Makefile
+++ b/net/openmpi/Makefile
@@ -1,5 +1,6 @@
PORTNAME= openmpi
DISTVERSION= 5.0.6
+PORTREVISION= 1
CATEGORIES= net parallel
MASTER_SITES= https://download.open-mpi.org/release/open-mpi/v${PORTVERSION:R}/
@@ -40,6 +41,7 @@ CONFIGURE_ARGS+= --program-prefix= \
--with-wrapper-ldflags=-Wl,-rpath=-Wl,-rpath=${LOCALBASE}/lib/gcc${_GCC_VER}
TEST_TARGET= check
CFLAGS+= ${CFLAGS_F2018}
+PIE_UNSAFE= yes
CONFLICTS_INSTALL= openmpi4-4*
DOCSDIR= ${PREFIX}/${MPIDIR}/share/doc
@@ -48,8 +50,6 @@ BINARY_ALIAS= python3=${PYTHON_CMD}
PLIST_SUB+= MPIDIR=${MPIDIR}
PORTDOCS= *
-PIE_UNSAFE= yes
-
OPTIONS_DEFINE= AVX DEBUG DOCS IPV6 ROMIO SLURM
OPTIONS_DEFAULT= ROMIO
OPTIONS_EXCLUDE_aarch64= AVX
@@ -98,6 +98,12 @@ PLIST_SUB+= SHORTFLOAT=""
PLIST_SUB+= SHORTFLOAT="@comment "
.endif
+# clang does not support 16 byte atomic operations without -mcx16 on amd64
+# See https://github.com/open-mpi/ompi/issues/13134
+.if ${ARCH} == amd64 && ${COMPILER_TYPE} == clang
+CFLAGS+= -mcx16
+.endif
+
LIBDIR2FIX= oshmem/tools/wrappers opal/tools/wrappers \
3rd-party/openpmix ompi/tools/wrappers