summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2016-09-18 22:41:58 +0100
committerSergei Trofimovich <slyfox@gentoo.org>2016-09-18 22:42:08 +0100
commite5fd69e7be7b26a7b7481453553393865d823906 (patch)
tree79ff117f357575a131e847a26de5623a800e7c1a /sci-biology/abyss
parentsys-boot/grub: Allow user patchset (diff)
downloadgentoo-e5fd69e7be7b26a7b7481453553393865d823906.tar.gz
gentoo-e5fd69e7be7b26a7b7481453553393865d823906.tar.bz2
gentoo-e5fd69e7be7b26a7b7481453553393865d823906.zip
sci-biology/abyss: bump up to 1.9.0, tweak for gcc-6, bug #594254
On gcc-6 build failed as: ``` In file included from AssemblyAlgorithms.cpp:4:0: ../DataLayer/FastaReader.h: In member function ‘FastaReader::operator void*() const’: ../DataLayer/FastaReader.h:49:35: error: cannot convert ‘std::istream {aka std::basic_istream<char>}’ to ‘void*’ ... operator void*() const { return m_in; } ^~~~ ``` In the following source: ```c++ static bool existFile(const char* f) { ifstream file(f); return file; } ``` c++98 provides file->operator void*() c++11 provides file->explicit operator bool() Hence the failure on c++11. The change adds explicit casts around ifstream. Reported-by: Toralf Förster Bug: https://bugs.gentoo.org/594254 Package-Manager: portage-2.3.0
Diffstat (limited to 'sci-biology/abyss')
-rw-r--r--sci-biology/abyss/Manifest1
-rw-r--r--sci-biology/abyss/abyss-1.9.0.ebuild53
-rw-r--r--sci-biology/abyss/files/abyss-1.9.0-ac_prog_ar.patch18
-rw-r--r--sci-biology/abyss/files/abyss-1.9.0-gcc-6.patch34
4 files changed, 106 insertions, 0 deletions
diff --git a/sci-biology/abyss/Manifest b/sci-biology/abyss/Manifest
index 9284afa5fe8f..e995775f9c31 100644
--- a/sci-biology/abyss/Manifest
+++ b/sci-biology/abyss/Manifest
@@ -1,2 +1,3 @@
DIST abyss-1.3.3.tar.gz 621480 SHA256 60396e2c8813952ceb1c66a3ad7c87eda984aa1e4952a14265217d9f639706a0 SHA512 4ec7fdd24bdb1e3d66e2bda50929122ff347107010701703e81ca1609fb1b4913c713991b3fe84a48ccfbc069e126f4f4120aafbab81e54e567a95a2f1099fb2 WHIRLPOOL 35f6fdfe60b70316e67bcbbb0a9c67e952302333e9ec71d893f2de7a94482dca1a604dc8cfef1ecee49e464244bb5df7469a8ad7bdc37bd54ff455b0f75b7914
DIST abyss-1.3.6.tar.gz 678880 SHA256 4432a8b5046bdcb548b6f1b22069a6cade4dea26fc6f83ad5467548e4f3e7c95 SHA512 2c6d72e0227c4af2d5740a989168ad35a84b9236dc53b65a29a010c4e5f77e5c4bfaa38bfaa2f14fd530ae6df204294ff167bd40e79f61e8bad6a7489bf34ace WHIRLPOOL 0677b1fd4090ba155fb876c0047a1ccd2ec2e220950e1e9940e1f3df05ef0abd3ba2e3dbabd500d6fab39a8f7d94e02e0a07410934733682a70fa605d2a8bc07
+DIST abyss-1.9.0.tar.gz 985480 SHA256 82e4050766a9c7fb87fd736f94724a02388efb1df847b40870a0fbf842917239 SHA512 d9da19f004bb97f9301f3be83ceb5361eb70f42139a1ef17129de99e03bda5de7680d718d76aed26d26f24c1d26c37e050801ff343acad007b76d2214955b83f WHIRLPOOL bd322afa9bf99a53aec177c79ca9618f39043cda606eb4e3d5dcfb46c26298d218fc154e2c46efadac59febb69dd625fe597101a1efbccc62ab8228b555596cc
diff --git a/sci-biology/abyss/abyss-1.9.0.ebuild b/sci-biology/abyss/abyss-1.9.0.ebuild
new file mode 100644
index 000000000000..c32b477ad42d
--- /dev/null
+++ b/sci-biology/abyss/abyss-1.9.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit autotools toolchain-funcs
+
+DESCRIPTION="Assembly By Short Sequences - a de novo, parallel, paired-end sequence assembler"
+HOMEPAGE="http://www.bcgsc.ca/platform/bioinfo/software/abyss/"
+SRC_URI="https://github.com/bcgsc/abyss/archive/1.9.0.tar.gz -> ${P}.tar.gz"
+
+LICENSE="abyss"
+SLOT="0"
+IUSE="+mpi openmp misc-haskell"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-cpp/sparsehash
+ dev-libs/boost
+ misc-haskell? ( dev-libs/gmp:0=
+ virtual/libffi:0=
+ )
+ mpi? ( virtual/mpi )
+"
+DEPEND="${RDEPEND}
+ misc-haskell? ( dev-lang/ghc
+ dev-haskell/mmap )
+"
+
+# todo: --enable-maxk=N configure option
+# todo: fix automagic mpi toggling
+
+PATCHES=(
+ "${FILESDIR}"/${P}-ac_prog_ar.patch
+ "${FILESDIR}"/${P}-gcc-6.patch
+)
+
+src_prepare() {
+ default
+ tc-export AR
+ sed -i -e "s/-Werror//" configure.ac || die #365195
+ sed -i -e "/dist_pkgdoc_DATA/d" Makefile.am || die
+ eautoreconf
+}
+
+src_configure() {
+ # disable building haskell tool Misc/samtobreak
+ # unless request by user: bug #534412
+ use misc-haskell || export ac_cv_prog_ac_ct_GHC=
+
+ econf $(use_enable openmp)
+}
diff --git a/sci-biology/abyss/files/abyss-1.9.0-ac_prog_ar.patch b/sci-biology/abyss/files/abyss-1.9.0-ac_prog_ar.patch
new file mode 100644
index 000000000000..158e9b1262e4
--- /dev/null
+++ b/sci-biology/abyss/files/abyss-1.9.0-ac_prog_ar.patch
@@ -0,0 +1,18 @@
+ configure.ac | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 9d4bb66..aa94364 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -12,6 +12,10 @@ AC_PROG_CPP
+ AC_PROG_CXX
+ AC_PROG_INSTALL
+ AC_PROG_RANLIB
++AN_MAKEVAR([AR], [AC_PROG_AR])
++AN_PROGRAM([ar], [AC_PROG_AR])
++AC_DEFUN([AC_PROG_AR], [AC_CHECK_TOOL(AR, ar, :)])
++AC_PROG_AR
+ AC_CHECK_TOOL(GHC, ghc)
+ AM_CONDITIONAL([HAVE_GHC], [test "$GHC"])
+
diff --git a/sci-biology/abyss/files/abyss-1.9.0-gcc-6.patch b/sci-biology/abyss/files/abyss-1.9.0-gcc-6.patch
new file mode 100644
index 000000000000..49a30f993478
--- /dev/null
+++ b/sci-biology/abyss/files/abyss-1.9.0-gcc-6.patch
@@ -0,0 +1,34 @@
+diff --git a/DataBase/db-csv.cc b/DataBase/db-csv.cc
+index 05cac19..48e3b44 100644
+--- a/DataBase/db-csv.cc
++++ b/DataBase/db-csv.cc
+@@ -18,11 +18,11 @@ static const char TABLE_LIST[] =
+ typedef vector<string> vs;
+
+ static bool existFile(const char* f)
+ {
+ ifstream file(f);
+- return file;
++ return bool(file);
+ }
+
+ template <typename D>
+ static bool existTable(
+ D& db, const string& t)
+diff --git a/SimpleGraph/SimpleGraph.cpp b/SimpleGraph/SimpleGraph.cpp
+index 373ec70..0a9ebd3 100644
+--- a/SimpleGraph/SimpleGraph.cpp
++++ b/SimpleGraph/SimpleGraph.cpp
+@@ -645,11 +645,11 @@ static void* worker(void* pArg)
+ for (;;) {
+ /** Lock the input stream. */
+ static pthread_mutex_t inMutex = PTHREAD_MUTEX_INITIALIZER;
+ pthread_mutex_lock(&inMutex);
+ EstimateRecord er;
+- bool good = (*arg.in) >> er;
++ bool good = bool((*arg.in) >> er);
+ pthread_mutex_unlock(&inMutex);
+ if (!good)
+ break;
+
+ // Flip the anterior distance estimates.