Skip to content

Commit 2c56f6e

Browse files
committed
Changes to satisfy spack audit; cascading changes to ensure variant forwarding for caliper/adiak respected between 0.12.0 and 0.13.0; restrict caliper/adiak variants to 0.13.0 and newer so you do not get caliper/adiak/profiling for older axom versions
1 parent 986a6fd commit 2c56f6e

File tree

1 file changed

+20
-12
lines changed

1 file changed

+20
-12
lines changed

repos/spack_repo/builtin/packages/axom/package.py

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -140,8 +140,8 @@ class Axom(CachedCMakePackage, CudaPackage, ROCmPackage):
140140
variant("int64", default=True, description="Use 64bit integers for IndexType")
141141

142142
# variants for package dependencies
143-
variant("adiak", default=False, description="Build with adiak")
144-
variant("caliper", default=False, description="Build with caliper")
143+
variant("adiak", default=False, when="@0.13.0:", description="Build with adiak")
144+
variant("caliper", default=False, when="@0.13.0:", description="Build with caliper")
145145
variant("conduit", default=True, description="Build with conduit")
146146

147147
variant("opencascade", default=False, description="Build with opencascade")
@@ -228,26 +228,40 @@ class Axom(CachedCMakePackage, CudaPackage, ROCmPackage):
228228
depends_on("adiak")
229229
depends_on("caliper+adiak~papi")
230230

231-
with when("^adiak"):
231+
depends_on("caliper+cuda", when="+cuda")
232+
depends_on("caliper~cuda", when="~cuda")
233+
234+
depends_on("caliper+rocm", when="+rocm")
235+
depends_on("caliper~rocm", when="~rocm")
236+
237+
for dep in ["adiak", "caliper"]:
238+
depends_on(f"{dep}+mpi", when="+mpi")
239+
depends_on(f"{dep}~mpi", when="~mpi")
240+
depends_on(f"{dep}+shared", when="+shared")
241+
depends_on(f"{dep}~shared", when="~shared")
242+
243+
with when("+adiak"):
232244
for fwd in ("mpi", "shared"):
233245
depends_on(f"adiak+{fwd}", when=f"+{fwd}")
234246

235-
with when("^caliper"):
247+
with when("+caliper"):
236248
for fwd in ("cuda", "rocm", "mpi", "shared"):
237249
depends_on(f"caliper+{fwd}", when=f"+{fwd}")
238250

239251
for val in CudaPackage.cuda_arch_values:
240252
ext_cuda_dep = f"+cuda cuda_arch={val}"
241253
depends_on(f"raja {ext_cuda_dep}", when=f"+raja {ext_cuda_dep}")
242254
depends_on(f"umpire {ext_cuda_dep}", when=f"+umpire {ext_cuda_dep}")
243-
depends_on(f"caliper {ext_cuda_dep}", when=f"{ext_cuda_dep} ^caliper")
255+
depends_on(f"caliper {ext_cuda_dep}", when=f"+caliper {ext_cuda_dep}")
256+
depends_on(f"caliper {ext_cuda_dep}", when=f"+profiling {ext_cuda_dep}")
244257
depends_on(f"mfem {ext_cuda_dep}", when=f"+mfem {ext_cuda_dep}")
245258

246259
for val in ROCmPackage.amdgpu_targets:
247260
ext_rocm_dep = f"+rocm amdgpu_target={val}"
248261
depends_on(f"raja {ext_rocm_dep}", when=f"+raja {ext_rocm_dep}")
249262
depends_on(f"umpire {ext_rocm_dep}", when=f"+umpire {ext_rocm_dep}")
250-
depends_on(f"caliper {ext_rocm_dep}", when=f"{ext_rocm_dep} ^caliper")
263+
depends_on(f"caliper {ext_rocm_dep}", when=f"+caliper {ext_rocm_dep}")
264+
depends_on(f"caliper {ext_rocm_dep}", when=f"+profiling {ext_rocm_dep}")
251265
depends_on(f"mfem {ext_rocm_dep}", when=f"+mfem {ext_rocm_dep}")
252266

253267
depends_on("rocprim", when="+rocm")
@@ -280,8 +294,6 @@ class Axom(CachedCMakePackage, CudaPackage, ROCmPackage):
280294
# -----------------------------------------------------------------------
281295
# Hard inter-component dependencies taken from Axom's dependency graph.
282296
requires(f"components={','.join(_AXOM_COMPONENTS)}", when="components=all")
283-
for c in _AXOM_COMPONENTS:
284-
conflicts(f"components={c}", when="components=none")
285297

286298
requires("components=slic,spin,primal", when="components=bump")
287299
requires("components=sidre,slic,primal", when="components=inlet")
@@ -322,10 +334,6 @@ class Axom(CachedCMakePackage, CudaPackage, ROCmPackage):
322334
conflicts("~umpire", when="+cuda")
323335
conflicts("~umpire", when="+rocm")
324336

325-
# The 'profiling' variant is deprecated after v0.12, but spack doesn't
326-
# give a reasonable error/warning message if it is set
327-
conflicts("+profiling", when="@develop")
328-
329337
conflicts("^blt@:0.3.6", when="+rocm")
330338

331339
def flag_handler(self, name, flags):

0 commit comments

Comments
 (0)