diff --git a/biology/seaview/Makefile b/biology/seaview/Makefile index 922134459401..3508d87dfddc 100644 --- a/biology/seaview/Makefile +++ b/biology/seaview/Makefile @@ -12,9 +12,6 @@ COMMENT= Multiple DNA/protein sequence alignment editor LICENSE= GPLv3 -BROKEN_FreeBSD_13= ld: error: duplicate symbol: progname -BROKEN_FreeBSD_14= ld: error: duplicate symbol: progname - LIB_DEPENDS= libfltk.so:x11-toolkits/fltk \ libfontconfig.so:x11-fonts/fontconfig \ libpng.so:graphics/png @@ -40,6 +37,10 @@ post-patch: ${REINPLACE_CMD} -e \ 's|^\(CC\) |#\1 | ; s|-ldl || ; \ s|^\(CXX\) |#\1 |' ${WRKSRC}/Makefile + ${REINPLACE_CMD} -E \ + '/firstplotblock|javarun|\*progname/s,^,extern ,' \ + ${WRKSRC}/csrc/phylip.h ${WRKSRC}/csrc/protpars.c + ${ECHO_CMD} 'boolean javarun;' >> ${WRKSRC}/csrc/phylip.c do-install: (cd ${WRKSRC} && ${INSTALL_PROGRAM} seaview \ diff --git a/biology/seaview/files/patch-csrc_dnapars.c b/biology/seaview/files/patch-csrc_dnapars.c new file mode 100644 index 000000000000..ecf81d66f4ae --- /dev/null +++ b/biology/seaview/files/patch-csrc_dnapars.c @@ -0,0 +1,70 @@ +--- csrc/dnapars.c.orig 2019-11-29 14:00:33 UTC ++++ csrc/dnapars.c +@@ -77,41 +77,44 @@ void load_tree(long treei); + /* function prototypes */ + + +-Char infilename[FNMLNGTH], outfilename[FNMLNGTH], intreename[FNMLNGTH], *outtreename, ++extern Char infilename[FNMLNGTH], outfilename[FNMLNGTH], intreename[FNMLNGTH], *outtreename, + weightfilename[FNMLNGTH]; + char basechar[32]="ACMGRSVTWYHKDBNO???????????????"; +-node *root; +-long chars, col, msets, ith, njumble, jumb, maxtrees; ++extern node *root; ++extern long chars, col, msets, ith, njumble, jumb; ++long maxtrees; + /* chars = number of sites in actual sequences */ +-long inseed, inseed0; +-double threshold; +-boolean jumble, usertree, thresh, weights, thorough, rearrfirst, +- trout, progress, stepbox, ancseq, mulsets, justwts, firstset, mulf, +- multf; ++extern long inseed, inseed0; ++extern double threshold; ++extern boolean jumble, usertree, thresh, weights, ++ trout, progress, stepbox, ancseq, mulsets, justwts, firstset; ++boolean thorough, rearrfirst, mulf, multf; + steptr oldweight; +-longer seed; +-pointarray treenode; /* pointers to all nodes in tree */ +-long *enterorder; ++extern longer seed; ++extern pointarray treenode; /* pointers to all nodes in tree */ ++extern long *enterorder; + long *zeros; + + /* local variables for Pascal maketree, propagated globally for C version: */ + +-long minwhich; ++extern long minwhich; + static double like, minsteps, bestyet, bestlike, bstlike2; +-boolean lastrearr, recompute; +-double nsteps[maxuser]; +-long **fsteps; +-node *there, *oldnufork; +-long *place; +-bestelm *bestrees; +-long *threshwt; ++extern boolean lastrearr, recompute; ++extern double nsteps[maxuser]; ++extern long **fsteps; ++extern node *there; ++node *oldnufork; ++extern long *place; ++extern bestelm *bestrees; ++extern long *threshwt; + baseptr nothing; +-gbases *garbage; +-node *temp, *temp1, *temp2, *tempsum, *temprm, *tempadd, *tempf, *tmp, *tmp1, ++extern gbases *garbage; ++extern node *temp, *temp1; ++node *temp2, *tempsum, *temprm, *tempadd, *tempf, *tmp, *tmp1, + *tmp2, *tmp3, *tmprm, *tmpadd; +-boolean *names; ++extern boolean *names; + node *grbg; +-char *progname; ++extern char *progname; + + + static void getoptions(int arg_maxtrees, dnapars_S_option s_option)