summaryrefslogtreecommitdiff
path: root/sci-biology/kallisto/kallisto-0.46.2-r1.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'sci-biology/kallisto/kallisto-0.46.2-r1.ebuild')
-rw-r--r--sci-biology/kallisto/kallisto-0.46.2-r1.ebuild68
1 files changed, 68 insertions, 0 deletions
diff --git a/sci-biology/kallisto/kallisto-0.46.2-r1.ebuild b/sci-biology/kallisto/kallisto-0.46.2-r1.ebuild
new file mode 100644
index 000000000000..68640687cf9d
--- /dev/null
+++ b/sci-biology/kallisto/kallisto-0.46.2-r1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake flag-o-matic
+
+DESCRIPTION="Near-optimal RNA-Seq quantification"
+HOMEPAGE="http://pachterlab.github.io/kallisto/"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/pachterlab/kallisto.git"
+else
+ SRC_URI="https://github.com/pachterlab/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="hdf5 test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ sci-libs/htslib:=
+ sys-libs/zlib:=
+ hdf5? ( sci-libs/hdf5:= )"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-cpp/catch-3:0
+ sci-libs/hdf5
+ )"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-cmake.patch
+ "${FILESDIR}"/${P}-htslib.patch
+ "${FILESDIR}"/${P}-catch2.patch
+ "${FILESDIR}"/${P}-gcc11.patch
+)
+
+src_prepare() {
+ cmake_src_prepare
+ # bundled catch2
+ rm -r ext || die
+ # bundled htslib structs
+ rm src/kseq.h || die
+
+ # the test suite is cheesy and relies on a
+ # specific builddir nesting structure.
+ sed -e "s|../test/input/short_reads.fastq|$(readlink -f unit_tests/input/short_reads.fastq)|g" \
+ -i unit_tests/test_kmerhashtable.cpp || die
+
+ # This randomly hardcodes a particular std, which unfortunately is too old for catch2.
+ sed -i '/CMAKE_CXX_STANDARD/d' CMakeLists.txt || die
+ append-cxxflags -std=c++14
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DUSE_HDF5=$(usex hdf5)
+ -DBUILD_TESTING=$(usex test)
+ # convenience library only
+ -DBUILD_SHARED_LIBS=OFF
+ )
+ cmake_src_configure
+}