summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Seifert <soap@gentoo.org>2016-09-24 16:20:44 +0200
committerDavid Seifert <soap@gentoo.org>2016-09-24 21:02:03 +0200
commit5bd35d2287f51fa70024ffc977d34d8e15d8a168 (patch)
tree9141639353fe4380e7363951f843fd57a810108b /sci-biology/eugene
parentdev-perl/XML-SAX-Writer: Remove old (diff)
downloadgentoo-5bd35d2287f51fa70024ffc977d34d8e15d8a168.tar.gz
gentoo-5bd35d2287f51fa70024ffc977d34d8e15d8a168.tar.bz2
gentoo-5bd35d2287f51fa70024ffc977d34d8e15d8a168.zip
sci-biology/eugene: Bump to 4.1d from science-overlay
Gentoo-bug: 594700 * EAPI=6 * Fix -Wformat warnings Package-Manager: portage-2.3.1
Diffstat (limited to 'sci-biology/eugene')
-rw-r--r--sci-biology/eugene/Manifest1
-rw-r--r--sci-biology/eugene/eugene-4.1d.ebuild42
-rw-r--r--sci-biology/eugene/files/eugene-4.1d-Wformat.patch84
-rw-r--r--sci-biology/eugene/files/eugene-4.1d-fix-c++14.patch17
4 files changed, 144 insertions, 0 deletions
diff --git a/sci-biology/eugene/Manifest b/sci-biology/eugene/Manifest
index 015da1fb031b..d017c6516a49 100644
--- a/sci-biology/eugene/Manifest
+++ b/sci-biology/eugene/Manifest
@@ -1 +1,2 @@
DIST eugene-4.1.tar.gz 7393361 SHA256 faff769f68e1ab1fdec61be34ec7fef3c73805734199765ba11cf1ea9c02f800 SHA512 f4bcf63103754f8fb577d311d181375732411fa926fb0cef86fcd00c373ed5cc5637f1b55fa375a4bb14c5181f7de1dc244570f74cdd1887b6107d5c6cea37b3 WHIRLPOOL 32f4539456c243dd3c6a9d5a986fea210e53e5566aaa0849a26f34832957100623570a0814193059420d53e553247584360635706844ed0ec55c4cc65e235ad4
+DIST eugene-4.1d.tar.gz 7473965 SHA256 c160e6b4206e6700c866f38fee2c8fd0d69972d51ebc5b4cb7680774a419f4c0 SHA512 dab37930e211b3783954f6e4a762450760201b77e0b4214f16724516d9be583d0a7ec44a2f510e73f4370e9c2dc67a425456a057fdba8f51cb72386e16a26ef5 WHIRLPOOL 7ab116acd48648673d2cc633bae26908bf8250c5a17b9d5e8719dfd56edcdf716406b80af26a99700d9ec81e625737c57fe16493f670245f21999fef1c6911eb
diff --git a/sci-biology/eugene/eugene-4.1d.ebuild b/sci-biology/eugene/eugene-4.1d.ebuild
new file mode 100644
index 000000000000..55a73bc3c4cd
--- /dev/null
+++ b/sci-biology/eugene/eugene-4.1d.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit autotools
+
+DESCRIPTION="Prokaryotic and Eukaryotic gene predictor"
+HOMEPAGE="http://eugene.toulouse.inra.fr/"
+SRC_URI="https://mulcyber.toulouse.inra.fr/frs/download.php/1359/${P}.tar.gz"
+
+LICENSE="Artistic"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="
+ media-libs/gd[png]
+ media-libs/libpng:0=
+ "
+RDEPEND="${DEPEND}"
+
+RESTRICT="test"
+
+PATCHES=(
+ # https://mulcyber.toulouse.inra.fr/tracker/index.php?func=detail&aid=1170
+ "${FILESDIR}"/${PN}-3.6-overflow.patch
+ "${FILESDIR}"/${PN}-3.6-plugins.patch
+ "${FILESDIR}"/${PN}-4.1-format-security.patch
+ "${FILESDIR}"/${PN}-4.1d-fix-c++14.patch
+ "${FILESDIR}"/${PN}-4.1d-Wformat.patch
+)
+
+src_prepare() {
+ default
+ sed \
+ -e '/SUBDIRS/ s/doc//' \
+ -e '/INSTALL.*doc/ s/\(.*\)//' \
+ -i Makefile.am || die
+ eautoreconf
+}
diff --git a/sci-biology/eugene/files/eugene-4.1d-Wformat.patch b/sci-biology/eugene/files/eugene-4.1d-Wformat.patch
new file mode 100644
index 000000000000..ab6d2bd1d2ee
--- /dev/null
+++ b/sci-biology/eugene/files/eugene-4.1d-Wformat.patch
@@ -0,0 +1,84 @@
+Fix -Wformat warnings caused by wrong printf specifiers:
+* Sensor.Riken.cc:95:61: warning: format ‘%d’ expects argument of type ‘int’, but
+* argument 3 has type ‘std::vector<RAFLgene>::size_type {aka long unsigned int}’ [-Wformat=]
+* fprintf(stderr, "%d RAFL EST pairs read, ", RAFLtmp.size());
+
+--- a/src/Hits.cc
++++ b/src/Hits.cc
+@@ -163,7 +163,7 @@
+ if (ThisHit != NULL)
+ for (int i=0; i<*NumHits-1; i++) ThisHit = ThisHit->Next;
+
+- while ((read=fscanf(HitFile,"%d %d %d %lf %d %s %d %d %as\n", &deb, &fin,
++ while ((read=fscanf(HitFile,"%d %d %d %lf %d %s %d %d %ss\n", &deb, &fin,
+ &poids, &evalue, &phase, HitId, &HSPDeb, &HSPFin,HSP)) >= 8)
+ {
+ if (HSP) fprintf(stderr, "%s", HSP);
+--- a/src/SensorPlugins/Est/Sensor.Est.cc
++++ b/src/SensorPlugins/Est/Sensor.Est.cc
+@@ -1353,13 +1353,13 @@
+ exit(2);
+ }
+
+- fprintf(fp, "vPos %d\n", vPos.size());
++ fprintf(fp, "vPos %zu\n", vPos.size());
+ for (int i=0; i< vPos.size();i++ )
+ {
+ fprintf(fp, "vPos %d\t%d\n",i, vPos[i]);
+ }
+
+- fprintf(fp, "vESTMatch %d\n", vESTMatch.size());
++ fprintf(fp, "vESTMatch %zu\n", vESTMatch.size());
+ for (int i=0; i< vESTMatch.size();i++ )
+ {
+ fprintf(fp, "vESTMatch %d\t\n", vESTMatch[i]);
+--- a/src/SensorPlugins/Riken/Sensor.Riken.cc
++++ b/src/SensorPlugins/Riken/Sensor.Riken.cc
+@@ -92,7 +92,7 @@
+
+
+
+- fprintf(stderr, "%d RAFL EST pairs read, ", RAFLtmp.size());
++ fprintf(stderr, "%zu RAFL EST pairs read, ", RAFLtmp.size());
+
+ sort(RAFLtmp.begin(), RAFLtmp.end(), Before);
+
+@@ -148,7 +148,7 @@
+ }
+ }
+
+- fprintf(stderr,"resulting %d\n",RAFL.size());
++ fprintf(stderr,"resulting %zu\n",RAFL.size());
+ fflush(stderr);
+
+ // for (RAFLtmpindice=0; RAFLtmpindice< (int)RAFL.size(); RAFLtmpindice++) {
+--- a/src/SensorPlugins/SMachine/Sensor.SMachine.cc
++++ b/src/SensorPlugins/SMachine/Sensor.SMachine.cc
+@@ -197,7 +197,7 @@
+ fclose(fp);
+
+ if (end ==2) {
+- fprintf(stderr, "Error in SpliceMachine splice site file %s, line %d\n", name, len);
++ fprintf(stderr, "Error in SpliceMachine splice site file %s, line %zu\n", name, len);
+ exit(2);
+ }
+ }
+--- a/src/SoTerms.cc
++++ b/src/SoTerms.cc
+@@ -67,14 +67,14 @@
+ j++;
+ if (line[0] == 'i' && line[1] == 'd')
+ {
+- i = sscanf(line, "id: %s", &value);
++ i = sscanf(line, "id: %s", value);
+ if (i > 0)
+ {
+ char soId[60];
+ char soName[60];
+ strcpy (soId, value );
+ fgets (line, MAX_LINE, fp);
+- i = sscanf(line, "name: %s", &value);
++ i = sscanf(line, "name: %s", value);
+ strcpy (soName, value );
+ idToName_[to_string(soId)]=to_string(soName);
+ nameToId_[to_string(soName)]=to_string(soId);
diff --git a/sci-biology/eugene/files/eugene-4.1d-fix-c++14.patch b/sci-biology/eugene/files/eugene-4.1d-fix-c++14.patch
new file mode 100644
index 000000000000..a27261c68c06
--- /dev/null
+++ b/sci-biology/eugene/files/eugene-4.1d-fix-c++14.patch
@@ -0,0 +1,17 @@
+Fix building with C++14, which errors out due to collisions with isinf
+from cmath. We don't need to fix ancient broken OSX toolchains.
+See also: https://bugs.gentoo.org/show_bug.cgi?id=594700
+
+--- a/src/SensorPlugins/Tester/Sensor.Tester.cc
++++ b/src/SensorPlugins/Tester/Sensor.Tester.cc
+@@ -18,9 +18,7 @@
+ // ------------------------------------------------------------------
+
+ // MacOS-X kludge. cmath undefines these macros. Turn them into inlines
+-#include <math.h>
+-inline int (isinf)(double r) { return isinf(r); }
+-inline int (isnan)(double r) { return isnan(r); }
++#include <cmath>
+
+ #include <iomanip>
+ #include <fstream>