diff options
author | snehring <7978778+snehring@users.noreply.github.com> | 2024-08-06 02:30:22 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-06 09:30:22 +0200 |
commit | 28171f1b9ddd23c91eecf357e05a2d9241c095b8 (patch) | |
tree | daa44d5a225b614cc27f35e2f9b45ba2cbaa9a9a | |
parent | 8de03e2bf59afa1c2457c4a8c0531181db330f77 (diff) | |
download | spack-28171f1b9ddd23c91eecf357e05a2d9241c095b8.tar.gz spack-28171f1b9ddd23c91eecf357e05a2d9241c095b8.tar.bz2 spack-28171f1b9ddd23c91eecf357e05a2d9241c095b8.tar.xz spack-28171f1b9ddd23c91eecf357e05a2d9241c095b8.zip |
diamond: add blast support and eigen (#45254)
Signed-off-by: Shane Nehring <snehring@iastate.edu>
-rw-r--r-- | var/spack/repos/builtin/packages/diamond/package.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/diamond/package.py b/var/spack/repos/builtin/packages/diamond/package.py index 62a7c101dd..c87e675eae 100644 --- a/var/spack/repos/builtin/packages/diamond/package.py +++ b/var/spack/repos/builtin/packages/diamond/package.py @@ -39,10 +39,38 @@ class Diamond(CMakePackage): depends_on("c", type="build") # generated depends_on("cxx", type="build") # generated + depends_on("blas", when="+eigen") + depends_on("blast-plus", when="+blast") + depends_on("eigen", when="+eigen") + depends_on("lapack", when="+eigen") depends_on("zlib-api") + depends_on("zstd", when="+zstd") + + variant("zstd", default=False, description="Bulid with zstd support", when="@2.1.0:") + variant("blast", default=True, description="Build with blast db support", when="@2.1.0:") + variant("eigen", default=False, description="Build with Eigen support", when="@2.1.0:") + + requires("+zstd", when="+blast", msg="blast support requires zstd") conflicts("target=aarch64:", when="@:0.9.25") # fix error [-Wc++11-narrowing] # Ref: https://github.com/bbuchfink/diamond/commit/155e076d662b0e9268e2b00bef6d33d90aede7ff patch("fix_narrowing_error.patch", when="@:0.9.25") + + def cmake_args(self): + args = [ + self.define_from_variant("WITH_ZSTD", "zstd"), + self.define_from_variant("EIGEN_BLAS", "eigen"), + ] + if self.spec.satisfies("+blast"): + args.extend( + [ + self.define( + "BLAST_INCLUDE_DIR", + join_path(self.spec["blast-plus"].prefix.include, "ncbi-tools++"), + ), + self.define("BLAST_LIBRARY_DIR", self.spec["blast-plus"].prefix.lib), + ] + ) + return args |