summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGurkirat Singh <tbhaxor@gmail.com>2023-07-26 22:08:41 +0530
committerGitHub <noreply@github.com>2023-07-26 09:38:41 -0700
commit52c0127fc7d744a94ad4f869603558412900d6b0 (patch)
treed6a273d66e0146b199459d2a2805b9d2db7f4d3e
parent2c74b433aad521c3dc8b38234a8948351ecad54c (diff)
downloadspack-52c0127fc7d744a94ad4f869603558412900d6b0.tar.gz
spack-52c0127fc7d744a94ad4f869603558412900d6b0.tar.bz2
spack-52c0127fc7d744a94ad4f869603558412900d6b0.tar.xz
spack-52c0127fc7d744a94ad4f869603558412900d6b0.zip
Implement `odgi` package (#39078)
* feature (packages): implement `odgi` package This commit re-implements odgi package (superseded by #38741) * fix (packages): remove redundant `requires()` from odgi package This commit removes redundant use of `requires()` for gcc version in the `odgi` package
-rw-r--r--var/spack/repos/builtin/packages/odgi/package.py48
1 files changed, 48 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/odgi/package.py b/var/spack/repos/builtin/packages/odgi/package.py
new file mode 100644
index 0000000000..459ab59bac
--- /dev/null
+++ b/var/spack/repos/builtin/packages/odgi/package.py
@@ -0,0 +1,48 @@
+# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack.package import *
+
+
+class Odgi(CMakePackage):
+ """Optimized dynamic genome/graph implementation.
+ Odgi provides an efficient and succinct dynamic DNA sequence graph model, as
+ well as a host of algorithms that allow the use of such graphs in
+ bioinformatic analyses.
+ """
+
+ homepage = "https://github.com/pangenome/odgi"
+ git = "https://github.com/pangenome/odgi.git"
+
+ # notify when the package is updated.
+ maintainers("tbhaxor", "EbiArnie")
+
+ # <<< Versions list starts here
+ version("0.8.3", commit="34f006f31c3f6b35a1eb8d58a4edb1c458583de3", submodules=True)
+ # >>> Versions list ends here
+
+ # compilation problem with ninja
+ generator("make", default="make")
+
+ # the range is required to successfully build the program
+ requires("%gcc", msg="Package odgi depends on the gcc C++ compiler")
+ conflicts(
+ "%gcc@:9.2,13:", msg="Unsupported compiler version. Recommended range is 9.3 -> 12.x"
+ )
+
+ # <<< Dependencies list starts here
+ depends_on("python")
+ depends_on("py-pybind11")
+ depends_on("sdsl-lite")
+ depends_on("libdivsufsort")
+ depends_on("jemalloc")
+ # >>> Dependencies list ends here
+
+ def cmake_args(self):
+ args = [
+ "-DCMAKE_CXX_STANDARD_REQUIRED:BOOL=ON",
+ "-DPYTHON_EXECUTABLE:FILEPATH={0}".format(self.spec["python"].command),
+ ]
+ return args