summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Seifert <soap@gentoo.org>2023-02-19 16:22:52 +0100
committerDavid Seifert <soap@gentoo.org>2023-02-19 16:22:52 +0100
commitcd493f9e3374c2cf9f36ebd06d8dac3f2732faf1 (patch)
tree470f08722f27c4893b3bf8f2f88a61bee29597de /sci-biology
parentapp-portage/gs-elpa: add 0.2.2 (diff)
downloadgentoo-cd493f9e3374c2cf9f36ebd06d8dac3f2732faf1.tar.gz
gentoo-cd493f9e3374c2cf9f36ebd06d8dac3f2732faf1.tar.bz2
gentoo-cd493f9e3374c2cf9f36ebd06d8dac3f2732faf1.zip
sci-biology/pysam: add 0.20.0
Signed-off-by: David Seifert <soap@gentoo.org>
Diffstat (limited to 'sci-biology')
-rw-r--r--sci-biology/pysam/Manifest1
-rw-r--r--sci-biology/pysam/pysam-0.20.0.ebuild69
2 files changed, 70 insertions, 0 deletions
diff --git a/sci-biology/pysam/Manifest b/sci-biology/pysam/Manifest
index f1a1fe7298b7..fc762c874c2d 100644
--- a/sci-biology/pysam/Manifest
+++ b/sci-biology/pysam/Manifest
@@ -1 +1,2 @@
DIST pysam-0.19.1.gh.tar.gz 3649711 BLAKE2B dac3ab5a86ef95048e966fc007a0aa1c96ca8498f7c2672c2ed024f34b508bac42048e58b8ae0b538cea137a51e1874bb5c2c4976c7f3dc657a4c2cf5f9a27fb SHA512 719f3a15e7dd277a90cce7f938b674ff86ef6b8f2d3440c3a0bf2ea22c4fbc2b3c9e0cf297d958c99e09dcd6e9905f32e8c632158aa8d5af8210e79705e1c479
+DIST pysam-0.20.0.gh.tar.gz 3748498 BLAKE2B 1c1b99e5ec34641c196dd574e634cc87d49baa594243eca20ad1f99d2c01b8aadead70a729f389c93cf6f5e95f20d9c7e3d050a47821d1b0dcaaff39d88e6825 SHA512 3f8402057e1d5c807886d1d38180dbdbfa8557700fa97bd59cb42df4d7cc461dcbe54808a169ba5f9696651e801fd0431480cd033b601cd4e9c11bf8bbf14e49
diff --git a/sci-biology/pysam/pysam-0.20.0.ebuild b/sci-biology/pysam/pysam-0.20.0.ebuild
new file mode 100644
index 000000000000..6372f1602f70
--- /dev/null
+++ b/sci-biology/pysam/pysam-0.20.0.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python interface for the SAM/BAM sequence alignment and mapping format"
+HOMEPAGE="
+ https://github.com/pysam-developers/pysam
+ https://pypi.org/project/pysam/"
+SRC_URI="https://github.com/pysam-developers/pysam/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="=sci-libs/htslib-1.16*:="
+DEPEND="${RDEPEND}
+ dev-python/cython[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ =sci-biology/bcftools-1.16*
+ =sci-biology/samtools-1.16*
+ )"
+
+distutils_enable_tests pytest
+
+DISTUTILS_IN_SOURCE_BUILD=1
+
+EPYTEST_DESELECT=(
+ # only work with bundled htslib
+ 'tests/tabix_test.py::TestRemoteFileHTTP'
+ 'tests/tabix_test.py::TestRemoteFileHTTPWithHeader'
+ # broken test
+ # https://github.com/pysam-developers/pysam/issues/1151#issuecomment-1365662253
+ 'tests/AlignmentFilePileup_test.py::TestPileupObjects::testIteratorOutOfScope'
+)
+
+python_prepare_all() {
+ # unbundle htslib
+ export HTSLIB_MODE="external"
+ export HTSLIB_INCLUDE_DIR="${ESYSROOT}"/usr/include
+ export HTSLIB_LIBRARY_DIR="${ESYSROOT}"/usr/$(get_libdir)
+ rm -r htslib || die
+
+ # prevent setup.py from adding RPATHs (except $ORIGIN)
+ sed -e '/runtime_library_dirs=htslib_library_dirs/d' \
+ -i setup.py || die
+
+ if use test; then
+ einfo "Building test data"
+ emake -C tests/pysam_data
+ emake -C tests/cbcf_data
+ fi
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile() {
+ # breaks with parallel build
+ # need to avoid dropping .so plugins into
+ # build-lib, which breaks tests
+ esetup.py build_ext --inplace -j1
+ distutils-r1_python_compile -j1
+}