mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-28 05:29:48 +00:00
Jellyfish is a tool for fast, memory-efficient counting of k-mers in DNA.
A k-mer is a substring of length k, and counting the occurrences of all such substrings is a central step in many analyses of DNA sequence. JELLYFISH can count k-mers quickly by using an efficient encoding of a hash table and by exploiting the "compare-and-swap" CPU instruction to increase parallelism. WWW: http://www.genome.umd.edu/jellyfish.html PR: 207929 Submitted by: bacon4000@gmail.com
This commit is contained in:
parent
b72580f6d4
commit
ee6e0c4336
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=411785
@ -38,6 +38,7 @@
|
||||
SUBDIR += htslib
|
||||
SUBDIR += iolib
|
||||
SUBDIR += jalview
|
||||
SUBDIR += jellyfish
|
||||
SUBDIR += lagan
|
||||
SUBDIR += lamarc
|
||||
SUBDIR += libgtextutils
|
||||
|
46
biology/jellyfish/Makefile
Normal file
46
biology/jellyfish/Makefile
Normal file
@ -0,0 +1,46 @@
|
||||
# Created by: Jason Bacon <bacon4000@gmail.com>
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= jellyfish
|
||||
PORTVERSION= 2.2.4
|
||||
DISTVERSIONPREFIX= v
|
||||
CATEGORIES= biology
|
||||
|
||||
MAINTAINER= bacon4000@gmail.com
|
||||
COMMENT= Fast, memory-efficient counting of k-mers in DNA
|
||||
|
||||
LICENSE= GPLv3+
|
||||
LICENSE_FILE= ${WRKSRC}/LICENSE
|
||||
|
||||
BUILD_DEPENDS= yaggo:${PORTSDIR}/devel/yaggo
|
||||
|
||||
GNU_CONFIGURE= yes
|
||||
|
||||
USES= autoreconf compiler:c++11-lib gmake \
|
||||
libtool pkgconfig
|
||||
USE_LDCONFIG= yes
|
||||
|
||||
USE_GITHUB= yes
|
||||
GH_ACCOUNT= gmarcais
|
||||
GH_PROJECT= Jellyfish
|
||||
|
||||
INSTALL_TARGET= install-strip
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
# SSE code assumes amd64 features
|
||||
.if ${ARCH} != "amd64"
|
||||
.if ${OSVERSION} < 1000000
|
||||
IGNORE= multiple code issues on i386 < 10.0-RELEASE
|
||||
.else
|
||||
CONFIGURE_ARGS+=--without-sse
|
||||
.endif
|
||||
.endif
|
||||
|
||||
# configure does not support --with-pkgconfigdir
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} \
|
||||
-e 's|$$(libdir)/pkgconfig|${PREFIX}/libdata/pkgconfig|g' \
|
||||
${WRKSRC}/Makefile.am
|
||||
|
||||
.include <bsd.port.post.mk>
|
2
biology/jellyfish/distinfo
Normal file
2
biology/jellyfish/distinfo
Normal file
@ -0,0 +1,2 @@
|
||||
SHA256 (gmarcais-Jellyfish-v2.2.4_GH0.tar.gz) = 44b6478aed63b859b8287d72b4f9bfb5d513fed334efbc8a9e5783da12ecb3ec
|
||||
SIZE (gmarcais-Jellyfish-v2.2.4_GH0.tar.gz) = 658653
|
@ -0,0 +1,35 @@
|
||||
--- include/jellyfish/file_header.hpp.orig 2015-10-27 14:32:31 UTC
|
||||
+++ include/jellyfish/file_header.hpp
|
||||
@@ -21,6 +21,8 @@
|
||||
#include <jellyfish/generic_file_header.hpp>
|
||||
#include <jellyfish/rectangular_binary_matrix.hpp>
|
||||
|
||||
+using std::string;
|
||||
+
|
||||
namespace jellyfish {
|
||||
/// A header with jellyfish hash specific entries: size, matrix, etc.
|
||||
class file_header : public generic_file_header {
|
||||
@@ -42,7 +44,10 @@ public:
|
||||
|
||||
RectangularBinaryMatrix matrix(int i = 1) const {
|
||||
std::string name("matrix");
|
||||
- name += std::to_string((long long int)i); // Cast to make gcc4.4 happy!
|
||||
+ char buff[100];
|
||||
+ // name += std::to_string((long long int)i); // Cast to make gcc4.4 happy!
|
||||
+ snprintf(buff, 99, "%d", i);
|
||||
+ name += buff;
|
||||
const unsigned int r = root_[name]["r"].asUInt();
|
||||
const unsigned int c = root_[name]["c"].asUInt();
|
||||
std::vector<uint64_t> raw(c, (uint64_t)0);
|
||||
@@ -53,7 +58,10 @@ public:
|
||||
|
||||
void matrix(const RectangularBinaryMatrix& m, int i = 1) {
|
||||
std::string name("matrix");
|
||||
- name += std::to_string((long long int)i);
|
||||
+ char buff[100];
|
||||
+ // name += std::to_string((long long int)i);
|
||||
+ snprintf(buff, 99, "%d", i);
|
||||
+ name += buff;
|
||||
root_[name].clear();
|
||||
root_[name]["r"] = m.r();
|
||||
root_[name]["c"] = m.c();
|
7
biology/jellyfish/pkg-descr
Normal file
7
biology/jellyfish/pkg-descr
Normal file
@ -0,0 +1,7 @@
|
||||
Jellyfish is a tool for fast, memory-efficient counting of k-mers in DNA.
|
||||
A k-mer is a substring of length k, and counting the occurrences of all such
|
||||
substrings is a central step in many analyses of DNA sequence. JELLYFISH can
|
||||
count k-mers quickly by using an efficient encoding of a hash table and by
|
||||
exploiting the "compare-and-swap" CPU instruction to increase parallelism.
|
||||
|
||||
WWW: http://www.genome.umd.edu/jellyfish.html
|
55
biology/jellyfish/pkg-plist
Normal file
55
biology/jellyfish/pkg-plist
Normal file
@ -0,0 +1,55 @@
|
||||
bin/jellyfish
|
||||
include/jellyfish-2.2.4/jellyfish/allocators_mmap.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/atomic_bits_array.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/atomic_field.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/atomic_gcc.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/backtrace.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/binary_dumper.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/bloom_common.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/bloom_counter2.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/bloom_filter.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/circular_buffer.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/compare_and_swap.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/cooperative_pool.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/cooperative_pool2.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/cpp_array.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/divisor.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/dumper.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/err.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/file_header.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/generator_manager.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/generic_file_header.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/hash_counter.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/int128.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/jellyfish.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/json.h
|
||||
include/jellyfish-2.2.4/jellyfish/large_hash_array.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/large_hash_iterator.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/locks_pthread.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/mapped_file.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/mer_dna.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/mer_dna_bloom_counter.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/mer_heap.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/mer_iterator.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/mer_overlap_sequence_parser.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/mer_qual_iterator.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/misc.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/offsets_key_value.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/rectangular_binary_matrix.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/simple_circular_buffer.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/sorted_dumper.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/stdio_filebuf.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/storage.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/stream_iterator.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/stream_manager.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/text_dumper.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/thread_exec.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/time.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/token_ring.hpp
|
||||
include/jellyfish-2.2.4/jellyfish/whole_sequence_parser.hpp
|
||||
lib/libjellyfish-2.0.a
|
||||
lib/libjellyfish-2.0.so
|
||||
lib/libjellyfish-2.0.so.2
|
||||
lib/libjellyfish-2.0.so.2.0.0
|
||||
libdata/pkgconfig/jellyfish-2.0.pc
|
||||
man/man1/jellyfish.1.gz
|
Loading…
Reference in New Issue
Block a user