summaryrefslogtreecommitdiff
path: root/sci-biology/mothur
diff options
context:
space:
mode:
Diffstat (limited to 'sci-biology/mothur')
-rw-r--r--sci-biology/mothur/Manifest7
-rw-r--r--sci-biology/mothur/files/mothur-1.27.0-makefile.patch52
-rw-r--r--sci-biology/mothur/files/mothur-1.27.0-overflows.patch93
-rw-r--r--sci-biology/mothur/metadata.xml8
-rw-r--r--sci-biology/mothur/mothur-1.27.0-r1.ebuild43
5 files changed, 203 insertions, 0 deletions
diff --git a/sci-biology/mothur/Manifest b/sci-biology/mothur/Manifest
new file mode 100644
index 000000000000..c6d74e207412
--- /dev/null
+++ b/sci-biology/mothur/Manifest
@@ -0,0 +1,7 @@
+AUX mothur-1.27.0-makefile.patch 1196 SHA256 970d789187d58081bda269a863d965c1601ee18e09c39aa6dcaba2ef0aa89f5a SHA512 8a78ddbc926d4e116deed440fda8431ccbca3299ac182fc84850259187dc130cc43fb6f23845d055d998293fa43f94cbe35930242c5f6aa049f8275ad3e42adf WHIRLPOOL c0ae488479f430f212ff2158b74aa61ef9547b865be1db7ca3b546edf48907aa9aead69acfbc02c35b7d675209ac8f7d267a8f9a98ff167a0f73d0fc2efdd6ea
+AUX mothur-1.27.0-overflows.patch 4894 SHA256 7b1f25400aa8f78ef55bcbd7d613eb877ce2774fc2e9492b6f9c544266661b5b SHA512 aa392b2060cecc38006a7ac50aaa8e4249a020029234ac2abdc33441b12a09faabb0335144ff4d888e55a1da1838a45347981f49f6658f3546a54a30b5e2133a WHIRLPOOL 7f0f8089b938c6a30ee13e217e21a4628ca56490aba36e7b6b14657ec70f3ba043243c80088be6b3e3d145835d4c3e3e3ee68d073f6556383a06e018f0cd716f
+DIST mothur-1.27.0.zip 7095054 SHA256 7521d0dfc849dc9ef707bf83032e471966914b9833247c49e5d30b8d9281a6c7 SHA512 81821ca95d4ce3f0d1e6aa920c4fe3fddd70f716157312ed0590c1c4ad728e6786bfe79f6badddcfb060ed5d1996cc1b5062c320a59209fef35f68e687ba3dd5 WHIRLPOOL 32e5c9c2be6e593b2dbc64be38c49b4dec3ea048cd3c972cf948136b394608a2dc168be58b7fb500a17fc6a152b7777fcd09b3f9fb3bf60c7dd92d043a4bf361
+EBUILD mothur-1.27.0-r1.ebuild 881 SHA256 f485ea8a591e1fe7f1f121dda9b0dd8c58d301e86f947f8fe5cf98eb07ee2b8b SHA512 6f2fcb2d296ef3ef33786b579106f14ee0dfe05a50b53f5e0225c477598da1171cbd88e84f0fc7df5a973c221319a2fa23fb5cbddb339e7ede4e54b34b223be2 WHIRLPOOL 3a0a4e95ca0a7cc73e035f975d369b07ca5a5f75beea46f195856ee66cd64ac066606c4212f6676ecaac5b25182e4ce3fb2c3e3db90175de446165acc2522bdd
+MISC ChangeLog 2910 SHA256 d1271431f72a4b8d1d9fd37fdb2cafa07b05167a80f67859740b2b547e540307 SHA512 f52727a3fb8ac2b61d833e4484aa7b597c4e1ee521d816403a98d86a2256968034ef4034cd61f1221d5745d5ca5aca9a4b398d56848d262084be99473f8c1a7d WHIRLPOOL d35766e69fb50bba2451c957fbfc80bbb972a7a1b393b623c1adad29623992c5c37d29c620a2816d68f2d9b7f6aa5a465110eacec6043686f012877719825588
+MISC ChangeLog-2015 2717 SHA256 0951ac13aa91ee601c257ec73a3b8261d0ab456853edb2af7c88abb96a4c7c23 SHA512 1f1cc58996af9e116ccedaaf6609b3227208939d13b027ef70f0694edf906b759fac42d57a37a5537b1ce2b8fd67a40a5dfc37e0dd0158fa6301e91a48481163 WHIRLPOOL 955bd00c7dc0a234fde17e2e82b203fbff7182b8d0eb4abc933a67b0d9a3d281c59a5bcd0034a8c171cc565d683c3b5ab2625c5845c8fd5637a0174a50008e48
+MISC metadata.xml 267 SHA256 b3535fccca0fc8511c1245214c1a7c105447b35f21093bda132991874ce82d48 SHA512 91ab266d9ab24401bc0fec759c5b6cfcf44a3c5669fc31c7301d79770839bb5dfa0e155d949392ef06176b4a0b2c32b91b1b54b0027f972db61f0a5e54644403 WHIRLPOOL d841a2f928c50434f2e8c65f583ea3aa2d04e5cebd664b1531ab5373260f735219131991000bbb2b21aa3add05dcdce29548b78eac8d8c0eced6dc5505b64e13
diff --git a/sci-biology/mothur/files/mothur-1.27.0-makefile.patch b/sci-biology/mothur/files/mothur-1.27.0-makefile.patch
new file mode 100644
index 000000000000..52a02585df14
--- /dev/null
+++ b/sci-biology/mothur/files/mothur-1.27.0-makefile.patch
@@ -0,0 +1,52 @@
+ makefile | 14 ++++++--------
+ 1 files changed, 6 insertions(+), 8 deletions(-)
+
+diff --git a/makefile b/makefile
+index db7c904..109488f 100644
+--- a/makefile
++++ b/makefile
+@@ -10,18 +10,18 @@
+ #
+
+ USEMPI ?= no
+-64BIT_VERSION ?= yes
++64BIT_VERSION ?= no
+ USEREADLINE ?= yes
+ CYGWIN_BUILD ?= no
+ USECOMPRESSION ?= no
+ MOTHUR_FILES="\"Enter_your_default_path_here\""
+ RELEASE_DATE = "\"8/8/2012\""
+ VERSION = "\"1.27.0\""
+-FORTAN_COMPILER = gfortran
+-FORTRAN_FLAGS =
++FORTAN_COMPILER = ${FC}
++FORTRAN_FLAGS = ${FCFLAGS}
+
+ # Optimize to level 3:
+-CXXFLAGS += -O3
++#CXXFLAGS += -O3
+
+ ifeq ($(strip $(64BIT_VERSION)),yes)
+ #if you are using centos uncomment the following lines
+@@ -69,7 +69,7 @@ endif
+
+
+ ifeq ($(strip $(USEMPI)),yes)
+- CXX = mpic++
++# CXX = mpic++
+ CXXFLAGS += -DUSE_MPI
+ endif
+
+@@ -95,11 +95,9 @@ OBJECTS=$(patsubst %.cpp,%.o,$(wildcard *.cpp))
+ OBJECTS+=$(patsubst %.c,%.o,$(wildcard *.c))
+ OBJECTS+=$(patsubst %.f,%.o,$(wildcard *.f))
+
+-mothur : fortranSource $(OBJECTS) uchime
++mothur : fortranSource $(OBJECTS)
+ $(CXX) $(LDFLAGS) $(TARGET_ARCH) -o $@ $(OBJECTS) $(LIBS)
+
+- strip mothur
+-
+ uchime:
+ cd uchime_src && ./mk && mv uchime .. && cd ..
+
diff --git a/sci-biology/mothur/files/mothur-1.27.0-overflows.patch b/sci-biology/mothur/files/mothur-1.27.0-overflows.patch
new file mode 100644
index 000000000000..0b612cf7b529
--- /dev/null
+++ b/sci-biology/mothur/files/mothur-1.27.0-overflows.patch
@@ -0,0 +1,93 @@
+ chimerauchimecommand.cpp | 2 +-
+ clearcutcommand.cpp | 32 ++++++++++++++++----------------
+ 2 files changed, 17 insertions(+), 17 deletions(-)
+
+diff --git a/chimerauchimecommand.cpp b/chimerauchimecommand.cpp
+index bd31c19..2070840 100644
+--- a/chimerauchimecommand.cpp
++++ b/chimerauchimecommand.cpp
+@@ -1264,7 +1264,7 @@ int ChimeraUchimeCommand::driver(string outputFName, string filename, string acc
+ }
+
+ if (ucl) {
+- char* tempucl = new char[5];
++ char* tempucl = new char[6];
+ strcpy(tempucl, "--ucl");
+ cPara.push_back(tempucl);
+ }
+diff --git a/clearcutcommand.cpp b/clearcutcommand.cpp
+index 6a0eb25..2e8164e 100644
+--- a/clearcutcommand.cpp
++++ b/clearcutcommand.cpp
+@@ -269,35 +269,35 @@ int ClearcutCommand::execute() {
+
+ vector<char*> cPara;
+
+- char* tempClearcut = new char[8];
++ char* tempClearcut = new char[16];
+ strcpy(tempClearcut, "clearcut");
+ cPara.push_back(tempClearcut);
+
+ //you gave us a distance matrix
+- if (phylipfile != "") { char* temp = new char[10]; strcpy(temp, "--distance"); cPara.push_back(temp); }
++ if (phylipfile != "") { char* temp = new char[16]; strcpy(temp, "--distance"); cPara.push_back(temp); }
+
+ //you gave us a fastafile
+- if (fastafile != "") { char* temp = new char[11]; strcpy(temp, "--alignment"); cPara.push_back(temp); }
++ if (fastafile != "") { char* temp = new char[16]; strcpy(temp, "--alignment"); cPara.push_back(temp); }
+
+- if (version) { char* temp = new char[9]; strcpy(temp, "--version"); cPara.push_back(temp); }
+- if (verbose) { char* temp = new char[9]; strcpy(temp, "--verbose"); cPara.push_back(temp); }
+- if (quiet) { char* temp = new char[7]; strcpy(temp, "--quiet"); cPara.push_back(temp); }
++ if (version) { char* temp = new char[16]; strcpy(temp, "--version"); cPara.push_back(temp); }
++ if (verbose) { char* temp = new char[16]; strcpy(temp, "--verbose"); cPara.push_back(temp); }
++ if (quiet) { char* temp = new char[16]; strcpy(temp, "--quiet"); cPara.push_back(temp); }
+ if (seed != "*") {
+ string tempSeed = "--seed=" + seed;
+ char* temp = new char[tempSeed.length()];
+ strcpy(temp, tempSeed.c_str());
+ cPara.push_back(temp);
+ }
+- if (norandom) { char* temp = new char[10]; strcpy(temp, "--norandom"); cPara.push_back(temp); }
+- if (shuffle) { char* temp = new char[9]; strcpy(temp, "--shuffle"); cPara.push_back(temp); }
+- if (neighbor) { char* temp = new char[10]; strcpy(temp, "--neighbor"); cPara.push_back(temp); }
++ if (norandom) { char* temp = new char[16]; strcpy(temp, "--norandom"); cPara.push_back(temp); }
++ if (shuffle) { char* temp = new char[16]; strcpy(temp, "--shuffle"); cPara.push_back(temp); }
++ if (neighbor) { char* temp = new char[16]; strcpy(temp, "--neighbor"); cPara.push_back(temp); }
+
+ string tempIn = "--in=" + inputFile;
+ char* tempI = new char[tempIn.length()];
+ strcpy(tempI, tempIn.c_str());
+ cPara.push_back(tempI);
+
+- if (stdoutWanted) { char* temp = new char[8]; strcpy(temp, "--stdout"); cPara.push_back(temp); }
++ if (stdoutWanted) { char* temp = new char[16]; strcpy(temp, "--stdout"); cPara.push_back(temp); }
+ else{
+ string tempOut = "--out=" + outputName;
+
+@@ -306,10 +306,10 @@ int ClearcutCommand::execute() {
+ cPara.push_back(temp);
+ }
+
+- if (DNA) { char* temp = new char[5]; strcpy(temp, "--DNA"); cPara.push_back(temp); }
+- if (protein) { char* temp = new char[9]; strcpy(temp, "--protein"); cPara.push_back(temp); }
+- if (jukes) { char* temp = new char[7]; strcpy(temp, "--jukes"); cPara.push_back(temp); }
+- if (kimura) { char* temp = new char[8]; strcpy(temp, "--kimura"); cPara.push_back(temp); }
++ if (DNA) { char* temp = new char[16]; strcpy(temp, "--DNA"); cPara.push_back(temp); }
++ if (protein) { char* temp = new char[16]; strcpy(temp, "--protein"); cPara.push_back(temp); }
++ if (jukes) { char* temp = new char[16]; strcpy(temp, "--jukes"); cPara.push_back(temp); }
++ if (kimura) { char* temp = new char[16]; strcpy(temp, "--kimura"); cPara.push_back(temp); }
+ if (matrixout != "") {
+ string tempMatrix = "--matrixout=" + outputDir + matrixout;
+ char* temp = new char[tempMatrix.length()];
+@@ -326,8 +326,8 @@ int ClearcutCommand::execute() {
+ cPara.push_back(temp);
+ }
+
+- if (expblen) { char* temp = new char[9]; strcpy(temp, "--expblen"); cPara.push_back(temp); }
+- if (expdist) { char* temp = new char[9]; strcpy(temp, "--expdist"); cPara.push_back(temp); }
++ if (expblen) { char* temp = new char[16]; strcpy(temp, "--expblen"); cPara.push_back(temp); }
++ if (expdist) { char* temp = new char[16]; strcpy(temp, "--expdist"); cPara.push_back(temp); }
+
+ char** clearcutParameters;
+ clearcutParameters = new char*[cPara.size()];
diff --git a/sci-biology/mothur/metadata.xml b/sci-biology/mothur/metadata.xml
new file mode 100644
index 000000000000..959160fe46b1
--- /dev/null
+++ b/sci-biology/mothur/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sci-biology@gentoo.org</email>
+ <name>Gentoo Biology Project</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sci-biology/mothur/mothur-1.27.0-r1.ebuild b/sci-biology/mothur/mothur-1.27.0-r1.ebuild
new file mode 100644
index 000000000000..d12d3c9b4399
--- /dev/null
+++ b/sci-biology/mothur/mothur-1.27.0-r1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils flag-o-matic fortran-2 toolchain-funcs
+
+DESCRIPTION="A suite of algorithms for ecological bioinformatics"
+HOMEPAGE="http://www.mothur.org/"
+SRC_URI="http://www.mothur.org/w/images/c/cb/Mothur.${PV}.zip -> ${P}.zip"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="mpi +readline"
+KEYWORDS="amd64 x86"
+
+RDEPEND="
+ sci-biology/uchime
+ mpi? ( virtual/mpi )"
+DEPEND="${RDEPEND}
+ app-arch/unzip"
+
+S=${WORKDIR}/Mothur.source
+
+pkg_setup() {
+ fortran-2_pkg_setup
+ use mpi && export CXX=mpicxx || export CXX=$(tc-getCXX)
+ use amd64 && append-cppflags -DBIT_VERSION
+}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-makefile.patch \
+ "${FILESDIR}"/${P}-overflows.patch
+}
+
+src_compile() {
+ emake USEMPI=$(usex mpi) USEREADLINE=$(usex readline)
+}
+
+src_install() {
+ dobin ${PN}
+}