summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorDavid Boehme <boehme3@llnl.gov>2022-07-27 14:38:54 -0700
committerGitHub <noreply@github.com>2022-07-27 15:38:54 -0600
commit075dd648833fccce52de4d9ad998e07b807f7b44 (patch)
tree2468e001536141366261cd539b0c97baa4965cf9 /var
parent5bd44a795c76a61f0f9fbfeedcf7e917a0bf40b0 (diff)
downloadspack-075dd648833fccce52de4d9ad998e07b807f7b44.tar.gz
spack-075dd648833fccce52de4d9ad998e07b807f7b44.tar.bz2
spack-075dd648833fccce52de4d9ad998e07b807f7b44.tar.xz
spack-075dd648833fccce52de4d9ad998e07b807f7b44.zip
Add Caliper v2.8.0 and rocm support (#31632)
* Add Caliper v2.8.0 * Add conflict for +rocm+cuda
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/caliper/package.py41
1 files changed, 23 insertions, 18 deletions
diff --git a/var/spack/repos/builtin/packages/caliper/package.py b/var/spack/repos/builtin/packages/caliper/package.py
index e09c9d3bb6..1e7f15c4da 100644
--- a/var/spack/repos/builtin/packages/caliper/package.py
+++ b/var/spack/repos/builtin/packages/caliper/package.py
@@ -11,7 +11,7 @@ from llnl.util import tty
from spack.package import *
-class Caliper(CMakePackage, CudaPackage):
+class Caliper(CMakePackage, CudaPackage, ROCmPackage):
"""Caliper is a program instrumentation and performance measurement
framework. It is designed as a performance analysis toolbox in a
library, allowing one to bake performance analysis capabilities
@@ -20,7 +20,7 @@ class Caliper(CMakePackage, CudaPackage):
homepage = "https://github.com/LLNL/Caliper"
git = "https://github.com/LLNL/Caliper.git"
- url = "https://github.com/LLNL/Caliper/archive/v2.7.0.tar.gz"
+ url = "https://github.com/LLNL/Caliper/archive/v2.8.0.tar.gz"
tags = ['e4s', 'radiuss']
maintainers = ["daboehme"]
@@ -28,6 +28,7 @@ class Caliper(CMakePackage, CudaPackage):
test_requires_compiler = True
version('master', branch='master')
+ version('2.8.0', sha256='17807b364b5ac4b05997ead41bd173e773f9a26ff573ff2fe61e0e70eab496e4')
version('2.7.0', sha256='b3bf290ec2692284c6b4f54cc0c507b5700c536571d3e1a66e56626618024b2b')
version('2.6.0', sha256='6efcd3e4845cc9a6169e0d934840766b12182c6d09aa3ceca4ae776e23b6360f')
version('2.5.0', sha256='d553e60697d61c53de369b9ca464eb30710bda90fba9671201543b64eeac943c')
@@ -85,9 +86,11 @@ class Caliper(CMakePackage, CudaPackage):
depends_on('python', type='build')
# sosflow support not yet in 2.0
- conflicts('+sosflow', '@2.0.0:2.5')
+ conflicts('+sosflow', '@2.0.0:2.8')
conflicts('+adiak', '@:2.1')
conflicts('+libdw', '@:2.4')
+ conflicts('+rocm', '@:2.7')
+ conflicts('+rocm+cuda')
patch('for_aarch64.patch', when='target=aarch64:')
@@ -99,16 +102,20 @@ class Caliper(CMakePackage, CudaPackage):
spec['python'].command.path),
'-DBUILD_TESTING=Off',
'-DBUILD_DOCS=Off',
- '-DBUILD_SHARED_LIBS=%s' % ('On' if '+shared' in spec else 'Off'),
- '-DWITH_ADIAK=%s' % ('On' if '+adiak' in spec else 'Off'),
- '-DWITH_GOTCHA=%s' % ('On' if '+gotcha' in spec else 'Off'),
- '-DWITH_PAPI=%s' % ('On' if '+papi' in spec else 'Off'),
- '-DWITH_LIBDW=%s' % ('On' if '+libdw' in spec else 'Off'),
- '-DWITH_LIBPFM=%s' % ('On' if '+libpfm' in spec else 'Off'),
- '-DWITH_SOSFLOW=%s' % ('On' if '+sosflow' in spec else 'Off'),
- '-DWITH_SAMPLER=%s' % ('On' if '+sampler' in spec else 'Off'),
- '-DWITH_MPI=%s' % ('On' if '+mpi' in spec else 'Off'),
- '-DWITH_FORTRAN=%s' % ('On' if '+fortran' in spec else 'Off')
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define_from_variant('WITH_ADIAK', 'adiak'),
+ self.define_from_variant('WITH_GOTCHA', 'gotcha'),
+ self.define_from_variant('WITH_PAPI', 'papi'),
+ self.define_from_variant('WITH_LIBDW', 'libdw'),
+ self.define_from_variant('WITH_LIBPFM', 'libpfm'),
+ self.define_from_variant('WITH_SOSFLOW', 'sosflow'),
+ self.define_from_variant('WITH_SAMPLER', 'sampler'),
+ self.define_from_variant('WITH_MPI', 'mpi'),
+ self.define_from_variant('WITH_FORTRAN', 'fortran'),
+ self.define_from_variant('WITH_CUPTI', 'cuda'),
+ self.define_from_variant('WITH_NVTX', 'cuda'),
+ self.define_from_variant('WITH_ROCTRACER', 'rocm'),
+ self.define_from_variant('WITH_ROCTX', 'rocm')
]
if '+papi' in spec:
@@ -137,11 +144,9 @@ class Caliper(CMakePackage, CudaPackage):
# technically only works with cuda 10.2+, otherwise cupti is in
# ${CUDA_TOOLKIT_ROOT_DIR}/extras/CUPTI
args.append('-DCUPTI_PREFIX=%s' % spec['cuda'].prefix)
- args.append('-DWITH_NVTX=On')
- args.append('-DWITH_CUPTI=On')
- else:
- args.append('-DWITH_NVTX=Off')
- args.append('-DWITH_CUPTI=Off')
+
+ if '+rocm' in spec:
+ args.append('-DROCM_PREFIX=%s' % spec['hsa-rocr-dev'].prefix)
return args