Import jellyfish-2.2.0 as wip/jellyfish2.
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.
This commit is contained in:
parent
6f3ade5810
commit
d71018f3dd
6 changed files with 160 additions and 0 deletions
5
jellyfish2/DESCR
Normal file
5
jellyfish2/DESCR
Normal file
|
@ -0,0 +1,5 @@
|
|||
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.
|
59
jellyfish2/Makefile
Normal file
59
jellyfish2/Makefile
Normal file
|
@ -0,0 +1,59 @@
|
|||
# $NetBSD$
|
||||
#
|
||||
###########################################################
|
||||
# Generated by fbsd2pkg #
|
||||
###########################################################
|
||||
|
||||
###########################################################
|
||||
# Unconverted and partially converted FreeBSD port syntax:
|
||||
|
||||
## Created by: Jason Bacon <bacon4000@gmail.com>
|
||||
## $FreeBSD$
|
||||
#USE_LDCONFIG= yes
|
||||
#post-stage:
|
||||
# ${MV} ${DESTDIR}${PREFIX}/lib/pkgconfig/* \
|
||||
# ${DESTDIR}${PREFIX}/libdata/pkgconfig
|
||||
#.include <bsd.port.mk>
|
||||
|
||||
DISTNAME= jellyfish-${PORTVERSION}
|
||||
CATEGORIES= biology
|
||||
MASTER_SITES= ftp://ftp.genome.umd.edu/pub/jellyfish/
|
||||
|
||||
MAINTAINER= dsiercks@uwm.edu
|
||||
HOMEPAGE= http://www.genome.umd.edu/jellyfish.html
|
||||
COMMENT= Fast, memory-efficient counting of k-mers in DNA
|
||||
# Check this
|
||||
LICENSE= gnu-gpl-v3
|
||||
|
||||
# FIXME: Only for amd64
|
||||
# Test and change if necessary.
|
||||
# MAKE_JOBS_SAFE= no
|
||||
|
||||
# Just assuming C and C++: Adjust this!
|
||||
USE_LANGUAGES= c c++
|
||||
USE_LIBTOOL= yes
|
||||
GNU_CONFIGURE= yes
|
||||
|
||||
CFLAGS= -fopenmp
|
||||
|
||||
CXXFLAGS+= -std=c++0x
|
||||
|
||||
FFLAGS= -fopenmp
|
||||
|
||||
PORTVERSION= 2.2.0
|
||||
DATADIR= ${PREFIX}/share/jellyfish
|
||||
DOCSDIR= ${PREFIX}/share/doc/jellyfish
|
||||
|
||||
# Sets OPSYS, OS_VERSION, MACHINE_ARCH, etc..
|
||||
# .include "../../mk/bsd.prefs.mk"
|
||||
|
||||
# Keep this if there are user-selectable options.
|
||||
# .include "options.mk"
|
||||
|
||||
# Specify which directories to create before install.
|
||||
# You should only need this if using your own install target.
|
||||
INSTALLATION_DIRS= bin lib ${PKGMANDIR}/man1 share/doc share/examples
|
||||
|
||||
# Linux doesn't have zlib in the base, so just in case...
|
||||
# .include "../../devel/zlib/buildlink3.mk"
|
||||
.include "../../mk/bsd.pkg.mk"
|
53
jellyfish2/PLIST
Normal file
53
jellyfish2/PLIST
Normal file
|
@ -0,0 +1,53 @@
|
|||
@comment $NetBSD$
|
||||
bin/jellyfish
|
||||
include/${PKGNAME}/jellyfish/allocators_mmap.hpp
|
||||
include/${PKGNAME}/jellyfish/atomic_bits_array.hpp
|
||||
include/${PKGNAME}/jellyfish/atomic_field.hpp
|
||||
include/${PKGNAME}/jellyfish/atomic_gcc.hpp
|
||||
include/${PKGNAME}/jellyfish/backtrace.hpp
|
||||
include/${PKGNAME}/jellyfish/binary_dumper.hpp
|
||||
include/${PKGNAME}/jellyfish/bloom_common.hpp
|
||||
include/${PKGNAME}/jellyfish/bloom_counter2.hpp
|
||||
include/${PKGNAME}/jellyfish/bloom_filter.hpp
|
||||
include/${PKGNAME}/jellyfish/circular_buffer.hpp
|
||||
include/${PKGNAME}/jellyfish/compare_and_swap.hpp
|
||||
include/${PKGNAME}/jellyfish/cooperative_pool2.hpp
|
||||
include/${PKGNAME}/jellyfish/cooperative_pool.hpp
|
||||
include/${PKGNAME}/jellyfish/cpp_array.hpp
|
||||
include/${PKGNAME}/jellyfish/divisor.hpp
|
||||
include/${PKGNAME}/jellyfish/dumper.hpp
|
||||
include/${PKGNAME}/jellyfish/err.hpp
|
||||
include/${PKGNAME}/jellyfish/file_header.hpp
|
||||
include/${PKGNAME}/jellyfish/generator_manager.hpp
|
||||
include/${PKGNAME}/jellyfish/generic_file_header.hpp
|
||||
include/${PKGNAME}/jellyfish/hash_counter.hpp
|
||||
include/${PKGNAME}/jellyfish/int128.hpp
|
||||
include/${PKGNAME}/jellyfish/jellyfish.hpp
|
||||
include/${PKGNAME}/jellyfish/json.h
|
||||
include/${PKGNAME}/jellyfish/large_hash_array.hpp
|
||||
include/${PKGNAME}/jellyfish/large_hash_iterator.hpp
|
||||
include/${PKGNAME}/jellyfish/locks_pthread.hpp
|
||||
include/${PKGNAME}/jellyfish/mapped_file.hpp
|
||||
include/${PKGNAME}/jellyfish/mer_dna_bloom_counter.hpp
|
||||
include/${PKGNAME}/jellyfish/mer_dna.hpp
|
||||
include/${PKGNAME}/jellyfish/mer_heap.hpp
|
||||
include/${PKGNAME}/jellyfish/mer_iterator.hpp
|
||||
include/${PKGNAME}/jellyfish/mer_overlap_sequence_parser.hpp
|
||||
include/${PKGNAME}/jellyfish/mer_qual_iterator.hpp
|
||||
include/${PKGNAME}/jellyfish/misc.hpp
|
||||
include/${PKGNAME}/jellyfish/offsets_key_value.hpp
|
||||
include/${PKGNAME}/jellyfish/rectangular_binary_matrix.hpp
|
||||
include/${PKGNAME}/jellyfish/simple_circular_buffer.hpp
|
||||
include/${PKGNAME}/jellyfish/sorted_dumper.hpp
|
||||
include/${PKGNAME}/jellyfish/stdio_filebuf.hpp
|
||||
include/${PKGNAME}/jellyfish/storage.hpp
|
||||
include/${PKGNAME}/jellyfish/stream_iterator.hpp
|
||||
include/${PKGNAME}/jellyfish/stream_manager.hpp
|
||||
include/${PKGNAME}/jellyfish/text_dumper.hpp
|
||||
include/${PKGNAME}/jellyfish/thread_exec.hpp
|
||||
include/${PKGNAME}/jellyfish/time.hpp
|
||||
include/${PKGNAME}/jellyfish/token_ring.hpp
|
||||
include/${PKGNAME}/jellyfish/whole_sequence_parser.hpp
|
||||
lib/libjellyfish-2.0.la
|
||||
lib/pkgconfig/jellyfish-2.0.pc
|
||||
man/man1/jellyfish.1
|
1
jellyfish2/TODO
Normal file
1
jellyfish2/TODO
Normal file
|
@ -0,0 +1 @@
|
|||
Clean up and test.
|
5
jellyfish2/distinfo
Normal file
5
jellyfish2/distinfo
Normal file
|
@ -0,0 +1,5 @@
|
|||
$NetBSD$
|
||||
|
||||
SHA1 (jellyfish-2.2.0.tar.gz) = 9ac4817aed0c61a1819b913193b0e312fa4fa9bd
|
||||
RMD160 (jellyfish-2.2.0.tar.gz) = 01e5847c72bf1bf92989b1158988605b1155aec4
|
||||
Size (jellyfish-2.2.0.tar.gz) = 1085913 bytes
|
37
jellyfish2/patches/patch-include_jellyfish_file__header.hpp
Normal file
37
jellyfish2/patches/patch-include_jellyfish_file__header.hpp
Normal file
|
@ -0,0 +1,37 @@
|
|||
$NetBSD$
|
||||
|
||||
--- include/jellyfish/file_header.hpp.orig 2013-12-13 19:04:16 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();
|
Loading…
Reference in a new issue