summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Seifert <soap@gentoo.org>2022-10-23 20:18:07 +0100
committerDavid Seifert <soap@gentoo.org>2022-10-23 20:18:07 +0100
commit347343bc74b8a7625265a9e5ecfa05fb6b37d664 (patch)
tree8aacbdc7059839ab3b435f9c80e4cd69cb8a7d85 /sci-biology
parentsci-biology/poa: fix clang 16 build (diff)
downloadgentoo-347343bc74b8a7625265a9e5ecfa05fb6b37d664.tar.gz
gentoo-347343bc74b8a7625265a9e5ecfa05fb6b37d664.tar.bz2
gentoo-347343bc74b8a7625265a9e5ecfa05fb6b37d664.zip
sci-biology/unafold: fix clang 16 build
Closes: https://bugs.gentoo.org/875041 Signed-off-by: David Seifert <soap@gentoo.org>
Diffstat (limited to 'sci-biology')
-rw-r--r--sci-biology/unafold/files/unafold-3.8-autotools.patch41
-rw-r--r--sci-biology/unafold/files/unafold-3.8-clang16.patch775
-rw-r--r--sci-biology/unafold/unafold-3.8-r1.ebuild24
3 files changed, 831 insertions, 9 deletions
diff --git a/sci-biology/unafold/files/unafold-3.8-autotools.patch b/sci-biology/unafold/files/unafold-3.8-autotools.patch
new file mode 100644
index 000000000000..ecf29b470c2c
--- /dev/null
+++ b/sci-biology/unafold/files/unafold-3.8-autotools.patch
@@ -0,0 +1,41 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -2,7 +2,7 @@
+ AC_INIT(UNAFold, 3.8, markhn@rpi.edu)
+ AC_CONFIG_SRCDIR(src/hybrid.c)
+ AC_CONFIG_AUX_DIR(config)
+-AM_CONFIG_HEADER(config.h:config.in)
++AC_CONFIG_HEADERS(config.h:config.in)
+ AM_INIT_AUTOMAKE
+ AC_CANONICAL_BUILD
+ AC_PROG_CC
+@@ -12,7 +12,6 @@
+ if test -z "$PERL"; then
+ AC_MSG_ERROR(Perl not found)
+ fi
+-AC_PROG_PERL_VERSION(5.6.1, , AC_MSG_ERROR(Perl 5.6.1 or better is required))
+ AC_CHECK_PROG(GNUPLOT, gnuplot, [system('gnuplot', \"\$prefix.gp\") == 0 or die $!;])
+
+ AC_MSG_CHECKING(whether compiler needs -mieee)
+@@ -28,6 +27,7 @@
+
+
+ # Checks for libraries.
++AX_CHECK_GL
+ AX_CHECK_GLUT
+ AM_CONDITIONAL(GLUT, test -n "$GLUT_LIBS")
+ AX_CHECK_GD
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -33,9 +33,9 @@
+ endif GLUT
+
+ hybrid_plot_ng_SOURCES = hybrid-plot-ng.c getopt.h util.h xmalloc.h
+-hybrid_plot_ng_CFLAGS = @GD_CFLAGS@
++hybrid_plot_ng_CFLAGS = @GD_CFLAGS@ $(GL_CFLAGS)
+ hybrid_plot_ng_LDFLAGS = @GD_LDFLAGS@
+-hybrid_plot_ng_LDADD = getopt.$(OBJEXT) getopt1.$(OBJEXT) xmalloc.$(OBJEXT) @GD_LIBS@ -lm
++hybrid_plot_ng_LDADD = getopt.$(OBJEXT) getopt1.$(OBJEXT) xmalloc.$(OBJEXT) @GD_LIBS@ $(GL_LIBS) -lm
+
+ sbs_SOURCES = getopt.c getopt1.c energy.c xmalloc.c sbs.c energy.h getopt.h xmalloc.h
+ sbs_LDADD = -lm
diff --git a/sci-biology/unafold/files/unafold-3.8-clang16.patch b/sci-biology/unafold/files/unafold-3.8-clang16.patch
new file mode 100644
index 000000000000..fabc28e1fd88
--- /dev/null
+++ b/sci-biology/unafold/files/unafold-3.8-clang16.patch
@@ -0,0 +1,775 @@
+--- a/src/ct-energy.c
++++ b/src/ct-energy.c
+@@ -24,8 +24,8 @@
+ double auPenalty(int, int);
+ double chooseDangle(int, int);
+ double tstackOrDangle(int, int, int);
+-int isHomodimer();
+-int isCircular();
++int isHomodimer(void);
++int isCircular(void);
+
+ int readStructure(FILE* file);
+
+@@ -87,7 +87,7 @@
+ {NULL, 0, NULL, 0}
+ };
+
+-void usage()
++void usage(void)
+ {
+ puts("Usage: ct-energy [OPTION] [FILE]...");
+ puts("");
+@@ -1247,7 +1247,7 @@
+ return 1;
+ }
+
+-int isHomodimer()
++int isHomodimer(void)
+ {
+ int i;
+
+@@ -1272,7 +1272,7 @@
+ return 1;
+ }
+
+-int isCircular()
++int isCircular(void)
+ {
+ return g_prev[0] == g_len && g_next[g_len - 1] % g_len == 1;
+ }
+--- a/src/energy.c
++++ b/src/energy.c
+@@ -15,6 +15,7 @@
+ #endif
+
+ #include "energy.h"
++#include "util.h"
+ #include "xmalloc.h"
+
+ #ifndef isinf
+--- a/src/hybrid.c
++++ b/src/hybrid.c
+@@ -39,10 +39,10 @@
+ #endif
+
+ void initializeMatrix(double**, int, double);
+-void limitBasePairs();
+-void prohibit();
+-void force();
+-void prefilter();
++void limitBasePairs(void);
++void prohibit(void);
++void force(void);
++void prefilter(void);
+ void fillMatrix(double**, int, double);
+ void fillMatrix_noI(double**, int, double);
+ void calculateProb(double**, double*, double*, double**, double**, double, double, int, double);
+@@ -706,7 +706,7 @@
+ matrix[i - 1][n - 1] = (reverse ? R0(n, i) : L0(i, n));
+ }
+
+-void limitBasePairs()
++void limitBasePairs(void)
+ {
+ if (g_bpFile)
+ {
+@@ -740,7 +740,7 @@
+ }
+ }
+
+-void prohibit()
++void prohibit(void)
+ {
+ int i, j, k;
+ struct constraintListNode *top, *newTop;
+@@ -788,7 +788,7 @@
+ }
+
+ #if ENABLE_FORCE
+-void force()
++void force(void)
+ {
+ int i, j, k;
+ struct constraintListNode *top, *newTop;
+@@ -880,7 +880,7 @@
+ }
+ } */
+
+-void prefilter()
++void prefilter(void)
+ {
+ char** in;
+ int i, j, k, count;
+--- a/src/hybrid-min.c
++++ b/src/hybrid-min.c
+@@ -53,10 +53,10 @@
+ } *pairList;
+
+ void initializeMatrices(double);
+-void limitBasePairs();
+-void prohibit();
+-void force();
+-void prefilter();
++void limitBasePairs(void);
++void prohibit(void);
++void force(void);
++void prefilter(void);
+ void fillMatrixL(double);
+ void fillMatrixR(double);
+ void fillMatrixL_noI(double);
+@@ -88,7 +88,7 @@
+ #define min2(a, b) ((a) < (b) ? (a) : (b))
+ ENERGY min4(ENERGY, ENERGY, ENERGY, ENERGY);
+ void pushPairList(int, int, int, ENERGY);
+-void sortPairList();
++void sortPairList(void);
+
+ ENERGY *lprime, *rprime;
+
+@@ -885,7 +885,7 @@
+ }
+ }
+
+-void limitBasePairs()
++void limitBasePairs(void)
+ {
+ if (g_bpFile)
+ {
+@@ -919,7 +919,7 @@
+ }
+ }
+
+-void prohibit()
++void prohibit(void)
+ {
+ int i, j, k;
+ struct constraintListNode* top;
+@@ -965,7 +965,7 @@
+ }
+
+ #if ENABLE_FORCE
+-void force()
++void force(void)
+ {
+ int i, j, k;
+ struct constraintListNode* top;
+@@ -1041,7 +1041,7 @@
+ return length;
+ }
+
+-void prefilter()
++void prefilter(void)
+ {
+ int i, j;
+
+@@ -1055,7 +1055,7 @@
+ }
+ } */
+
+-void prefilter()
++void prefilter(void)
+ {
+ char** in;
+ int i, j, k, count;
+@@ -2235,7 +2235,7 @@
+ pairList = node;
+ }
+
+-void sortPairList()
++void sortPairList(void)
+ {
+ struct pairListNode *a, *b;
+
+--- a/src/hybrid-plot.c
++++ b/src/hybrid-plot.c
+@@ -70,13 +70,13 @@
+ void displayCallbackInput(void);
+ void keyboardCallbackInput(unsigned char, int, int);
+
+-void fixLength();
+-void fixGrid();
+-void fixLabels();
+-void fixZoomGrid();
+-void fixZoomLabels();
++void fixLength(void);
++void fixGrid(void);
++void fixLabels(void);
++void fixZoomGrid(void);
++void fixZoomLabels(void);
+ void readFiles(char*);
+-void sortTemps();
++void sortTemps(void);
+ double* inputRecords(FILE*);
+ int filter(int, int);
+
+@@ -1157,7 +1157,7 @@
+ }
+ }
+
+-void fixLength()
++void fixLength(void)
+ {
+ int m, n;
+
+@@ -1177,7 +1177,7 @@
+ }
+ }
+
+-void fixGrid()
++void fixGrid(void)
+ {
+ int m;
+
+@@ -1193,7 +1193,7 @@
+ g_grid = pow(10, m + 1);
+ }
+
+-void fixLabels()
++void fixLabels(void)
+ {
+ int longestNum;
+
+@@ -1202,7 +1202,7 @@
+ g_labels += g_grid;
+ }
+
+-void fixZoomGrid()
++void fixZoomGrid(void)
+ {
+ int m;
+
+@@ -1221,7 +1221,7 @@
+ g_zoomGrid = pow(10, m + 1);
+ }
+
+-void fixZoomLabels()
++void fixZoomLabels(void)
+ {
+ int longestNum;
+
+@@ -1310,7 +1310,7 @@
+ return scores;
+ }
+
+-void sortTemps()
++void sortTemps(void)
+ {
+ int i, j;
+ char* tempC;
+--- a/src/hybrid-plot-ng.c
++++ b/src/hybrid-plot-ng.c
+@@ -24,28 +24,28 @@
+ */
+
+ #if HAVE_GD
+-void initPNG();
++void initPNG(void);
+ void titlePNG(char*);
+-void borderPNG();
+-void gridPNG();
++void borderPNG(void);
++void gridPNG(void);
+ void plotDotPNG(int, int, double);
+ void vertCenterPNG(char*, int);
+ void horzCenterPNG(char*, int);
+ void selectionPNG(char*, int);
+ #endif
+
+-void initPS();
++void initPS(void);
+ void titlePS(char*);
+-void borderPS();
+-void gridPS();
++void borderPS(void);
++void gridPS(void);
+ void plotDotPS(int, int, double);
+ void vertCenterPS(char*, int);
+ void horzCenterPS(char*, int);
+ void selectionPS(char*, int);
+
+-void fixSize();
+-void fixGrid();
+-void fixLabels();
++void fixSize(void);
++void fixGrid(void);
++void fixLabels(void);
+ double* inputRecords(FILE*);
+ int filter(int, int);
+ int (*getColor)(double);
+@@ -114,10 +114,10 @@
+ char* plotFile;
+
+ /* functions to call - either PS or PNG */
+- void (*init)();
++ void (*init)(void);
+ void (*title)(char*);
+- void (*border)();
+- void (*grid)();
++ void (*border)(void);
++ void (*grid)(void);
+ void (*plotDot)(int, int, double);
+ void (*vertCenter)(char*, int);
+ void (*horzCenter)(char*, int);
+@@ -474,7 +474,7 @@
+ return 0;
+ }
+
+-void initPS()
++void initPS(void)
+ {
+ int i;
+
+@@ -517,7 +517,7 @@
+ fprintf(g_file, "(%s) showCenter\n", wordString);
+ }
+
+-void borderPS()
++void borderPS(void)
+ {
+ fputs("92 126 moveto\n", g_file);
+ fputs("576 126 lineto\n", g_file);
+@@ -527,7 +527,7 @@
+ fputs("stroke\n", g_file);
+ }
+
+-void gridPS()
++void gridPS(void)
+ {
+ double x1, y1;
+ int i, j;
+@@ -639,7 +639,7 @@
+
+ #if HAVE_GD
+
+-void initPNG()
++void initPNG(void)
+ {
+ int i;
+
+@@ -671,12 +671,12 @@
+ gdImageString(g_image, gdFontMediumBold, 306 - 7 * strlen(wordString) / 2, 51, (unsigned char*) wordString, g_black);
+ }
+
+-void borderPNG()
++void borderPNG(void)
+ {
+ gdImageRectangle(g_image, 92, 92, 576, 576, g_black);
+ }
+
+-void gridPNG()
++void gridPNG(void)
+ {
+ int i, j;
+ char buffer[8];
+@@ -776,7 +776,7 @@
+
+ #endif
+
+-void fixSize()
++void fixSize(void)
+ {
+ int m, n;
+
+@@ -796,7 +796,7 @@
+ }
+ }
+
+-void fixGrid()
++void fixGrid(void)
+ {
+ int m;
+
+@@ -812,7 +812,7 @@
+ g_grid = pow(10, m + 1);
+ }
+
+-void fixLabels()
++void fixLabels(void)
+ {
+ int longestNum;
+
+--- a/src/hybrid-ss.c
++++ b/src/hybrid-ss.c
+@@ -47,10 +47,10 @@
+ #define ssOK(i, j) 1
+ #endif
+
+-void initializeMatrices();
+-void fillMatrices1();
++void initializeMatrices(void);
++void fillMatrices1(void);
+ void fillMatrices2(double*, double*);
+-void fillMatrices1_noI();
++void fillMatrices1_noI(void);
+ void fillMatrices2_noI(double*, double*);
+ void calculateProb(double*, double*, double*, double*, double*, double);
+ void calculateProb_noI(double*, double*, double*, double*, double*);
+@@ -713,7 +713,7 @@
+
+ #include "hybrid-ss_init.h"
+
+-void fillMatrices1()
++void fillMatrices1(void)
+ {
+ int i, j, k;
+ FILE* file;
+@@ -783,7 +783,7 @@
+ }
+ }
+
+-void fillMatrices1_noI()
++void fillMatrices1_noI(void)
+ {
+ int i, j, k;
+ FILE* file;
+--- a/src/hybrid-ss_init.h
++++ b/src/hybrid-ss_init.h
+@@ -14,7 +14,7 @@
+ return length;
+ } */
+
+-void prefilter()
++void prefilter(void)
+ {
+ char** in;
+ int i, j, k, count;
+@@ -45,7 +45,7 @@
+ free(in);
+ }
+
+-void initializeMatrices()
++void initializeMatrices(void)
+ {
+ int i, j, k;
+ struct constraintListNode *top, *newTop;
+--- a/src/hybrid-ss-min.c
++++ b/src/hybrid-ss-min.c
+@@ -57,10 +57,10 @@
+ struct pairListNode* next;
+ } *pairList;
+
+-void initializeMatrices();
+-void fillMatrices1();
+-void fillMatrices2();
+-void computeQ53();
++void initializeMatrices(void);
++void fillMatrices1(void);
++void fillMatrices2(void);
++void computeQ53(void);
+ void traceback(int, int, int, int*, int*, int*);
+ void traceback_noI(int, int, int, int*, int*, int*);
+ void setStack(int, int, int*, int*);
+@@ -108,7 +108,7 @@
+ int equal(ENERGY, ENERGY);
+ void push(struct stackNode**, int, int, int);
+ void pushPairList(int, int, int, ENERGY);
+-void sortPairList();
++void sortPairList(void);
+
+ int g_len;
+ ENERGY *q, *qprime, *qm, *q5, *q3;
+@@ -887,7 +887,7 @@
+ return length;
+ }
+
+-void prefilter()
++void prefilter(void)
+ {
+ char** in;
+ int i, j, k, count;
+@@ -918,7 +918,7 @@
+ free(in);
+ }
+
+-void initializeMatrices()
++void initializeMatrices(void)
+ {
+ int i, j, k;
+ struct constraintListNode* top;
+@@ -1072,7 +1072,7 @@
+ }
+ }
+
+-void fillMatrices1()
++void fillMatrices1(void)
+ {
+ int i, j, k;
+ FILE* file;
+@@ -1181,7 +1181,7 @@
+ }
+ }
+
+-void fillMatrices2()
++void fillMatrices2(void)
+ {
+ int i, j, k;
+ FILE* file;
+@@ -1283,7 +1283,7 @@
+ }
+ }
+
+-void computeQ53()
++void computeQ53(void)
+ {
+ int i, j;
+
+@@ -3137,7 +3137,7 @@
+ pairList = node;
+ }
+
+-void sortPairList()
++void sortPairList(void)
+ {
+ struct pairListNode *a, *b;
+
+--- a/src/hybrid-ss-noml.c
++++ b/src/hybrid-ss-noml.c
+@@ -45,11 +45,11 @@
+ #define ssOK(i, j) 1
+ #endif
+
+-void initializeMatrices();
+-void fillMatrices1();
+-void fillMatrices2();
+-void fillMatrices1_noI();
+-void fillMatrices2_noI();
++void initializeMatrices(void);
++void fillMatrices1(void);
++void fillMatrices2(void);
++void fillMatrices1_noI(void);
++void fillMatrices2_noI(void);
+ void calculateProb(double*, double*, double*, double);
+ void calculateProb_noI(double*, double*, double*, double);
+ void traceback(int*, int*, int*);
+@@ -652,7 +652,7 @@
+ return length;
+ } */
+
+-void prefilter()
++void prefilter(void)
+ {
+ char** in;
+ int i, j, k, count;
+@@ -683,7 +683,7 @@
+ free(in);
+ }
+
+-void initializeMatrices()
++void initializeMatrices(void)
+ {
+ int i, j, k;
+ struct constraintListNode *top, *newTop;
+@@ -826,7 +826,7 @@
+ }
+ }
+
+-void fillMatrices1()
++void fillMatrices1(void)
+ {
+ int i, j, k;
+ FILE* file;
+@@ -885,7 +885,7 @@
+ }
+ }
+
+-void fillMatrices1_noI()
++void fillMatrices1_noI(void)
+ {
+ int i, j, k;
+ FILE* file;
+@@ -944,7 +944,7 @@
+ }
+ }
+
+-void fillMatrices2()
++void fillMatrices2(void)
+ {
+ int i, j;
+ FILE* file;
+@@ -986,7 +986,7 @@
+ }
+ }
+
+-void fillMatrices2_noI()
++void fillMatrices2_noI(void)
+ {
+ int i, j;
+ FILE* file;
+--- a/src/hybrid-ss-simple.c
++++ b/src/hybrid-ss-simple.c
+@@ -47,11 +47,11 @@
+ #define ssOK(i, j) 1
+ #endif
+
+-void initializeMatrices();
+-void fillMatrices1();
+-void fillMatrices2();
+-void fillMatrices1_noI();
+-void fillMatrices2_noI();
++void initializeMatrices(void);
++void fillMatrices1(void);
++void fillMatrices2(void);
++void fillMatrices1_noI(void);
++void fillMatrices2_noI(void);
+ void calculateProb(double*, double*, double*, double);
+ void calculateProb_noI(double*, double*, double*);
+ void traceback(int*, int*, int*);
+@@ -598,7 +598,7 @@
+
+ #include "hybrid-ss_init.h"
+
+-void fillMatrices1()
++void fillMatrices1(void)
+ {
+ int i, j, k;
+ FILE* file;
+@@ -658,7 +658,7 @@
+ }
+ }
+
+-void fillMatrices1_noI()
++void fillMatrices1_noI(void)
+ {
+ int i, j, k;
+ FILE* file;
+@@ -718,7 +718,7 @@
+ }
+ }
+
+-void fillMatrices2()
++void fillMatrices2(void)
+ {
+ int i, j, k;
+ FILE* file;
+@@ -789,7 +789,7 @@
+ }
+ }
+
+-void fillMatrices2_noI()
++void fillMatrices2_noI(void)
+ {
+ int i, j, k;
+ FILE* file;
+--- a/src/util.h
++++ b/src/util.h
+@@ -24,18 +24,18 @@
+
+ /* #define NO_GU_BASEPAIRS */
+
+-int roundInt(double d)
++static int roundInt(double d)
+ {
+ return (int) (d + .5);
+ }
+
+-void strcatc(char* str, char c)
++static void strcatc(char* str, char c)
+ {
+ str[strlen(str) + 1] = 0;
+ str[strlen(str)] = c;
+ }
+
+-char* filename(char* file)
++static char* filename(char* file)
+ {
+ char* name;
+
+@@ -46,7 +46,7 @@
+ return name;
+ }
+
+-void checkArray(char** array, unsigned int* available, unsigned int used, unsigned int increment)
++static void checkArray(char** array, unsigned int* available, unsigned int used, unsigned int increment)
+ {
+ if (used == *available)
+ {
+@@ -55,7 +55,7 @@
+ }
+ }
+
+-int input(FILE* file, char** name, char** sequence)
++static int input(FILE* file, char** name, char** sequence)
+ {
+ /* read string from file */
+ int current, last, state;
+@@ -120,7 +120,7 @@
+ return 1;
+ }
+
+-unsigned char toNum(char c)
++static unsigned char toNum(char c)
+ {
+ c = toupper(c);
+ switch (c)
+@@ -137,7 +137,7 @@
+ return 4;
+ }
+
+-int seqcmp(unsigned char* seq1, unsigned char* seq2, int length)
++static int seqcmp(unsigned char* seq1, unsigned char* seq2, int length)
+ {
+ int i;
+
+@@ -149,7 +149,7 @@
+ return 0;
+ }
+
+-void readSequence(char* file, char** name, char** string, unsigned char** seq, int* len)
++static void readSequence(char* file, char** name, char** string, unsigned char** seq, int* len)
+ {
+ int i;
+ FILE* f;
+@@ -171,14 +171,14 @@
+ }
+
+ #ifdef NO_GU_BASEPAIRS
+-const int BPI[6][6] = {{6, 6, 6, 0, 6, 6},
++static const int BPI[6][6] = {{6, 6, 6, 0, 6, 6},
+ {6, 6, 1, 6, 6, 6},
+ {6, 2, 6, 6, 6, 6},
+ {3, 6, 6, 6, 6, 6},
+ {6, 6, 6, 6, 6, 6},
+ {6, 6, 6, 6, 6, 6}};
+ #else
+-const int BPI[6][6] = {{6, 6, 6, 0, 6, 6},
++static const int BPI[6][6] = {{6, 6, 6, 0, 6, 6},
+ {6, 6, 1, 6, 6, 6},
+ {6, 2, 6, 4, 6, 6},
+ {3, 6, 5, 6, 6, 6},
+@@ -187,7 +187,7 @@
+ #endif
+ #define basePairIndex(a, b) BPI[a][b]
+
+-int min3(int a, int b, int c)
++static int min3(int a, int b, int c)
+ {
+ if (a <= b && a <= c)
+ return a;
+@@ -196,7 +196,7 @@
+ return c;
+ }
+
+-int same(unsigned char* a, unsigned char* b, int len)
++static int same(unsigned char* a, unsigned char* b, int len)
+ {
+ int i;
+
+@@ -206,7 +206,7 @@
+ return 1;
+ }
+
+-void version(const char* prog)
++static void version(const char* prog)
+ {
+ printf("%s (%s) %s\n", prog, PACKAGE_NAME, PACKAGE_VERSION);
+ puts("By Nicholas R. Markham and Michael Zuker");
+@@ -216,7 +216,7 @@
+ exit(EXIT_SUCCESS);
+ }
+
+-void readOrDie(unsigned int num, const char* name, FILE* file, const char* format, ...)
++static void readOrDie(unsigned int num, const char* name, FILE* file, const char* format, ...)
+ {
+ va_list arg;
+ va_start(arg, format);
diff --git a/sci-biology/unafold/unafold-3.8-r1.ebuild b/sci-biology/unafold/unafold-3.8-r1.ebuild
index 6aec75f0336d..51bbe5dfd325 100644
--- a/sci-biology/unafold/unafold-3.8-r1.ebuild
+++ b/sci-biology/unafold/unafold-3.8-r1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit flag-o-matic
+inherit autotools
DESCRIPTION="Unified Nucleic Acid Folding and hybridization package"
HOMEPAGE="http://mfold.rna.albany.edu/"
@@ -12,19 +12,25 @@ SRC_URI="http://dinamelt.bioinfo.rpi.edu/download/${P}.tar.bz2"
LICENSE="unafold"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE="custom-cflags"
RDEPEND="
media-libs/freeglut
media-libs/gd
virtual/opengl"
DEPEND="${RDEPEND}"
+BDEPEND="sys-devel/autoconf-archive"
-PATCHES=( "${FILESDIR}"/${P}-doc-version.patch )
-
-src_configure() {
- # recommended in README
- use custom-cflags || append-flags -O3
+PATCHES=(
+ "${FILESDIR}"/${P}-doc-version.patch
+ "${FILESDIR}"/${P}-autotools.patch
+ "${FILESDIR}"/${P}-clang16.patch
+)
+src_prepare() {
default
+ eautoreconf
+}
+
+src_configure() {
+ econf --disable-coverage
}