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)