aboutsummaryrefslogtreecommitdiff
blob: 3dd599b83167593904baddcfab6ddff375de0e64 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7

inherit perl-functions

DESCRIPTION="Detect sequencing project contaminants by mapping reads to taxonomic groups"
HOMEPAGE="https://ccb.jhu.edu/software/kraken"
SRC_URI="https://github.com/DerrickWood/kraken/archive/v${PV}.tar.gz -> ${P}.tar.gz"

LICENSE="GPL-3"
SLOT="1"
KEYWORDS="~amd64"

DEPEND=""
RDEPEND="${DEPEND}
	dev-lang/perl
	net-misc/wget
	sci-biology/jellyfish:1
"

src_prepare(){
	default
	sed -e 's/^CXX = /CXX ?= /' -e 's/^CXXFLAGS = /CXXFLAGS ?= /' -i src/Makefile || die
	echo "exit 0" >> install_kraken.sh || die
}

src_compile(){
	./install_kraken.sh destdir || die
}

src_install(){
	dodoc -r docs
	perl_set_version
	perl_domodule destdir/*.pm
	dosym ../../"${VENDOR_LIB//${EPREFIX/}}/krakenlib.pm" /usr/bin/krakenlib.pm
	insinto /usr/share/${PN}/util
	doins destdir/*.pl
	chmod -R a+rx "${ED}/usr/share/${PN}/util"
	rm -f destdir/krakenlib.pm
	dobin destdir/*
}

pkg_postinst(){
	ewarn "Kraken may optionally need <=sci-biology/jellyfish-2 if you want to build your own dbs"
	ewarn "Kraken needs high network bandwidth for its huge downloads, be sure to read"
	ewarn "https://ccb.jhu.edu/software/kraken and prepare at least 160GB of disk space"
	ewarn "Consider placing the db files in ramfs (needs root permissions) taking >75GB RAM"
	ewarn "Results can be visualized with https://sourceforge.net/p/krona/home/krona"
}