spfft package: add version 1.1.0 (#43318)
This commit is contained in:
parent
0b5b192c18
commit
22922323e3
@ -21,6 +21,7 @@ class Spfft(CMakePackage, CudaPackage, ROCmPackage):
|
||||
version("develop", branch="develop")
|
||||
version("master", branch="master")
|
||||
|
||||
version("1.1.0", sha256="231454a3142bc56249b1b551ac5175882311365509cc111d7ad0e91ed5537102")
|
||||
version("1.0.6", sha256="e1b927c61f8abbb4a9937653f917169e6253e8c40b850df491594310943ca14b")
|
||||
version("1.0.5", sha256="2a59d856286ea8559f00a32fc38f9f7546209cfa90112232a5288a69689a6e05")
|
||||
version("1.0.4", sha256="41e63880d95343da0d8c3dbe5bfb3d46a1d612199cc9cc13a936f1628a7fdb8e")
|
||||
@ -50,8 +51,12 @@ class Spfft(CMakePackage, CudaPackage, ROCmPackage):
|
||||
depends_on("fftw-api@3")
|
||||
depends_on("mpi", when="+mpi")
|
||||
depends_on("cmake@3.11:", type="build")
|
||||
depends_on("cmake@3.18:", type="build", when="@1.1.0:")
|
||||
depends_on("cmake@3.21:", type="build", when="@1.1.0: +rocm")
|
||||
|
||||
depends_on("cuda@:10", when="@:0.9.11 +cuda")
|
||||
depends_on("cuda@9:10", when="@:0.9.11 +cuda")
|
||||
depends_on("cuda@9:", when="@0.9.12:1.0.6 +cuda")
|
||||
depends_on("cuda@11:", when="@1.1.0: +cuda")
|
||||
|
||||
# Workaround for compiler bug in ROCm 4.5+ added in SpFFT 1.0.6
|
||||
conflicts("+rocm", when="@:1.0.5")
|
||||
@ -59,6 +64,8 @@ class Spfft(CMakePackage, CudaPackage, ROCmPackage):
|
||||
with when("+rocm"):
|
||||
depends_on("rocfft")
|
||||
depends_on("hipfft")
|
||||
# hip 6.0 requires v1.1.0 and later
|
||||
conflicts("^hip@6.0.0:", when="@:1.0.6 +rocm")
|
||||
|
||||
# Fix compilation error in some cases due to missing include statement
|
||||
# before version 1.0.3
|
||||
@ -82,7 +89,13 @@ def cmake_args(self):
|
||||
if cuda_arch[0] != "none":
|
||||
args += [self.define("CMAKE_CUDA_ARCHITECTURES", cuda_arch)]
|
||||
|
||||
if spec.satisfies("+rocm"):
|
||||
if spec.satisfies("@1.1.0: +rocm"):
|
||||
# v1.1.0 switched to CMake HIP language feature
|
||||
args += ["-DSPFFT_GPU_BACKEND=ROCM"]
|
||||
rocm_arch = self.spec.variants["amdgpu_target"].value
|
||||
if rocm_arch[0] != "none":
|
||||
args += [self.define("CMAKE_HIP_ARCHITECTURES", rocm_arch)]
|
||||
elif spec.satisfies("+rocm"):
|
||||
archs = ",".join(self.spec.variants["amdgpu_target"].value)
|
||||
args += [
|
||||
"-DSPFFT_GPU_BACKEND=ROCM",
|
||||
|
Loading…
Reference in New Issue
Block a user