summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Suominen <ssuominen@gentoo.org>2009-07-30 08:31:01 +0000
committerSamuli Suominen <ssuominen@gentoo.org>2009-07-30 08:31:01 +0000
commit5e5c45ac728f7d447b421d4de3577871ddb6b5be (patch)
treec75a3f5e76b7f32a30060eb25ab70e1ac67c2268 /sci-biology/vienna-rna
parentFix building with GCC 4.4 wrt #278462. (diff)
downloadgentoo-2-5e5c45ac728f7d447b421d4de3577871ddb6b5be.tar.gz
gentoo-2-5e5c45ac728f7d447b421d4de3577871ddb6b5be.tar.bz2
gentoo-2-5e5c45ac728f7d447b421d4de3577871ddb6b5be.zip
Fix building with GCC 4.4 and GLIBC 2.10+ wrt #274044. Rename getline to v_getline. Missing include.
(Portage version: 2.2_rc33/cvs/Linux x86_64)
Diffstat (limited to 'sci-biology/vienna-rna')
-rw-r--r--sci-biology/vienna-rna/ChangeLog9
-rw-r--r--sci-biology/vienna-rna/files/vienna-rna-1.7.2-gcc4.4.patch331
-rw-r--r--sci-biology/vienna-rna/vienna-rna-1.7.2.ebuild7
3 files changed, 342 insertions, 5 deletions
diff --git a/sci-biology/vienna-rna/ChangeLog b/sci-biology/vienna-rna/ChangeLog
index 27aa3d0d500a..a84f1757b684 100644
--- a/sci-biology/vienna-rna/ChangeLog
+++ b/sci-biology/vienna-rna/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for sci-biology/vienna-rna
-# Copyright 2000-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-biology/vienna-rna/ChangeLog,v 1.19 2008/10/09 13:03:30 markusle Exp $
+# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sci-biology/vienna-rna/ChangeLog,v 1.20 2009/07/30 08:31:01 ssuominen Exp $
+
+ 30 Jul 2009; Samuli Suominen <ssuominen@gentoo.org>
+ vienna-rna-1.7.2.ebuild, +files/vienna-rna-1.7.2-gcc4.4.patch:
+ Fix building with GCC 4.4 and GLIBC 2.10+ wrt #274044. Rename getline to
+ v_getline. Missing include.
09 Oct 2008; Markus Dittrich <markusle@gentoo.org>
vienna-rna-1.7.2.ebuild:
diff --git a/sci-biology/vienna-rna/files/vienna-rna-1.7.2-gcc4.4.patch b/sci-biology/vienna-rna/files/vienna-rna-1.7.2-gcc4.4.patch
new file mode 100644
index 000000000000..3ba7e636ccfa
--- /dev/null
+++ b/sci-biology/vienna-rna/files/vienna-rna-1.7.2-gcc4.4.patch
@@ -0,0 +1,331 @@
+diff -ur ViennaRNA-1.7.2.orig/Kinfold/main.c ViennaRNA-1.7.2/Kinfold/main.c
+--- ViennaRNA-1.7.2.orig/Kinfold/main.c 2006-11-24 10:13:55.000000000 +0200
++++ ViennaRNA-1.7.2/Kinfold/main.c 2009-07-30 11:27:39.000000000 +0300
+@@ -27,7 +27,7 @@
+ /* PRIVAT FUNCTIONS */
+ static void ini_energy_model(void);
+ static void read_data(void);
+-static char *getline(FILE *fp);
++static char *v_getline(FILE *fp);
+ static void clean_up(void);
+
+ /**/
+@@ -133,7 +133,7 @@
+ /*
+ read sequence
+ */
+- ctmp = getline(stdin);
++ ctmp = v_getline(stdin);
+ len = strlen(ctmp);
+ GAV.farbe = (char *)calloc(len+1, sizeof(char));
+ assert(GAV.farbe != NULL);
+@@ -153,7 +153,7 @@
+ read start structure
+ */
+ if (GTV.start) {
+- ctmp = getline(stdin);
++ ctmp = v_getline(stdin);
+ len = strlen(ctmp);
+ sscanf(ctmp, "%s", GAV.startform);
+
+@@ -174,7 +174,7 @@
+ */
+ if (GTV.stop) {
+ s = GAV.stopform;
+- while (( ctmp = getline(stdin))) {
++ while (( ctmp = v_getline(stdin))) {
+ *s = (char *)calloc(GSV.len+1, sizeof(char));
+ sscanf(ctmp, "%s", *s);
+
+@@ -207,7 +207,7 @@
+ }
+
+ /**/
+-static char *getline(FILE *fp) {
++static char *v_getline(FILE *fp) {
+ char s[512], *line, *cp;
+
+ line = NULL;
+diff -ur ViennaRNA-1.7.2.orig/Readseq/ureadseq.c ViennaRNA-1.7.2/Readseq/ureadseq.c
+--- ViennaRNA-1.7.2.orig/Readseq/ureadseq.c 2002-11-27 13:23:56.000000000 +0200
++++ ViennaRNA-1.7.2/Readseq/ureadseq.c 2009-07-30 11:29:35.000000000 +0300
+@@ -136,12 +136,12 @@
+ }
+ }
+
+-Local void getline(struct ReadSeqVars *V)
++Local void v_getline(struct ReadSeqVars *V)
+ {
+ readline(V->f, V->s, &V->linestart);
+ }
+
+-Local void ungetline(struct ReadSeqVars *V)
++Local void unv_getline(struct ReadSeqVars *V)
+ {
+ fseek(V->f, V->linestart, 0);
+ }
+@@ -215,7 +215,7 @@
+
+ if (addfirst) addseq(V->s, V);
+ do {
+- getline(V);
++ v_getline(V);
+ V->done = feof(V->f);
+ V->done |= (*endTest)( &addend, &ungetend, V);
+ if (V->addit && (addend || !V->done) && (strlen(V->s) > margin)) {
+@@ -226,7 +226,7 @@
+ if (V->choice == kListSequences) addinfo(V->seqid, V);
+ else {
+ V->allDone = (V->nseq >= V->choice);
+- if (V->allDone && ungetend) ungetline(V);
++ if (V->allDone && ungetend) unv_getline(V);
+ }
+ }
+
+@@ -246,7 +246,7 @@
+
+ while (!V->allDone) {
+ do {
+- getline(V);
++ v_getline(V);
+ for (si= V->s; *si != 0 && *si < ' '; si++) *si= ' '; /* drop controls */
+ if (*si == 0) *V->s= 0; /* chop line to empty */
+ } while (! (feof(V->f) || ((*V->s != 0) && (*V->s != ';') ) ));
+@@ -272,13 +272,13 @@
+ { /* ? only 1 seq/file ? */
+
+ while (!V->allDone) {
+- getline(V);
++ v_getline(V);
+ if (strstr(V->s,"; DNA sequence ") == V->s)
+ strcpy(V->seqid, (V->s)+16);
+ else
+ strcpy(V->seqid, (V->s)+1);
+ while ((!feof(V->f)) && (*V->s == ';')) {
+- getline(V);
++ v_getline(V);
+ }
+ if (feof(V->f)) V->allDone = true;
+ else readLoop(0, true, endStrider, V);
+@@ -298,16 +298,16 @@
+
+ while (!V->allDone) {
+ while (! (feof(V->f) || strstr(V->s,"ENTRY") || strstr(V->s,"SEQUENCE")) )
+- getline(V);
++ v_getline(V);
+ strcpy(V->seqid, (V->s)+16);
+ while (! (feof(V->f) || strstr(V->s,"SEQUENCE") == V->s))
+- getline(V);
++ v_getline(V);
+ readLoop(0, false, endPIR, V);
+
+ if (!V->allDone) {
+ while (! (feof(V->f) || ((*V->s != 0)
+ && (strstr( V->s,"ENTRY") == V->s))))
+- getline(V);
++ v_getline(V);
+ }
+ if (feof(V->f)) V->allDone = true;
+ }
+@@ -327,13 +327,13 @@
+ while (!V->allDone) {
+ strcpy(V->seqid, (V->s)+12);
+ while (! (feof(V->f) || strstr(V->s,"ORIGIN") == V->s))
+- getline(V);
++ v_getline(V);
+ readLoop(0, false, endGB, V);
+
+ if (!V->allDone) {
+ while (! (feof(V->f) || ((*V->s != 0)
+ && (strstr( V->s,"LOCUS") == V->s))))
+- getline(V);
++ v_getline(V);
+ }
+ if (feof(V->f)) V->allDone = true;
+ }
+@@ -364,11 +364,11 @@
+ {
+ while (!V->allDone) {
+ strcpy(V->seqid, (V->s)+4);
+- getline(V); /*skip title-junk line*/
++ v_getline(V); /*skip title-junk line*/
+ readLoop(0, false, endNBRF, V);
+ if (!V->allDone) {
+ while (!(feof(V->f) || (*V->s != 0 && *V->s == '>')))
+- getline(V);
++ v_getline(V);
+ }
+ if (feof(V->f)) V->allDone = true;
+ }
+@@ -390,7 +390,7 @@
+ readLoop(0, false, endPearson, V);
+ if (!V->allDone) {
+ while (!(feof(V->f) || ((*V->s != 0) && (*V->s == '>'))))
+- getline(V);
++ v_getline(V);
+ }
+ if (feof(V->f)) V->allDone = true;
+ }
+@@ -410,14 +410,14 @@
+ while (!V->allDone) {
+ strcpy(V->seqid, (V->s)+5);
+ do {
+- getline(V);
++ v_getline(V);
+ } while (!(feof(V->f) | (strstr(V->s,"SQ ") == V->s)));
+
+ readLoop(0, false, endEMBL, V);
+ if (!V->allDone) {
+ while (!(feof(V->f) |
+ ((*V->s != '\0') & (strstr(V->s,"ID ") == V->s))))
+- getline(V);
++ v_getline(V);
+ }
+ if (feof(V->f)) V->allDone = true;
+ }
+@@ -437,13 +437,13 @@
+ /*! 1st string is Zuker's Fortran format */
+
+ while (!V->allDone) {
+- getline(V); /*s == "seqLen seqid string..."*/
++ v_getline(V); /*s == "seqLen seqid string..."*/
+ strcpy(V->seqid, (V->s)+6);
+ readLoop(0, false, endZuker, V);
+ if (!V->allDone) {
+ while (!(feof(V->f) |
+ ((*V->s != '\0') & (*V->s == '('))))
+- getline(V);
++ v_getline(V);
+ }
+ if (feof(V->f)) V->allDone = true;
+ }
+@@ -486,7 +486,7 @@
+ do {
+ addseq(V->s, V);
+ V->done = feof(V->f);
+- getline(V);
++ v_getline(V);
+ } while (!V->done);
+ if (V->choice == kListSequences) addinfo(V->seqid, V);
+ V->allDone = true;
+@@ -498,7 +498,7 @@
+ /*
+ 10nov91: Reading GCG files casued duplication of last line when
+ EOF followed that line !!!
+- fix: getline now sets *V->s = 0
++ fix: v_getline now sets *V->s = 0
+ */
+ char *si;
+
+@@ -512,7 +512,7 @@
+ else if (si = strstr(V->seqid,"..")) *si = 0;
+ do {
+ V->done = feof(V->f);
+- getline(V);
++ v_getline(V);
+ if (!V->done) addseq((V->s), V);
+ } while (!V->done);
+ if (V->choice == kListSequences) addinfo(V->seqid, V);
+@@ -531,7 +531,7 @@
+ if (V->addit) V->seqlen = 0;
+ rewind(V->f); V->nseq= 0;
+ do {
+- getline(V);
++ v_getline(V);
+ V->done = feof(V->f);
+
+ if (V->done && !(*V->s)) break;
+@@ -614,7 +614,7 @@
+ if (V->addit) V->seqlen = 0;
+ rewind(V->f); V->nseq= 0;
+ do {
+- getline(V);
++ v_getline(V);
+ V->done = feof(V->f);
+
+ if (V->done && !(*V->s)) break;
+@@ -685,7 +685,7 @@
+ domatch= (V->matchchar > 0);
+
+ do {
+- getline(V);
++ v_getline(V);
+ V->done = feof(V->f);
+
+ if (V->done && !(*V->s)) break;
+@@ -766,7 +766,7 @@
+ /* rewind(V->f); V->nseq= 0; << do in caller !*/
+ indata= true; /* call here after we find "matrix" */
+ do {
+- getline(V);
++ v_getline(V);
+ V->done = feof(V->f);
+
+ if (V->done && !(*V->s)) break;
+@@ -851,7 +851,7 @@
+ /* fprintf(stderr,"Phylip-ileaf: topnseq=%d topseqlen=%d\n",V->topnseq, V->topseqlen); */
+
+ do {
+- getline(V);
++ v_getline(V);
+ V->done = feof(V->f);
+
+ if (V->done && !(*V->s)) break;
+@@ -904,7 +904,7 @@
+ while (isdigit(*si)) si++;
+ skipwhitespace(si);
+ V->topseqlen= atol(si);
+- getline(V);
++ v_getline(V);
+ while (!V->allDone) {
+ V->seqlencount= 0;
+ strncpy(V->seqid, (V->s), 10);
+@@ -935,10 +935,10 @@
+ V->err = eFileNotFound;
+ else {
+
+- for (l = skiplines_; l > 0; l--) getline( V);
++ for (l = skiplines_; l > 0; l--) v_getline( V);
+
+ do {
+- getline( V);
++ v_getline( V);
+ for (l= strlen(V->s); (l > 0) && (V->s[l] == ' '); l--) ;
+ } while ((l == 0) && !feof(V->f));
+
+@@ -963,7 +963,7 @@
+ char *cp;
+ /* rewind(V->f); V->nseq= 0; ?? assume it is at top ?? skiplines ... */
+ while (!done) {
+- getline( V);
++ v_getline( V);
+ tolowerstr( V->s);
+ if (strstr( V->s, "matrix")) done= true;
+ if (strstr( V->s, "interleav")) interleaved= true;
+@@ -995,7 +995,7 @@
+ break;
+
+ case kFitch :
+- strcpy(V->seqid, V->s); getline(V);
++ strcpy(V->seqid, V->s); v_getline(V);
+ readFitch(V);
+ break;
+
+@@ -1003,7 +1003,7 @@
+ do {
+ gotuw = (strstr(V->s,"..") != NULL);
+ if (gotuw) readUWGCG(V);
+- getline(V);
++ v_getline(V);
+ } while (!(feof(V->f) || V->allDone));
+ break;
+ }
+diff -ur ViennaRNA-1.7.2.orig/RNAforester/src/rnafuncs.cpp ViennaRNA-1.7.2/RNAforester/src/rnafuncs.cpp
+--- ViennaRNA-1.7.2.orig/RNAforester/src/rnafuncs.cpp 2005-08-05 13:52:50.000000000 +0300
++++ ViennaRNA-1.7.2/RNAforester/src/rnafuncs.cpp 2009-07-30 11:26:47.000000000 +0300
+@@ -1,3 +1,5 @@
++#include <cstdio>
++
+ #include <algorithm>
+ #include <cctype>
+ #include <iomanip>
diff --git a/sci-biology/vienna-rna/vienna-rna-1.7.2.ebuild b/sci-biology/vienna-rna/vienna-rna-1.7.2.ebuild
index 8a7d435c3882..42da1126e2a2 100644
--- a/sci-biology/vienna-rna/vienna-rna-1.7.2.ebuild
+++ b/sci-biology/vienna-rna/vienna-rna-1.7.2.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2008 Gentoo Foundation
+# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sci-biology/vienna-rna/vienna-rna-1.7.2.ebuild,v 1.3 2008/10/09 13:03:30 markusle Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-biology/vienna-rna/vienna-rna-1.7.2.ebuild,v 1.4 2009/07/30 08:31:01 ssuominen Exp $
inherit toolchain-funcs multilib eutils versionator autotools perl-module
@@ -16,7 +16,7 @@ KEYWORDS="~amd64 ~x86 ~ppc"
DEPEND="dev-lang/perl
media-libs/gd"
-S="${WORKDIR}/ViennaRNA-${PV}"
+S=${WORKDIR}/ViennaRNA-${PV}
src_unpack() {
unpack ${A}
@@ -25,6 +25,7 @@ src_unpack() {
epatch "${FILESDIR}"/${P}-gcc4.3.patch
epatch "${FILESDIR}"/${P}-LDFLAGS.patch
epatch "${FILESDIR}"/${P}-disable-gd.patch
+ epatch "${FILESDIR}"/${P}-gcc4.4.patch
eautoreconf
# we need a separate eautoreconf in RNAforester