Gentoo Archives: gentoo-commits

From: Martin Mokrejs <mmokrejs@×××××××××××××××.cz>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/sci:master commit in: sci-biology/minimap2/
Date: Tue, 30 Nov 2021 12:41:25
Message-Id: 1638276067.227e281f30db2fd020beda0f962166b4783c5d95.mmokrejs@gentoo
1 commit: 227e281f30db2fd020beda0f962166b4783c5d95
2 Author: Martin Mokrejs <mmokrejs <AT> gmail <DOT> com>
3 AuthorDate: Tue Nov 30 12:41:07 2021 +0000
4 Commit: Martin Mokrejs <mmokrejs <AT> fold <DOT> natur <DOT> cuni <DOT> cz>
5 CommitDate: Tue Nov 30 12:41:07 2021 +0000
6 URL: https://gitweb.gentoo.org/proj/sci.git/commit/?id=227e281f
7
8 sci-biology/minimap2: install more files, document incompleteness
9
10 I added notes on supported CPU instructions and additional python
11 bindings. Note the static library is linked into the minimap2 binary
12 by default but I think it may be handy to install the library and header
13 file too.
14
15 Package-Manager: Portage-3.0.28, Repoman-3.0.3
16 Signed-off-by: Martin Mokrejs <mmokrejs <AT> gmail.com>
17
18 sci-biology/minimap2/minimap2-2.23.ebuild | 36 +++++++++++++++++++++++++++++--
19 1 file changed, 34 insertions(+), 2 deletions(-)
20
21 diff --git a/sci-biology/minimap2/minimap2-2.23.ebuild b/sci-biology/minimap2/minimap2-2.23.ebuild
22 index 9f335e99c..ed458b91d 100644
23 --- a/sci-biology/minimap2/minimap2-2.23.ebuild
24 +++ b/sci-biology/minimap2/minimap2-2.23.ebuild
25 @@ -5,7 +5,7 @@ EAPI=7
26
27 inherit toolchain-funcs
28
29 -DESCRIPTION="splice-aware sequence aligner"
30 +DESCRIPTION="splice-aware sequence aligner with SSE2 and SSE4.1"
31 HOMEPAGE="https://github.com/lh3/minimap2"
32 SRC_URI="https://github.com/lh3/${PN}/releases/download/v${PV}/${P}.tar.bz2"
33
34 @@ -13,7 +13,9 @@ LICENSE="MIT"
35 SLOT="0"
36 KEYWORDS="~amd64 ~x86"
37
38 -DEPEND=""
39 +IUSE="+static"
40 +
41 +DEPEND="sys-libs/zlib"
42 RDEPEND="${DEPEND}"
43 BDEPEND=""
44
45 @@ -22,6 +24,36 @@ src_prepare(){
46 eapply_user
47 }
48
49 +# Minimap2 requires SSE2 instructions on x86 CPUs or NEON on ARM CPUs. It is
50 +# possible to add non-SIMD support, but it would make minimap2 slower by
51 +# several times.
52 +#
53 +# If you see compilation errors, try `make sse2only=1`
54 +# to disable SSE4 code, which will make minimap2 slightly slower.
55 +#
56 +# Minimap2 also works with ARM CPUs supporting the NEON instruction sets. To
57 +# compile for 32 bit ARM architectures (such as ARMv7), use `make arm_neon=1`. To
58 +# compile for for 64 bit ARM architectures (such as ARMv8), use `make arm_neon=1
59 +# aarch64=1`.
60 +#
61 +# Minimap2 can use [SIMD Everywhere (SIMDe)][simde] library for porting
62 +# implementation to the different SIMD instruction sets. To compile using SIMDe,
63 +# use `make -f Makefile.simde`. To compile for ARM CPUs, use `Makefile.simde`
64 +# with the ARM related command lines given above.
65 +
66 +# This repository also provides Python bindings to a subset of C APIs. File
67 +# [python/README.rst](python/README.rst) gives the full documentation;
68 +# [python/minimap2.py](python/minimap2.py) shows an example. This Python
69 +# extension, mappy, is also [available from PyPI][mappypypi] via `pip install
70 +# mappy` or [from BioConda][mappyconda] via `conda install -c bioconda mappy`.
71 +
72 src_install(){
73 dobin "${PN}"
74 + insinto /usr/include
75 + doins minimap.h mmpriv.h
76 + dolib.a libminimap2.a
77 + insinto /usr/share/"${PN}"/examples
78 + doins example.c
79 + doman minimap2.1
80 + dodoc README.md NEWS.md FAQ.md
81 }