From 4a20bda2b06546c7bae2c3f145fa1fc817be446a Mon Sep 17 00:00:00 2001 From: Richard Berger Date: Tue, 17 Feb 2026 15:09:46 -0700 Subject: [PATCH 1/2] kokkos: bring back deprecated_code variant --- .../builtin/packages/kokkos/package.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/repos/spack_repo/builtin/packages/kokkos/package.py b/repos/spack_repo/builtin/packages/kokkos/package.py index dde2bb59fce..a42a3d085b3 100644 --- a/repos/spack_repo/builtin/packages/kokkos/package.py +++ b/repos/spack_repo/builtin/packages/kokkos/package.py @@ -300,6 +300,14 @@ class Kokkos(CMakePackage, CudaPackage, ROCmPackage): variant("cxxstd", default="17", values=("14", "17", "20"), when="@3") variant("cxxstd", default="17", values=("17", "20", "23"), when="@4") variant("cxxstd", default="20", values=("20", "23"), when="@5:") + + variant( + "deprecated_code", + default=False, + when="@5:", + description="Whether to enable deprecated code", + ) + variant("pic", default=False, description="Build position independent code") conflicts("+cuda", when="cxxstd=17 ^cuda@:10") @@ -404,6 +412,14 @@ def cmake_args(self): from_variant("Kokkos_ENABLE_COMPILE_AS_CMAKE_LANGUAGE", "cmake_lang"), ] + if spec.satisfies("@5: +deprecated_code"): + if spec.version == Version("develop"): + highest = max(v for v in self.versions if not v.isdevelop()) + major_version = int(str(highest.up_to(1))) + else: + major_version = int(str(spec.version.up_to(1))) + options.append(self.define(f"Kokkos_ENABLE_DEPRECATED_CODE_{major_version-1}", True)) + spack_microarches = [] if spec.satisfies("+cuda"): cuda_arch = spec.variants["cuda_arch"].value From 0823a5a7084d192bd25e81c3d944a24d35a0315d Mon Sep 17 00:00:00 2001 From: Richard Berger Date: Sat, 21 Feb 2026 08:54:05 -0700 Subject: [PATCH 2/2] kokkos: only allow current version deprecations to be toggled --- repos/spack_repo/builtin/packages/kokkos/package.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/repos/spack_repo/builtin/packages/kokkos/package.py b/repos/spack_repo/builtin/packages/kokkos/package.py index a42a3d085b3..00740636744 100644 --- a/repos/spack_repo/builtin/packages/kokkos/package.py +++ b/repos/spack_repo/builtin/packages/kokkos/package.py @@ -303,7 +303,7 @@ class Kokkos(CMakePackage, CudaPackage, ROCmPackage): variant( "deprecated_code", - default=False, + default=True, when="@5:", description="Whether to enable deprecated code", ) @@ -418,7 +418,7 @@ def cmake_args(self): major_version = int(str(highest.up_to(1))) else: major_version = int(str(spec.version.up_to(1))) - options.append(self.define(f"Kokkos_ENABLE_DEPRECATED_CODE_{major_version-1}", True)) + options.append(self.define(f"Kokkos_ENABLE_DEPRECATED_CODE_{major_version}", True)) spack_microarches = [] if spec.satisfies("+cuda"):