From 28171f1b9ddd23c91eecf357e05a2d9241c095b8 Mon Sep 17 00:00:00 2001 From: snehring <7978778+snehring@users.noreply.github.com> Date: Tue, 6 Aug 2024 02:30:22 -0500 Subject: diamond: add blast support and eigen (#45254) Signed-off-by: Shane Nehring --- .../repos/builtin/packages/diamond/package.py | 28 ++++++++++++++++++++++ 1 file changed, 28 insertions(+) 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 -- cgit v1.2.3-70-g09d2