diff --git a/biology/seaview/Makefile b/biology/seaview/Makefile index 922134459401..3508d87dfddc 100644 --- a/biology/seaview/Makefile +++ b/biology/seaview/Makefile @@ -1,55 +1,56 @@ # Created by: frankch@waru.life.nthu.edu.tw PORTNAME= seaview PORTVERSION= 5.0.4 PORTEPOCH= 1 CATEGORIES= biology MASTER_SITES= ftp://pbil.univ-lyon1.fr/pub/mol_phylogeny/seaview/archive/ DISTNAME= ${PORTNAME}_${PORTVERSION} MAINTAINER= bofh@FreeBSD.org 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 PORTSCOUT= skipv:4.6.1.3 WRKSRC= ${WRKDIR}/${PORTNAME} USES= gmake jpeg xorg USE_XORG= x11 xcursor xext xfixes xft xinerama xrender MAKE_ENV= HELPFILE='-DDEFAULT_HELPFILE=\"${DATADIR}/seaview.html\"' \ PHYMLNAME='-DPHYMLNAME=\"phyml\"' \ IFLTK='-I${LOCALBASE}/include' \ LFLTK='-L${LOCALBASE}/lib' \ USE_XFT='-DUSE_XFT' \ OPT="${CFLAGS}" ALL_TARGET= ${PORTNAME} DESKTOP_ENTRIES="SeaView" "" "${PREFIX}/share/pixmaps/seaview.xpm" "seaview" \ "Biology;Science;" true 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 \ ${STAGEDIR}${PREFIX}/bin) (cd ${WRKSRC} && ${INSTALL_MAN} seaview.1 \ ${STAGEDIR}${MANPREFIX}/man/man1) ${MKDIR} ${STAGEDIR}${DATADIR} (cd ${WRKSRC} && ${INSTALL_DATA} seaview.html \ ${STAGEDIR}${DATADIR}) (cd ${WRKSRC} && ${INSTALL_DATA} seaview.xpm \ ${STAGEDIR}${PREFIX}/share/pixmaps) .include 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)