Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions repos/spack_repo/builtin/packages/blt/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,13 @@ class Blt(Package):
version("0.2.5", sha256="3a000f60194e47b3e5623cc528cbcaf88f7fea4d9620b3c7446ff6658dc582a5")
version("0.2.0", sha256="c0cadf1269c2feb189e398a356e3c49170bc832df95e5564e32bdbb1eb0fa1b3")

# https://github.com/google/googletest/pull/4798
patch(
"https://github.com/LLNL/blt/commit/5ff55b519fc8d5216b07edaf301e2d2bf328021e.patch?full_index=1",
sha256="116702b89d01e022546911fe0b823afa99a6b37a35077055141ad5d480508422",
when="@0.7.1",
)

depends_on("c", type="build") # generated
depends_on("cxx", type="build") # generated
depends_on("fortran", type="build") # generated
Expand Down
49 changes: 48 additions & 1 deletion repos/spack_repo/builtin/packages/caliper/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,15 @@
# SPDX-License-Identifier: (Apache-2.0 OR MIT)

import os
import re
import socket
import sys

from spack_repo.builtin.build_systems.cached_cmake import (
CachedCMakePackage,
cmake_cache_option,
cmake_cache_path,
cmake_cache_string,
)
from spack_repo.builtin.build_systems.cuda import CudaPackage
from spack_repo.builtin.build_systems.rocm import ROCmPackage
Expand Down Expand Up @@ -95,7 +97,9 @@ class Caliper(CachedCMakePackage, CudaPackage, ROCmPackage):

conflicts("+rocm+cuda")
# Legacy nvtx is only supported until cuda@12.8, newer cuda only provides nvtx3.
conflicts("^cuda@12.9:", "@:2.12.1")
conflicts("^cuda@12.9:", "@:2.13.1")
# rocprofiler-sdk is only supported since rocm@6.2.4.
conflicts("^llvm-amdgpu@:6.2.3", "@2.14: +rocm")

patch("libunwind.patch", when="@:2.13")
patch(
Expand Down Expand Up @@ -154,11 +158,54 @@ def initconfig_hardware_entries(self):
entries.append(cmake_cache_option("WITH_NVTX", True))
entries.append(cmake_cache_path("CUDA_TOOLKIT_ROOT_DIR", spec["cuda"].prefix))
entries.append(cmake_cache_path("CUPTI_PREFIX", spec["cuda"].prefix))

# CUDA configuration from cuda_for_radiuss_projects
cuda_flags = []
if not spec.satisfies("cuda_arch=none"):
cuda_archs = ";".join(spec.variants["cuda_arch"].value)
entries.append(cmake_cache_string("CMAKE_CUDA_ARCHITECTURES", cuda_archs))

# gcc-toolchain support
gcc_toolchain_regex = re.compile(".*gcc-toolchain.*")
using_toolchain = list(
filter(gcc_toolchain_regex.match, spec.compiler_flags["cxxflags"])
)
if using_toolchain:
cuda_flags.append("-Xcompiler {}".format(using_toolchain[0]))

if cuda_flags:
entries.append(cmake_cache_string("CMAKE_CUDA_FLAGS", " ".join(cuda_flags)))
else:
entries.append(cmake_cache_option("WITH_CUPTI", False))
entries.append(cmake_cache_option("WITH_NVTX", False))

if spec.satisfies("+rocm"):
# HIP configuration from hip_for_radiuss_projects
rocm_root = spec["llvm-amdgpu"].prefix
gcc_toolchain_regex = re.compile(".*gcc-toolchain.*")
using_toolchain = list(
filter(gcc_toolchain_regex.match, spec.compiler_flags["cxxflags"])
)
hip_link_flags = ""

if using_toolchain:
gcc_prefix = using_toolchain[0]
entries.append(
cmake_cache_string("HIP_CLANG_FLAGS", "--gcc-toolchain={0}".format(gcc_prefix))
)
entries.append(
cmake_cache_string(
"CMAKE_EXE_LINKER_FLAGS",
hip_link_flags + " -Wl,-rpath={0}/lib64".format(gcc_prefix),
)
)
else:
entries.append(
cmake_cache_string(
"CMAKE_EXE_LINKER_FLAGS", "-Wl,-rpath={0}/llvm/lib/".format(rocm_root)
)
)

if spec.satisfies("@2.14:"):
entries.append(cmake_cache_option("WITH_ROCPROFILER", True))
entries.append(cmake_cache_option("WITH_ROCTRACER", False))
Expand Down
61 changes: 57 additions & 4 deletions repos/spack_repo/builtin/packages/care/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)

import re
import socket

from spack_repo.builtin.build_systems.cached_cmake import (
Expand Down Expand Up @@ -32,6 +33,12 @@ class Care(CachedCMakePackage, CudaPackage, ROCmPackage):

version("develop", branch="develop", submodules=False)
version("master", branch="master", submodules=False)
version(
"0.15.3",
tag="v0.15.3",
commit="132252376aa460fa900d034f7b018d3a169afce6",
submodules=False,
)
version(
"0.15.2",
tag="v0.15.2",
Expand Down Expand Up @@ -149,15 +156,17 @@ class Care(CachedCMakePackage, CudaPackage, ROCmPackage):

depends_on("umpire")
depends_on("umpire+mpi", when="+mpi")
depends_on("umpire@2025.09:", when="@0.15.2:")
depends_on("umpire@2025.12:", when="@0.15.3:")
depends_on("umpire@2025.09", when="@0.15.2")
depends_on("umpire@2025.03", when="@0.15.0")
depends_on("umpire@2024.07.0", when="@0.13.2")
depends_on("umpire@2024.02.1", when="@0.13.0")
depends_on("umpire@2024.02.0", when="@0.12.0")
depends_on("umpire@2022.10.0", when="@0.10.0")

depends_on("raja")
depends_on("raja@2025.09:", when="@0.15.2:")
depends_on("raja@2025.12:", when="@0.15.3:")
depends_on("raja@2025.09", when="@0.15.2")
depends_on("raja@2025.03", when="@0.15.0")
depends_on("raja@2024.07.0", when="@0.13.2")
depends_on("raja@2024.02.2", when="@0.13.1")
Expand All @@ -167,7 +176,8 @@ class Care(CachedCMakePackage, CudaPackage, ROCmPackage):

depends_on("chai+enable_pick", when="@:0.14.99")
depends_on("chai+raja")
depends_on("chai@2025.09.1:", when="@0.15.2:")
depends_on("chai@2025.12:", when="@0.15.3:")
depends_on("chai@2025.09.1", when="@0.15.2")
depends_on("chai@2025.03", when="@0.15.0")
depends_on("chai@2024.07.0", when="@0.13.2")
depends_on("chai@2024.02.2", when="@0.13.1")
Expand Down Expand Up @@ -260,20 +270,63 @@ def initconfig_hardware_entries(self):
entries.append(cmake_cache_option("CUDA_SEPARABLE_COMPILATION", True))
entries.append(cmake_cache_string("NVTOOLSEXT_DIR", spec["cuda"].prefix))
entries.append(cmake_cache_string("CUB_DIR", spec["cub"].prefix))

# CUDA configuration from cuda_for_radiuss_projects
cuda_flags = []
if not spec.satisfies("cuda_arch=none"):
cuda_archs = ";".join(spec.variants["cuda_arch"].value)
entries.append(cmake_cache_string("CMAKE_CUDA_ARCHITECTURES", cuda_archs))

# gcc-toolchain support
gcc_toolchain_regex = re.compile(".*gcc-toolchain.*")
using_toolchain = list(
filter(gcc_toolchain_regex.match, spec.compiler_flags["cxxflags"])
)
if using_toolchain:
cuda_flags.append("-Xcompiler {}".format(using_toolchain[0]))

if cuda_flags:
entries.append(cmake_cache_string("CMAKE_CUDA_FLAGS", " ".join(cuda_flags)))
else:
entries.append(cmake_cache_option("ENABLE_CUDA", False))

if spec.satisfies("+rocm"):
entries.append(cmake_cache_option("ENABLE_HIP", True))

# HIP configuration from hip_for_radiuss_projects
rocm_root = spec["llvm-amdgpu"].prefix
gcc_toolchain_regex = re.compile(".*gcc-toolchain.*")
using_toolchain = list(
filter(gcc_toolchain_regex.match, spec.compiler_flags["cxxflags"])
)
hip_link_flags = ""

if using_toolchain:
gcc_prefix = using_toolchain[0]
entries.append(
cmake_cache_string("HIP_CLANG_FLAGS", "--gcc-toolchain={0}".format(gcc_prefix))
)
entries.append(
cmake_cache_string(
"CMAKE_EXE_LINKER_FLAGS",
hip_link_flags + " -Wl,-rpath={0}/lib64".format(gcc_prefix),
)
)
else:
entries.append(
cmake_cache_string(
"CMAKE_EXE_LINKER_FLAGS", "-Wl,-rpath={0}/llvm/lib/".format(rocm_root)
)
)
else:
entries.append(cmake_cache_option("ENABLE_HIP", False))

return entries

def initconfig_mpi_entries(self):
spec = self.spec

entries = super(Care, self).initconfig_mpi_entries()

entries.append(cmake_cache_option("ENABLE_MPI", spec.satisfies("+mpi")))

return entries
Expand Down
58 changes: 55 additions & 3 deletions repos/spack_repo/builtin/packages/chai/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)

import re
import socket

from spack_repo.builtin.build_systems.cached_cmake import (
Expand Down Expand Up @@ -31,6 +32,12 @@ class Chai(CachedCMakePackage, CudaPackage, ROCmPackage):
license("BSD-3-Clause")

version("develop", branch="develop", submodules=False)
version(
"2025.12.0",
tag="v2025.12.0",
commit="26d5646707e1848b0524379b12a7716e4a830a27",
submodules=False,
)
version(
"2025.09.1",
tag="v2025.09.1",
Expand Down Expand Up @@ -179,7 +186,8 @@ class Chai(CachedCMakePackage, CudaPackage, ROCmPackage):
conflicts("^blt@:0.3.6", when="+rocm")

depends_on("umpire")
depends_on("umpire@2025.09:", when="@2025.09:")
depends_on("umpire@2025.12:", when="@2025.12:")
depends_on("umpire@2025.09", when="@2025.09")
depends_on("umpire@2025.03", when="@2025.03")
depends_on("umpire@2024.07.0", when="@2024.07.0")
depends_on("umpire@2024.02.1", when="@2024.02.1")
Expand Down Expand Up @@ -209,7 +217,8 @@ class Chai(CachedCMakePackage, CudaPackage, ROCmPackage):
with when("+raja"):
depends_on("raja~openmp", when="~openmp")
depends_on("raja+openmp", when="+openmp")
depends_on("raja@2025.09:", when="@2025.09.0:")
depends_on("raja@2025.12:", when="@2025.12.0:")
depends_on("raja@2025.09", when="@2025.09.0")
depends_on("raja@2025.03.2", when="@2025.03.1")
depends_on("raja@2025.03.0", when="@2025.03.0")
depends_on("raja@2024.07.0", when="@2024.07.0")
Expand Down Expand Up @@ -282,20 +291,63 @@ def initconfig_hardware_entries(self):
if spec.satisfies("+separable_compilation"):
entries.append(cmake_cache_option("CMAKE_CUDA_SEPARABLE_COMPILATION", True))
entries.append(cmake_cache_option("CUDA_SEPARABLE_COMPILATION", True))

# CUDA configuration from cuda_for_radiuss_projects
cuda_flags = []
if not spec.satisfies("cuda_arch=none"):
cuda_archs = ";".join(spec.variants["cuda_arch"].value)
entries.append(cmake_cache_string("CMAKE_CUDA_ARCHITECTURES", cuda_archs))

# gcc-toolchain support
gcc_toolchain_regex = re.compile(".*gcc-toolchain.*")
using_toolchain = list(
filter(gcc_toolchain_regex.match, spec.compiler_flags["cxxflags"])
)
if using_toolchain:
cuda_flags.append("-Xcompiler {}".format(using_toolchain[0]))

if cuda_flags:
entries.append(cmake_cache_string("CMAKE_CUDA_FLAGS", " ".join(cuda_flags)))
else:
entries.append(cmake_cache_option("ENABLE_CUDA", False))

if spec.satisfies("+rocm"):
entries.append(cmake_cache_option("ENABLE_HIP", True))

# HIP configuration from hip_for_radiuss_projects
rocm_root = spec["llvm-amdgpu"].prefix
gcc_toolchain_regex = re.compile(".*gcc-toolchain.*")
using_toolchain = list(
filter(gcc_toolchain_regex.match, spec.compiler_flags["cxxflags"])
)
hip_link_flags = ""

if using_toolchain:
gcc_prefix = using_toolchain[0]
entries.append(
cmake_cache_string("HIP_CLANG_FLAGS", "--gcc-toolchain={0}".format(gcc_prefix))
)
entries.append(
cmake_cache_string(
"CMAKE_EXE_LINKER_FLAGS",
hip_link_flags + " -Wl,-rpath={0}/lib64".format(gcc_prefix),
)
)
else:
entries.append(
cmake_cache_string(
"CMAKE_EXE_LINKER_FLAGS", "-Wl,-rpath={0}/llvm/lib/".format(rocm_root)
)
)
else:
entries.append(cmake_cache_option("ENABLE_HIP", False))

return entries

def initconfig_mpi_entries(self):
spec = self.spec

entries = super(Chai, self).initconfig_mpi_entries()

entries.append(cmake_cache_option("ENABLE_MPI", spec.satisfies("+mpi")))

return entries
Expand Down
Loading
Loading