New packages: libbigwig, methyldackel (#33273)

* libbigwig: adding new package libbigwig
* methyldackel: adding new package methyldackel
* libbigwig: tighten up curl variant
This commit is contained in:
snehring 2022-10-17 14:40:01 -05:00 committed by GitHub
parent da6aeaad44
commit c0361168a5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 66 additions and 0 deletions

View File

@ -0,0 +1,26 @@
# Copyright 2013-2022 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 Libbigwig(CMakePackage):
"""A C library for reading/parsing local and remote bigWig and bigBed files."""
homepage = "https://github.com/dpryan79/libBigWig"
url = "https://github.com/dpryan79/libBigWig/archive/refs/tags/0.4.7.tar.gz"
maintainers = ["snehring"]
version("0.4.7", sha256="8e057797011d93fa00e756600898af4fe6ca2d48959236efc9f296abe94916d9")
variant("curl", default=True, description="Build with curl support")
depends_on("curl", when="+curl")
def cmake_args(self):
args = []
if self.spec.satisfies("~curl"):
args.append("-DWITH_CURL=OFF")
return args

View File

@ -0,0 +1,40 @@
# Copyright 2013-2022 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 Methyldackel(MakefilePackage):
"""MethylDackel (formerly named PileOMeth, which was a temporary name
derived due to it using a PILEup to extract METHylation metrics) will
process a coordinate-sorted and indexed BAM or CRAM file containing
some form of BS-seq alignments and extract per-base methylation
metrics from them.
"""
homepage = "https://github.com/dpryan79/MethylDackel"
url = "https://github.com/dpryan79/MethylDackel/archive/refs/tags/0.6.1.tar.gz"
maintainers = ["snehring"]
version("0.6.1", sha256="eeb1da4c830bcd9f3e6663a764947d957c41337643069524a4b545812fcf4819")
depends_on("htslib@1.11:")
depends_on("libbigwig")
depends_on("curl")
def edit(self, spec, prefix):
filter_file(r"^prefix \?=.*$", "prefix = " + spec.prefix, "Makefile")
filter_file(
"$(LIBBIGWIG)",
join_path(spec["libbigwig"].prefix.lib64, "libBigWig.a"),
"Makefile",
string=True,
)
filter_file(
"-IlibBigWig",
"-I" + spec["libbigwig"].prefix.include.libbigwig,
"Makefile",
string=True,
)