git: cf14bbb325bb - main - biology/mmseqs2: Ultra fast and sensitive sequence search and clustering suite
Jason W. Bacon
jwb at FreeBSD.org
Thu Jun 24 17:32:15 UTC 2021
The branch main has been updated by jwb:
URL: https://cgit.FreeBSD.org/ports/commit/?id=cf14bbb325bb8696c275ebbabff3da95a75815eb
commit cf14bbb325bb8696c275ebbabff3da95a75815eb
Author: Jason W. Bacon <jwb at FreeBSD.org>
AuthorDate: 2021-06-24 17:29:51 +0000
Commit: Jason W. Bacon <jwb at FreeBSD.org>
CommitDate: 2021-06-24 17:31:42 +0000
biology/mmseqs2: Ultra fast and sensitive sequence search and clustering suite
MMseqs2 (Many-against-Many sequence searching) is a software suite to search
and cluster huge protein and nucleotide sequence sets. MMseqs2 is open source
GPL-licensed software implemented in C++ for FreeBSD, Linux, MacOS, and (via
via cygwin) Windows. 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.
---
biology/Makefile | 1 +
biology/mmseqs2/Makefile | 27 +++++++++++++++
biology/mmseqs2/distinfo | 3 ++
biology/mmseqs2/files/patch-CMakeLists.txt | 53 ++++++++++++++++++++++++++++++
biology/mmseqs2/pkg-descr | 10 ++++++
5 files changed, 94 insertions(+)
diff --git a/biology/Makefile b/biology/Makefile
index 158eb70ede1a..55ed6b8c2735 100644
--- a/biology/Makefile
+++ b/biology/Makefile
@@ -77,6 +77,7 @@
SUBDIR += mapm3
SUBDIR += migrate
SUBDIR += minimap2
+ SUBDIR += mmseqs2
SUBDIR += molden
SUBDIR += mopac
SUBDIR += mothur
diff --git a/biology/mmseqs2/Makefile b/biology/mmseqs2/Makefile
new file mode 100644
index 000000000000..6ec07e428c72
--- /dev/null
+++ b/biology/mmseqs2/Makefile
@@ -0,0 +1,27 @@
+PORTNAME= MMseqs2
+DISTVERSION= 13-45111
+CATEGORIES= biology
+
+MAINTAINER= jwb at FreeBSD.org
+COMMENT= Ultra fast and sensitive sequence search and clustering suite
+
+LICENSE= GPLv3
+LICENSE_FILE= ${WRKSRC}/LICENSE.md
+
+USES= cmake perl5 shebangfix
+
+SHEBANG_GLOB= *.sh
+
+USE_GITHUB= yes
+GH_ACCOUNT= soedinglab
+
+PLIST_FILES= bin/mmseqs ${DATADIR}/bash-completion.sh
+
+post-patch:
+ @${REINPLACE_CMD} -e 's|MMSEQS_HOME/util|${DATADIR}|g' \
+ ${WRKSRC}/src/commons/Application.cpp
+
+post-stage:
+ ${MV} ${STAGEDIR}${PREFIX}/util ${STAGEDIR}${DATADIR}
+
+.include <bsd.port.mk>
diff --git a/biology/mmseqs2/distinfo b/biology/mmseqs2/distinfo
new file mode 100644
index 000000000000..ec7fbc69cf89
--- /dev/null
+++ b/biology/mmseqs2/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1624543564
+SHA256 (soedinglab-MMseqs2-13-45111_GH0.tar.gz) = 6444bb682ebf5ced54b2eda7a301fa3e933c2a28b7661f96ef5bdab1d53695a2
+SIZE (soedinglab-MMseqs2-13-45111_GH0.tar.gz) = 10196433
diff --git a/biology/mmseqs2/files/patch-CMakeLists.txt b/biology/mmseqs2/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..908984972649
--- /dev/null
+++ b/biology/mmseqs2/files/patch-CMakeLists.txt
@@ -0,0 +1,53 @@
+--- CMakeLists.txt.orig 2021-06-24 14:37:49 UTC
++++ CMakeLists.txt
+@@ -50,30 +50,19 @@ set(MMSEQS_CXX_FLAGS "-fsigned-char")
+ # SIMD instruction sets support
+ set(MMSEQS_ARCH "")
+ if (HAVE_AVX2)
+- if (CMAKE_COMPILER_IS_CLANG)
+- set(MMSEQS_ARCH "${MMSEQS_ARCH} -mavx2 -mcx16")
+- else ()
+- set(MMSEQS_ARCH "${MMSEQS_ARCH} -mavx2 -mcx16 -Wa,-q")
+- endif ()
+ set(X64 1)
+ elseif (HAVE_SSE4_1)
+- set(MMSEQS_ARCH "${MMSEQS_ARCH} -msse4.1 -mcx16")
+ set(X64 1)
+ elseif (HAVE_SSE2)
+- set(MMSEQS_ARCH "${MMSEQS_ARCH} -msse2")
+ set(DISABLE_IPS4O 1)
+ set(X64 1)
+ elseif (HAVE_POWER9)
+- set(MMSEQS_ARCH "${MMSEQS_ARCH} -mcpu=power9 -mvsx")
+ set(PPC64 1)
+ elseif (HAVE_POWER8)
+- set(MMSEQS_ARCH "${MMSEQS_ARCH} -mcpu=power8 -mvsx")
+ set(PPC64 1)
+ elseif (HAVE_ARM8)
+- set(MMSEQS_ARCH "${MMSEQS_ARCH} -march=armv8-a+simd")
+ set(ARM 1)
+ elseif (HAVE_S390X)
+- set(MMSEQS_ARCH "${MMSEQS_ARCH} -mzarch -march=z14")
+ set(ZARCH 1)
+ endif ()
+
+@@ -105,19 +94,6 @@ if (NATIVE_ARCH AND (MMSEQS_ARCH STREQUAL ""))
+ endif ()
+ if (PPC64)
+ set(MMSEQS_ARCH "-mcpu=native")
+- else ()
+- # clang has a problem with march=native on travis
+- if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.0.0")
+- set(MMSEQS_ARCH "${SSE_FLAGS}")
+- else()
+- set(MMSEQS_ARCH "-march=native")
+- endif()
+- endif ()
+- else ()
+- if (PPC64)
+- set(MMSEQS_ARCH "-mcpu=native")
+- else ()
+- set(MMSEQS_ARCH "-march=native")
+ endif ()
+ endif ()
+ endif ()
diff --git a/biology/mmseqs2/pkg-descr b/biology/mmseqs2/pkg-descr
new file mode 100644
index 000000000000..128056f15f39
--- /dev/null
+++ b/biology/mmseqs2/pkg-descr
@@ -0,0 +1,10 @@
+MMseqs2 (Many-against-Many sequence searching) is a software suite to search
+and cluster huge protein and nucleotide sequence sets. MMseqs2 is open source
+GPL-licensed software implemented in C++ for Linux, MacOS, and (as beta
+version, via cygwin) Windows. 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.
+
+WWW: https://github.com/soedinglab/MMseqs2
More information about the dev-commits-ports-all
mailing list