diff options
author | Sergei Trofimovich <slyfox@gentoo.org> | 2016-09-18 22:41:58 +0100 |
---|---|---|
committer | Sergei Trofimovich <slyfox@gentoo.org> | 2016-09-18 22:42:08 +0100 |
commit | e5fd69e7be7b26a7b7481453553393865d823906 (patch) | |
tree | 79ff117f357575a131e847a26de5623a800e7c1a /sci-biology/abyss | |
parent | sys-boot/grub: Allow user patchset (diff) | |
download | gentoo-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/Manifest | 1 | ||||
-rw-r--r-- | sci-biology/abyss/abyss-1.9.0.ebuild | 53 | ||||
-rw-r--r-- | sci-biology/abyss/files/abyss-1.9.0-ac_prog_ar.patch | 18 | ||||
-rw-r--r-- | sci-biology/abyss/files/abyss-1.9.0-gcc-6.patch | 34 |
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. |