aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Ammerlaan <andrewammerlaan@gentoo.org>2022-01-31 14:31:37 +0100
committerAndrew Ammerlaan <andrewammerlaan@gentoo.org>2022-01-31 14:31:37 +0100
commit416c7d818a75d321cd8b33b1332ef0863d36f5e0 (patch)
tree15cc6e13476b5e910c84c0aeb6477edd39a0757c /sci-biology
parentsci-libs/spyking-circus: bump to 1.1.0 (diff)
downloadsci-416c7d818a75d321cd8b33b1332ef0863d36f5e0.tar.gz
sci-416c7d818a75d321cd8b33b1332ef0863d36f5e0.tar.bz2
sci-416c7d818a75d321cd8b33b1332ef0863d36f5e0.zip
sci-biology/mmseqs2: new package
Closes: https://github.com/gentoo/sci/pull/1050 Co-authored-by: Joel Berendzen <joel@generisbio.com> Package-Manager: Portage-3.0.30, Repoman-3.0.3 Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
Diffstat (limited to 'sci-biology')
-rw-r--r--sci-biology/mmseqs2/Manifest1
-rw-r--r--sci-biology/mmseqs2/metadata.xml22
-rw-r--r--sci-biology/mmseqs2/mmseqs2-13.0.ebuild51
3 files changed, 74 insertions, 0 deletions
diff --git a/sci-biology/mmseqs2/Manifest b/sci-biology/mmseqs2/Manifest
new file mode 100644
index 000000000..dbfe85988
--- /dev/null
+++ b/sci-biology/mmseqs2/Manifest
@@ -0,0 +1 @@
+DIST mmseqs2-13.0.tar.gz 10199551 BLAKE2B 282d270c2b63a186d7534add93f6c23d625c5011392dc2cdff3cf11572ff23cb527726c19f5e9b092830216fa70a788faa46b1a4a2daafee05a513bff37a8a14 SHA512 90904392edd8a619577f79d75b44461b1bb647133850cc384caddb39bcfa3de0793392521edef0e86436ea0f76c9626298bd7975aba961ac7e846786eaf2e919
diff --git a/sci-biology/mmseqs2/metadata.xml b/sci-biology/mmseqs2/metadata.xml
new file mode 100644
index 000000000..c957d777e
--- /dev/null
+++ b/sci-biology/mmseqs2/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <remote-id type="github">soedinglab/mmseqs2</remote-id>
+ <doc>https://github.com/soedinglab/mmseqs2/wiki</doc>
+ </upstream>
+ <maintainer type="person">
+ <email>joel@generisbio.com</email>
+ <name>Joel Berendzen</name>
+ </maintainer>
+ <longdescription>
+ MMseqs2 (Many-against-Many sequence searching) is a software suite toi
+ search and cluster huge protein and nucleotide sequence sets.
+ MMseqs2 is open source GPL-licensed software implemented in C++.
+ The software is designed to run on multiple cores and servers
+ and exhibits very good scalability. MMseqs2 can run 10000 times
+ faster than BLAST. At 100 times its speed it achieves almost the
+ same sensitivity. It can perform profile searches with the same
+ sensitivity as PSI-BLAST at over 400 times its speed.
+ </longdescription>
+</pkgmetadata>
diff --git a/sci-biology/mmseqs2/mmseqs2-13.0.ebuild b/sci-biology/mmseqs2/mmseqs2-13.0.ebuild
new file mode 100644
index 000000000..5b35f2e5d
--- /dev/null
+++ b/sci-biology/mmseqs2/mmseqs2-13.0.ebuild
@@ -0,0 +1,51 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1 cmake
+
+MY_PN="MMseqs2"
+
+# Must be manually updated with each release
+COMMIT="45111b641859ed0ddd875b94d6fd1aef1a675b7e"
+
+DESCRIPTION="Fast and sensitive sequence search and clustering"
+HOMEPAGE="https://github.com/soedinglab/MMseqs2"
+SRC_URI="https://github.com/soedinglab/${MY_PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_PN}-${COMMIT}"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="cpu_flags_x86_sse4_1 cpu_flags_x86_sse2 cpu_flags_x86_avx2"
+
+RDEPEND="
+ app-arch/zstd[static-libs]
+ sys-libs/zlib
+ app-arch/bzip2
+"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ local mycmakeargs=(
+ # Need static libs: https://github.com/soedinglab/MMseqs2/issues/411
+ -DBUILD_SHARED_LIBS=OFF
+ -DUSE_SYSTEM_ZSTD=ON
+ # Disable auto detection, build respecting cpu flags instead
+ -DNATIVE_ARCH=OFF
+ -DHAVE_AVX2="$(usex cpu_flags_x86_avx2)"
+ -DHAVE_SSE4_1="$(usex cpu_flags_x86_sse4_1)"
+ -DHAVE_SSE2="$(usex cpu_flags_x86_sse2)"
+ # We also have cpu flags for ppc/arm/s390x
+ -DVERSION_OVERRIDE=${PV}
+ )
+ cmake_src_configure
+}
+
+src_install(){
+ cmake_src_install
+ # move the bashcomp to correct dir
+ newbashcomp "${ED}/usr/util/bash-completion.sh" "${PN}"
+ rm -r "${ED}/usr/util/" || die
+}