CP2K: add 2025.1 version and DFTD4 support (#48489)
* cp2k: add dftd4 variant * better conflict and make support * typo * Update var/spack/repos/builtin/packages/cp2k/package.py * Update var/spack/repos/builtin/packages/cp2k/package.py
This commit is contained in:
parent
43a0cbe7a2
commit
0e8e97a811
@ -38,10 +38,11 @@ class Cp2k(MakefilePackage, CMakePackage, CudaPackage, ROCmPackage):
|
||||
git = "https://github.com/cp2k/cp2k.git"
|
||||
list_url = "https://github.com/cp2k/cp2k/releases"
|
||||
|
||||
maintainers("dev-zero", "mtaillefumier")
|
||||
maintainers("dev-zero", "mtaillefumier", "RMeli", "abussy")
|
||||
|
||||
license("GPL-2.0-or-later")
|
||||
|
||||
version("2025.1", sha256="65c8ad5488897b0f995919b9fa77f2aba4b61677ba1e3c19bb093d5c08a8ce1d")
|
||||
version("2024.3", sha256="a6eeee773b6b1fb417def576e4049a89a08a0ed5feffcd7f0b33c7d7b48f19ba")
|
||||
version("2024.2", sha256="cc3e56c971dee9e89b705a1103765aba57bf41ad39a11c89d3de04c8b8cdf473")
|
||||
version("2024.1", sha256="a7abf149a278dfd5283dc592a2c4ae803b37d040df25d62a5e35af5c4557668f")
|
||||
@ -115,6 +116,7 @@ class Cp2k(MakefilePackage, CMakePackage, CudaPackage, ROCmPackage):
|
||||
)
|
||||
variant("pytorch", default=False, description="Enable libtorch support")
|
||||
variant("quip", default=False, description="Enable quip support")
|
||||
variant("dftd4", when="@2024.2:", default=False, description="Enable DFT-D4 support")
|
||||
variant("mpi_f08", default=False, description="Use MPI F08 module")
|
||||
variant("smeagol", default=False, description="Enable libsmeagol support", when="@2025.2:")
|
||||
|
||||
@ -293,6 +295,8 @@ class Cp2k(MakefilePackage, CMakePackage, CudaPackage, ROCmPackage):
|
||||
|
||||
depends_on("spglib", when="+spglib")
|
||||
|
||||
depends_on("dftd4@3.6.0: build_system=cmake", when="+dftd4")
|
||||
|
||||
with when("build_system=cmake"):
|
||||
depends_on("cmake@3.22:", type="build")
|
||||
|
||||
@ -624,6 +628,12 @@ def edit(self, pkg, spec, prefix):
|
||||
ldflags += [spglib.search_flags]
|
||||
libs.append(spglib.ld_flags)
|
||||
|
||||
if spec.satisfies("+dftd4"):
|
||||
cppflags += ["-D__DFTD4"]
|
||||
dftd4 = spec["dftd4"].libs
|
||||
ldflags += [dftd4.search_flags]
|
||||
libs.append(dftd4.ld_flags)
|
||||
|
||||
if spec.satisfies("+smeagol"):
|
||||
cppflags += ["-D__SMEAGOL"]
|
||||
smeagol = spec["libsmeagol"].libs
|
||||
@ -1003,6 +1013,7 @@ def cmake_args(self):
|
||||
self.define_from_variant("CP2K_USE_VORI", "libvori"),
|
||||
self.define_from_variant("CP2K_USE_SPLA", "spla"),
|
||||
self.define_from_variant("CP2K_USE_QUIP", "quip"),
|
||||
self.define_from_variant("CP2K_USE_DFTD4", "dftd4"),
|
||||
self.define_from_variant("CP2K_USE_MPI_F08", "mpi_f08"),
|
||||
self.define_from_variant("CP2K_USE_LIBSMEAGOL", "smeagol"),
|
||||
]
|
||||
|
Loading…
Reference in New Issue
Block a user