summaryrefslogtreecommitdiff
path: root/var/spack/repos/builtin/packages/camp/package.py
diff options
context:
space:
mode:
Diffstat (limited to 'var/spack/repos/builtin/packages/camp/package.py')
-rw-r--r--var/spack/repos/builtin/packages/camp/package.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/camp/package.py b/var/spack/repos/builtin/packages/camp/package.py
index bca4754e61..8f40f6b295 100644
--- a/var/spack/repos/builtin/packages/camp/package.py
+++ b/var/spack/repos/builtin/packages/camp/package.py
@@ -3,9 +3,19 @@
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+import glob
+
from spack.package import *
+def hip_repair_options(options, spec):
+ # there is only one dir like this, but the version component is unknown
+ options.append(
+ "-DHIP_CLANG_INCLUDE_PATH="
+ + glob.glob("{}/lib/clang/*/include".format(spec["llvm-amdgpu"].prefix))[0]
+ )
+
+
class Camp(CMakePackage, CudaPackage, ROCmPackage):
"""
Compiler agnostic metaprogramming library providing concepts,
@@ -19,6 +29,7 @@ class Camp(CMakePackage, CudaPackage, ROCmPackage):
maintainers = ["trws"]
version("main", branch="main", submodules="True")
+ version("2022.03.2", sha256="bc4aaeacfe8f2912e28f7a36fc731ab9e481bee15f2c6daf0cb208eed3f201eb")
version("2022.03.0", sha256="e9090d5ee191ea3a8e36b47a8fe78f3ac95d51804f1d986d931e85b8f8dad721")
version("0.3.0", sha256="129431a049ca5825443038ad5a37a86ba6d09b2618d5fe65d35f83136575afdb")
version("0.2.3", sha256="58a0f3bd5eadb588d7dc83f3d050aff8c8db639fc89e8d6553f9ce34fc2421a7")
@@ -27,6 +38,7 @@ class Camp(CMakePackage, CudaPackage, ROCmPackage):
# TODO: figure out gtest dependency and then set this default True.
variant("tests", default=False, description="Build tests")
+ variant("openmp", default=False, description="Build OpenMP support")
depends_on("cub", when="+cuda")
@@ -39,6 +51,7 @@ class Camp(CMakePackage, CudaPackage, ROCmPackage):
options.append("-DBLT_SOURCE_DIR={0}".format(spec["blt"].prefix))
+ options.append("-DENABLE_OPENMP=" + ("On" if "+openmp" in spec else "Off"))
if "+cuda" in spec:
options.extend(
["-DENABLE_CUDA=ON", "-DCUDA_TOOLKIT_ROOT_DIR=%s" % (spec["cuda"].prefix)]
@@ -55,6 +68,9 @@ class Camp(CMakePackage, CudaPackage, ROCmPackage):
if "+rocm" in spec:
options.extend(["-DENABLE_HIP=ON", "-DHIP_ROOT_DIR={0}".format(spec["hip"].prefix)])
+
+ hip_repair_options(options, spec)
+
archs = self.spec.variants["amdgpu_target"].value
if archs != "none":
arch_str = ",".join(archs)