aboutsummaryrefslogtreecommitdiff
path: root/biology/vsearch
diff options
context:
space:
mode:
authorJason W. Bacon <jwb@FreeBSD.org>2019-05-09 21:28:49 +0000
committerJason W. Bacon <jwb@FreeBSD.org>2019-05-09 21:28:49 +0000
commit0be076362488a8363e10f7f09da6fcea65c644ab (patch)
tree1936ec26574e32d612abe5a64291c238e0961b44 /biology/vsearch
parente0083390a09cda9fe8fc95bfb969f4d137446829 (diff)
downloadports-0be076362488a8363e10f7f09da6fcea65c644ab.tar.gz
ports-0be076362488a8363e10f7f09da6fcea65c644ab.zip
biology/vsearch: Versatile open-source tool for metagenomics
VSEARCH supports de novo and reference based chimera detection, clustering, full-length and prefix dereplication, rereplication, reverse complementation, masking, all-vs-all pairwise global alignment, exact and global alignment searching, shuffling, subsampling and sorting. It also supports FASTQ file analysis, filtering, conversion and merging of paired-end reads. The aim of this project is to create an alternative to the USEARCH tool developed by Robert C. Edgar (2010).
Notes
Notes: svn path=/head/; revision=501147
Diffstat (limited to 'biology/vsearch')
-rw-r--r--biology/vsearch/Makefile32
-rw-r--r--biology/vsearch/distinfo3
-rw-r--r--biology/vsearch/files/patch-configure.ac12
-rw-r--r--biology/vsearch/files/patch-src_Makefile.am18
-rw-r--r--biology/vsearch/files/patch-src_city.cc20
-rw-r--r--biology/vsearch/files/patch-src_vsearch.h67
-rw-r--r--biology/vsearch/pkg-descr10
7 files changed, 162 insertions, 0 deletions
diff --git a/biology/vsearch/Makefile b/biology/vsearch/Makefile
new file mode 100644
index 000000000000..eed8a9d773c9
--- /dev/null
+++ b/biology/vsearch/Makefile
@@ -0,0 +1,32 @@
+# $FreeBSD$
+
+PORTNAME= vsearch
+DISTVERSIONPREFIX= v
+DISTVERSION= 2.13.3
+CATEGORIES= biology
+
+MAINTAINER= jwb@FreeBSD.org
+COMMENT= Versatile open-source tool for metagenomics
+
+LICENSE= GPLv3
+LICENSE_FILE= ${WRKSRC}/LICENSE.txt
+
+# Note: For PPC need power8 or later, little endian
+ONLY_FOR_ARCHS= aarch64 amd64 powerpc64
+ONLY_FOR_ARCHS_REASON= Explicitly enumerated by upstream developers
+
+LIB_DEPENDS= libsysinfo.so:devel/libsysinfo
+
+USES= autoreconf gmake localbase
+USE_GITHUB= yes
+
+GH_ACCOUNT= torognes
+GNU_CONFIGURE= yes
+
+PLIST_FILES= bin/vsearch man/man1/vsearch.1.gz
+PORTDOCS= *
+
+OPTIONS_DEFINE= DOCS
+OPTIONS_SUB= yes
+
+.include <bsd.port.mk>
diff --git a/biology/vsearch/distinfo b/biology/vsearch/distinfo
new file mode 100644
index 000000000000..584b0d4a06ae
--- /dev/null
+++ b/biology/vsearch/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1557339663
+SHA256 (torognes-vsearch-v2.13.3_GH0.tar.gz) = e5f34ece28b76403d3ba4a673eca41178fe399c35a1023dbc87d0c0da5efaa52
+SIZE (torognes-vsearch-v2.13.3_GH0.tar.gz) = 233846
diff --git a/biology/vsearch/files/patch-configure.ac b/biology/vsearch/files/patch-configure.ac
new file mode 100644
index 000000000000..94578406e2fd
--- /dev/null
+++ b/biology/vsearch/files/patch-configure.ac
@@ -0,0 +1,12 @@
+--- configure.ac.orig 2019-05-09 20:58:52 UTC
++++ configure.ac
+@@ -14,9 +14,6 @@ MACOSX_DEPLOYMENT_TARGET="10.9"
+
+ # Set default gcc and g++ options
+
+-CFLAGS='-g'
+-CXXFLAGS='-g'
+-
+ # Checks for programs.
+ AC_PROG_CXX
+ AC_PROG_RANLIB
diff --git a/biology/vsearch/files/patch-src_Makefile.am b/biology/vsearch/files/patch-src_Makefile.am
new file mode 100644
index 000000000000..e54c9a606035
--- /dev/null
+++ b/biology/vsearch/files/patch-src_Makefile.am
@@ -0,0 +1,18 @@
+--- src/Makefile.am.orig 2019-04-30 11:57:32 UTC
++++ src/Makefile.am
+@@ -1,12 +1,12 @@
+ bin_PROGRAMS = $(top_builddir)/bin/vsearch
+
+ if TARGET_PPC
+-AM_CXXFLAGS=-Wall -Wsign-compare -O3 -g -mcpu=power8
++AM_CXXFLAGS=-Wall -Wsign-compare
+ else
+ if TARGET_AARCH64
+-AM_CXXFLAGS=-Wall -Wsign-compare -O3 -g -march=armv8-a+simd -mtune=generic
++AM_CXXFLAGS=-Wall -Wsign-compare
+ else
+-AM_CXXFLAGS=-Wall -Wsign-compare -O3 -g -march=x86-64 -mtune=generic
++AM_CXXFLAGS=-Wall -Wsign-compare
+ endif
+ endif
+
diff --git a/biology/vsearch/files/patch-src_city.cc b/biology/vsearch/files/patch-src_city.cc
new file mode 100644
index 000000000000..a379a802bc90
--- /dev/null
+++ b/biology/vsearch/files/patch-src_city.cc
@@ -0,0 +1,20 @@
+$NetBSD$
+
+# Portability
+
+--- src/city.cc.orig 2019-04-30 11:57:32 UTC
++++ src/city.cc
+@@ -60,6 +60,13 @@ static uint32 UNALIGNED_LOAD32(const char *p) {
+ #define bswap_32(x) OSSwapInt32(x)
+ #define bswap_64(x) OSSwapInt64(x)
+
++#elif defined(__FreeBSD__)
++
++#include <sys/endian.h>
++
++#define bswap_32(x) bswap32(x)
++#define bswap_64(x) bswap64(x)
++
+ #elif defined(__NetBSD__)
+
+ #include <sys/types.h>
diff --git a/biology/vsearch/files/patch-src_vsearch.h b/biology/vsearch/files/patch-src_vsearch.h
new file mode 100644
index 000000000000..2e74ffff8b56
--- /dev/null
+++ b/biology/vsearch/files/patch-src_vsearch.h
@@ -0,0 +1,67 @@
+$NetBSD$
+
+# Add FreeBSD and NetBSD support
+
+--- src/vsearch.h.orig 2019-04-30 11:57:32 UTC
++++ src/vsearch.h
+@@ -138,30 +138,50 @@
+ #define bswap_32(x) _byteswap_ulong(x)
+ #define bswap_64(x) _byteswap_uint64(x)
+
+-#else
++#elif defined(__APPLE__)
+
+-#ifdef __APPLE__
+-
+ #define PROG_OS "macos"
+ #include <sys/sysctl.h>
+ #include <libkern/OSByteOrder.h>
++#include <sys/resource.h>
+ #define bswap_16(x) OSSwapInt16(x)
+ #define bswap_32(x) OSSwapInt32(x)
+ #define bswap_64(x) OSSwapInt64(x)
+
+-#else
++#elif defined(__linux__)
+
+-#ifdef __linux__
+ #define PROG_OS "linux"
+-#else
+-#define PROG_OS "unknown"
+-#endif
+-
+ #include <sys/sysinfo.h>
+ #include <byteswap.h>
++#include <sys/resource.h>
+
+-#endif
++#elif defined(__FreeBSD__)
+
++#define PROG_OS "freebsd"
++#include <sys/sysinfo.h>
++#include <sys/resource.h>
++#include <sys/endian.h>
++#define bswap_16(x) bswap16(x)
++#define bswap_32(x) bswap32(x)
++#define bswap_64(x) bswap64(x)
++
++#elif defined(__NetBSD__)
++
++#define PROG_OS "netbsd"
++#include <sys/resource.h>
++#include <sys/types.h>
++#include <sys/bswap.h>
++#define bswap_16(x) bswap16(x)
++#define bswap_32(x) bswap32(x)
++#define bswap_64(x) bswap64(x)
++// Alters behavior, but NetBSD 7 does not have getopt_long_only()
++#define getopt_long_only getopt_long
++
++#else // Other Unix
++
++#define PROG_OS "unknown"
++#include <sys/sysinfo.h>
++#include <byteswap.h>
+ #include <sys/resource.h>
+
+ #endif
diff --git a/biology/vsearch/pkg-descr b/biology/vsearch/pkg-descr
new file mode 100644
index 000000000000..86302327f8bf
--- /dev/null
+++ b/biology/vsearch/pkg-descr
@@ -0,0 +1,10 @@
+VSEARCH supports de novo and reference based chimera detection, clustering,
+full-length and prefix dereplication, rereplication, reverse complementation,
+masking, all-vs-all pairwise global alignment, exact and global alignment
+searching, shuffling, subsampling and sorting. It also supports FASTQ file
+analysis, filtering, conversion and merging of paired-end reads.
+
+The aim of this project is to create an alternative to the USEARCH tool
+developed by Robert C. Edgar (2010).
+
+WWW: https://github.com/torognes/vsearch