Ecp sdk update package contraints (#28693)
* ECP-SDK: Require HDF5 1.12 * ECP-SDK: Require SDK spec for SDK packages
This commit is contained in:
parent
c16ce9408e
commit
a45c7c185b
@ -95,7 +95,7 @@ class Adios2(CMakePackage):
|
|||||||
depends_on('libzmq', when='+dataman')
|
depends_on('libzmq', when='+dataman')
|
||||||
depends_on('dataspaces@1.8.0:', when='+dataspaces')
|
depends_on('dataspaces@1.8.0:', when='+dataspaces')
|
||||||
|
|
||||||
depends_on('hdf5', when='+hdf5')
|
depends_on('hdf5~mpi', when='+hdf5~mpi')
|
||||||
depends_on('hdf5+mpi', when='+hdf5+mpi')
|
depends_on('hdf5+mpi', when='+hdf5+mpi')
|
||||||
|
|
||||||
depends_on('c-blosc', when='@2.4: +blosc')
|
depends_on('c-blosc', when='@2.4: +blosc')
|
||||||
|
@ -77,7 +77,7 @@ class Conduit(CMakePackage):
|
|||||||
# set to false for systems that implicitly link mpi
|
# set to false for systems that implicitly link mpi
|
||||||
variant('blt_find_mpi', default=True, description='Use BLT CMake Find MPI logic')
|
variant('blt_find_mpi', default=True, description='Use BLT CMake Find MPI logic')
|
||||||
variant("hdf5", default=True, description="Build Conduit HDF5 support")
|
variant("hdf5", default=True, description="Build Conduit HDF5 support")
|
||||||
variant("hdf5_compat", default=True,
|
variant("hdf5_compat", default=True, when='+hdf5',
|
||||||
description="Build Conduit with HDF5 1.8.x (compatibility mode)")
|
description="Build Conduit with HDF5 1.8.x (compatibility mode)")
|
||||||
variant("silo", default=False, description="Build Conduit Silo support")
|
variant("silo", default=False, description="Build Conduit Silo support")
|
||||||
variant("adios", default=False, description="Build Conduit ADIOS support")
|
variant("adios", default=False, description="Build Conduit ADIOS support")
|
||||||
|
@ -30,7 +30,6 @@ class EcpDataVisSdk(BundlePackage, CudaPackage):
|
|||||||
variant('veloc', default=False, description="Enable VeloC")
|
variant('veloc', default=False, description="Enable VeloC")
|
||||||
|
|
||||||
# Vis
|
# Vis
|
||||||
variant('sensei', default=False, description="Enable Sensei")
|
|
||||||
variant('ascent', default=False, description="Enable Ascent")
|
variant('ascent', default=False, description="Enable Ascent")
|
||||||
variant('paraview', default=False, description="Enable ParaView")
|
variant('paraview', default=False, description="Enable ParaView")
|
||||||
variant('sz', default=False, description="Enable SZ")
|
variant('sz', default=False, description="Enable SZ")
|
||||||
@ -41,6 +40,8 @@ class EcpDataVisSdk(BundlePackage, CudaPackage):
|
|||||||
variant('cinema', default=False, description="Enable Cinema")
|
variant('cinema', default=False, description="Enable Cinema")
|
||||||
|
|
||||||
# Outstanding build issues
|
# Outstanding build issues
|
||||||
|
variant('sensei', default=False, description="Enable Sensei")
|
||||||
|
conflicts('+sensei')
|
||||||
variant('visit', default=False, description="Enable VisIt")
|
variant('visit', default=False, description="Enable VisIt")
|
||||||
conflicts('+visit')
|
conflicts('+visit')
|
||||||
|
|
||||||
@ -49,6 +50,16 @@ def dav_sdk_depends_on(spec, when=None, propagate=None):
|
|||||||
# Do the basic depends_on
|
# Do the basic depends_on
|
||||||
depends_on(spec, when=when)
|
depends_on(spec, when=when)
|
||||||
|
|
||||||
|
# Strip spec string to just the base spec name
|
||||||
|
# ie. A +c ~b -> A
|
||||||
|
spec = Spec(spec).name
|
||||||
|
|
||||||
|
if '+' in when and len(when.split()) == 1:
|
||||||
|
when_not = when.replace('+', '~')
|
||||||
|
# If the package is in the spec tree then it must
|
||||||
|
# be enabled in the SDK.
|
||||||
|
conflicts(when_not, '^' + spec)
|
||||||
|
|
||||||
# Skip if there is nothing to propagate
|
# Skip if there is nothing to propagate
|
||||||
if not propagate:
|
if not propagate:
|
||||||
return
|
return
|
||||||
@ -57,10 +68,6 @@ def dav_sdk_depends_on(spec, when=None, propagate=None):
|
|||||||
if not type(propagate) is dict:
|
if not type(propagate) is dict:
|
||||||
propagate = dict([(v, v) for v in propagate])
|
propagate = dict([(v, v) for v in propagate])
|
||||||
|
|
||||||
# Strip spec string to just the base spec name
|
|
||||||
# ie. A +c ~b -> A
|
|
||||||
spec = Spec(spec).name
|
|
||||||
|
|
||||||
# Determine the base variant
|
# Determine the base variant
|
||||||
base_variant = ''
|
base_variant = ''
|
||||||
if when:
|
if when:
|
||||||
@ -100,7 +107,7 @@ def exclude_variants(variants, exclude):
|
|||||||
when='+faodel',
|
when='+faodel',
|
||||||
propagate=['hdf5'])
|
propagate=['hdf5'])
|
||||||
|
|
||||||
dav_sdk_depends_on('hdf5 +shared+mpi+fortran', when='+hdf5')
|
dav_sdk_depends_on('hdf5@1.12: +shared+mpi+fortran', when='+hdf5')
|
||||||
|
|
||||||
dav_sdk_depends_on('parallel-netcdf+shared+fortran', when='+pnetcdf')
|
dav_sdk_depends_on('parallel-netcdf+shared+fortran', when='+pnetcdf')
|
||||||
|
|
||||||
@ -114,8 +121,11 @@ def exclude_variants(variants, exclude):
|
|||||||
dav_sdk_depends_on('sensei@develop +vtkio +python ~miniapps', when='+sensei',
|
dav_sdk_depends_on('sensei@develop +vtkio +python ~miniapps', when='+sensei',
|
||||||
propagate=dict(propagate_to_sensei))
|
propagate=dict(propagate_to_sensei))
|
||||||
|
|
||||||
|
# Need to explicitly turn off conduit hdf5_compat in order to build
|
||||||
|
# hdf5@1.12 which is required for SDK
|
||||||
dav_sdk_depends_on('ascent+shared+mpi+fortran+openmp+python+vtkh+dray',
|
dav_sdk_depends_on('ascent+shared+mpi+fortran+openmp+python+vtkh+dray',
|
||||||
when='+ascent')
|
when='+ascent')
|
||||||
|
depends_on('ascent ^conduit ~hdf5_compat', when='+ascent +hdf5')
|
||||||
|
|
||||||
depends_on('py-cinemasci', when='+cinema')
|
depends_on('py-cinemasci', when='+cinema')
|
||||||
|
|
||||||
@ -123,8 +133,8 @@ def exclude_variants(variants, exclude):
|
|||||||
when='+paraview',
|
when='+paraview',
|
||||||
propagate=['hdf5', 'adios2'] + cuda_arch_variants)
|
propagate=['hdf5', 'adios2'] + cuda_arch_variants)
|
||||||
# Want +shared when not using cuda
|
# Want +shared when not using cuda
|
||||||
dav_sdk_depends_on('paraview ~shared +cuda', when='+paraview +cuda')
|
depends_on('paraview ~shared +cuda', when='+paraview +cuda')
|
||||||
dav_sdk_depends_on('paraview +shared ~cuda', when='+paraview ~cuda')
|
depends_on('paraview +shared ~cuda', when='+paraview ~cuda')
|
||||||
|
|
||||||
dav_sdk_depends_on('visit', when='+visit')
|
dav_sdk_depends_on('visit', when='+visit')
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user