FIX: opal-x build

This commit is contained in:
svcusr-spack (Resp. Germann Elsa Sylvia)
2024-10-04 09:54:42 +02:00
parent 51daa45753
commit eef26d712c
2 changed files with 116 additions and 14 deletions

View File

@ -48,17 +48,15 @@ class OpalX(CMakePackage, CudaPackage):
variant("solvers", default=True, description="Enable solvers")
variant("fft", default=True, description="Enable full-wave solver")
variant("tests", default=False, description="Enable tests")
variant("alternative_variant", default=True, description="Use alternative variant")
variant("alpine", default=True, description="Enable Alpine")
variant("alternative_variant", default=False, description="Use alternative variant")
variant("alpine", default=False, description="Enable Alpine")
depends_on("blas")
depends_on("boost@1.82.0+mpi+chrono+filesystem+iostreams+regex+serialization+system+timer+python+shared")
depends_on("cmake@3.25.2:", type="build")
depends_on("fftw@3.3.10", when="+fft")
depends_on("fftw@3.3.10")
depends_on("gsl@2.7+shared")
depends_on("gnutls@3.5.19:")
depends_on("kokkos@4.2.00:+openmp")
depends_on("heffte@develop")
depends_on("h5hut+mpi", when="+mpi")
@ -73,7 +71,7 @@ class OpalX(CMakePackage, CudaPackage):
conflicts("cuda_arch=none", when="+cuda",
msg="CUDA architecture is required")
conflicts("%gcc@:8.5.0", msg="gcc bigger than 8.5.0 is required")
@run_before("cmake")
def cmake_configure(self):
spec = self.spec
@ -87,21 +85,21 @@ class OpalX(CMakePackage, CudaPackage):
self.define_from_variant("ENABLE_SOLVERS", "solvers"),
self.define_from_variant("ENABLE_TESTS", "tests"),
self.define_from_variant("USE_ALTERNATIVE_VARIANT", "alternative_variant"),
#self.define_from_variant("ENABLE_ALPINE", "alpine"),
"-DIPPL_GIT_TAG=opalx-fielddump",
]
if '+cuda' in self.variants:
if '+cuda' in self.spec:
args.append("-DIPPL_PLATFORMS=cuda")
else:
args.append("-DIPPL_PLATFORMS=openmp")
if 'cuda_arch=90' in self.variants:
if 'cuda_arch=90' in self.spec:
args.append("-DKokkos_ARCH_HOPPER90=ON")
elif 'cuda_arch=80' in self.variants:
elif 'cuda_arch=80' in self.spec:
args.append("-DKokkos_ARCH_AMPERE80=ON")
elif 'cuda_arch=60' in self.variants:
elif 'cuda_arch=60' in self.spec:
args.append("-DKokkos_ARCH_PASCAL61=ON")
return args