summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--var/spack/repos/builtin/packages/arborx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/arborx/trilinos14.0-kokkos-major-version.patch16
2 files changed, 18 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/arborx/package.py b/var/spack/repos/builtin/packages/arborx/package.py
index 6284bef236..e766d8897b 100644
--- a/var/spack/repos/builtin/packages/arborx/package.py
+++ b/var/spack/repos/builtin/packages/arborx/package.py
@@ -21,6 +21,7 @@ class Arborx(CMakePackage, CudaPackage, ROCmPackage):
test_requires_compiler = True
version("master", branch="master")
+ version("1.4.1", sha256="2ca828ef6615859654b233a7df17017e7cfd904982b80026ec7409eb46b77a95")
version("1.4", sha256="803a1018a6305cf3fea161172b3ada49537f59261279d91c2abbcce9492ee7af")
version("1.3", sha256="3f1e17f029a460ab99f8396e2772cec908eefc4bf3868c8828907624a2d0ce5d")
version("1.2", sha256="ed1939110b2330b7994dcbba649b100c241a2353ed2624e627a200a398096c20")
@@ -90,6 +91,7 @@ class Arborx(CMakePackage, CudaPackage, ROCmPackage):
depends_on("trilinos@13.2.0:", when="@1.2+trilinos")
depends_on("trilinos@13.4.0:", when="@1.3+trilinos")
depends_on("trilinos@14.0.0:", when="@1.4:+trilinos")
+ patch("trilinos14.0-kokkos-major-version.patch", when="@1.4+trilinos ^trilinos@14.0.0")
conflicts("~serial", when="+trilinos")
conflicts("+cuda", when="+trilinos")
diff --git a/var/spack/repos/builtin/packages/arborx/trilinos14.0-kokkos-major-version.patch b/var/spack/repos/builtin/packages/arborx/trilinos14.0-kokkos-major-version.patch
new file mode 100644
index 0000000000..6d3924b042
--- /dev/null
+++ b/var/spack/repos/builtin/packages/arborx/trilinos14.0-kokkos-major-version.patch
@@ -0,0 +1,16 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,7 +1,12 @@
+ cmake_minimum_required(VERSION 3.16)
+ project(ArborX CXX)
+
+-find_package(Kokkos 3.7.01 REQUIRED CONFIG)
++# Workaround to compile against Trilinos 14.0. That version of Trilinos does not
++# set the compatibility mode for Kokkos correctly.
++find_package(Kokkos QUIET 3.7.01 CONFIG)
++if (NOT Kokkos_FOUND)
++ find_package(Kokkos 4.0.00 REQUIRED CONFIG)
++endif()
+ message(STATUS "Found Kokkos: ${Kokkos_DIR} (version \"${Kokkos_VERSION}\")")
+ if(Kokkos_ENABLE_CUDA)
+ kokkos_check(OPTIONS CUDA_LAMBDA)