diff options
Diffstat (limited to 'academic/ViennaRNA')
-rw-r--r-- | academic/ViennaRNA/README | 41 | ||||
-rw-r--r-- | academic/ViennaRNA/ViennaRNA.SlackBuild | 85 | ||||
-rw-r--r-- | academic/ViennaRNA/ViennaRNA.info | 12 | ||||
-rw-r--r-- | academic/ViennaRNA/doinst.sh | 4 | ||||
-rw-r--r-- | academic/ViennaRNA/douninst.sh | 6 |
5 files changed, 88 insertions, 60 deletions
diff --git a/academic/ViennaRNA/README b/academic/ViennaRNA/README index 6ad531d628..4807f340a8 100644 --- a/academic/ViennaRNA/README +++ b/academic/ViennaRNA/README @@ -3,12 +3,22 @@ A C code library and several stand-alone programs for the prediction and comparison of RNA secondary structures. +A recent addition, RNAxplorer, requires lapacke (which requires +lapack that depends on a version of blas). During configuration the +step for RNAxplorer stalls (on missing lapack) because it does not +find the version of blas that has been used for compiling lapack +(see https://github.com/ViennaRNA/ViennaRNA/issues/206). +An extra variable ($BLAS) in the SlackBuild sets openblas as the +version of blas used for lapack(e). Please, adjust $BLAS to the blas +used on your system. + A tutorial (see /usr/doc/$PRGNAM-$VERSION/RNA-tutorial-$VERSION.pdf) and examples can be found in /usr/share/$PRGNAM/tutorial and /usr/share/$PRGNAM/examples -For those who wish to link the Vienna package to their own C, perl or python programs (see below), -the RNAlib Reference Manual can be assessed at: +For those who wish to link the Vienna package to their own C, perl +or python programs (see below), the RNAlib Reference Manual can be +assessed at: https://www.tbi.univie.ac.at/RNA/ViennaRNA/doc/html/index.html (or unpacked from the src: $PRGNAM-$VERSION/doc/html/) @@ -22,30 +32,17 @@ Amongst other things, the ViennRNA implementations allow you to: - compute various equilibrium probabilities - calculate suboptimal structures in a given energy range - compute local structures in long sequences -- predict consensus secondary structures from a multiple sequence alignment +- predict consensus secondary structures from a multiple sequence + alignment - predict melting curves - search for sequences folding into a given structure -- compare two secondary structures +- compare two secondary structures - predict hybridization structures of two RNA molecules -The package includes `Perl 5` and `Python 3` modules that give -access to almost all functions of the C library from within the respective -scripting languages. For this reason, python3 is a dependency - -The `Python 2` module can be built as well, or instead of the one for `Python 3`; -just edit the SlackBuild or run it by setting build options PYTHON=yes PYTHON3=no. -(e.g. in sbopkg or run it from the commandline -within the directory containing -the SlackBuild script and downloaded source archive- as: -`PYTHON=yes PYTHON3=no ./ViennaRNA.SlackBuild`) - -There is also a set of programs for analyzing sequence and distance -data using split decomposition, statistical geometry, and cluster methods. -They are not maintained any more and not built by default. - -The code very rarely uses static arrays, and all programs should work for -sequences up to a length of 32,700 (if you have huge amounts of memory that -is). +The package includes `Perl` and `Python 3` modules that give access +to almost all functions of the C library from within the respective +scripting languages. -For further info see: +For further/most recent info see: https://www.tbi.univie.ac.at/RNA/documentation.html diff --git a/academic/ViennaRNA/ViennaRNA.SlackBuild b/academic/ViennaRNA/ViennaRNA.SlackBuild index ff63062efc..42ae76bbd7 100644 --- a/academic/ViennaRNA/ViennaRNA.SlackBuild +++ b/academic/ViennaRNA/ViennaRNA.SlackBuild @@ -1,8 +1,8 @@ -#!/bin/sh +#!/bin/bash # Slackware build script for ViennaRNA -# Copyright 2018 Rob van Nues +# Copyright 2018-2023 Rob van Nues # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -22,10 +22,19 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +cd $(dirname $0) ; CWD=$(pwd) + PRGNAM=ViennaRNA -VERSION=${VERSION:-2.4.14} +VERSION=${VERSION:-2.6.4} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} +PKGTYPE=${PKGTYPE:-tgz} + +# RNAxplorer requires lapacke (which requires lapack that requires blas) +# but cannot see what blas is used for compiling lapack +# please adjust $BLAS to the blas installed on your system +BLAS=${BLAS:-openblas} + if [ -z "$ARCH" ]; then case "$( uname -m )" in @@ -35,7 +44,11 @@ if [ -z "$ARCH" ]; then esac fi -CWD=$(pwd) +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE" + exit 0 +fi + TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} @@ -82,8 +95,7 @@ find -L . \ # - RNAlocmin # - Swig (all scripting interfaces) # - Perl interface -# - Python interface -# - Python 3 interface +# - Python 3 interface (= Python interface) # - Streaming SIMD Extension support # in the case of run time/ make/ or configure problems try turning off: # - Link Time Optimization (LTO) @@ -94,25 +106,24 @@ find -L . \ # for Z-score filtering via statically linked libsvm: # - SVM Z-score filter in RNALfold # - GNU Scientific Library for RNApvmin - -cluster="" ; [ "${CLUSTER:-yes}" != "no" ] && cluster="--with-cluster" -kinwalker="" ; [ "${KINWALKER:-yes}" != "no" ] && kinwalker="--with-kinwalker" +# everything is enabled here +cluster="" ; [ "${CLUSTER:-yes}" != "no" ] && cluster="--with-cluster" +kinwalker="" ; [ "${KINWALKER:-yes}" != "no" ] && kinwalker="--with-kinwalker" # Default enabled features: -forester="" ; [ "${FORESTER:-yes}" != "yes" ] && forester="--without-forester" -kinfold="" ; [ "${KINFOLD:-yes}" != "yes" ] && kinwalk="--without-kinfold" -rnalocmin="" ; [ "${RNALOCMIN:-yes}" != "yes" ] && rnalocmin="--without-rnalocmin" -perl="" ; [ "${PERL:-yes}" != "yes" ] && perl="--without-perl" - -python3="" ; [ "${PYTHON3:-yes}" != "yes" ] && python3="--without-python3" -swig="" ; [ "${SWIG:-yes}" != "yes" ] && swig="--without-swig" -simd="" ; [ "${SIMD:-yes}" != "yes" ] && simd="--disable-simd" -lto="" ; [ "${LTO:-yes}" != "yes" ] && lto="--disable-lto" -openmp="" ; [ "${OPENMP:-yes}" != "yes" ] && openmp="--disable-openmp" -pthreads="" ; [ "${PTHREADS:-yes}" != "yes" ] && pthreads="--disable-pthreads" -svm="" ; [ "${SVM:-yes}" != "yes" ] && svm="--without-svm" -gsl="" ; [ "${GSL:-yes}" != "yes" ] && gsl="--without-gsl" -# Default to python3 (above) only; -python="" ; [ "${PYTHON:-no}" != "yes" ] && python="--without-python" +forester="" ; [ "${FORESTER:-yes}" != "no" ] && forester="--with-forester" +kinfold="" ; [ "${KINFOLD:-yes}" != "no" ] && kinfold="--with-kinfold" +rnalocmin="" ; [ "${RNALOCMIN:-yes}" != "no" ] && rnalocmin="--with-rnalocmin" +perl="" ; [ "${PERL:-yes}" != "no" ] && perl="--with-perl" +# python = python3 +python="" ; [ "${PYTHON:-yes}" != "no" ] && python="--with-python" +swig="" ; [ "${SWIG:-yes}" != "no" ] && swig="--with-swig" +simd="" ; [ "${SIMD:-yes}" != "no" ] && simd="--enable-simd" +lto="" ; [ "${LTO:-yes}" != "no" ] && lto="--enable-lto" +openmp="" ; [ "${OPENMP:-yes}" != "no" ] && openmp="--enable-openmp" +pthreads="" ; [ "${PTHREADS:-yes}" != "no" ] && pthreads="--enable-pthreads" +svm="" ; [ "${SVM:-yes}" != "no" ] && svm="--with-svm" +gsl="" ; [ "${GSL:-yes}" != "no" ] && gsl="--with-gsl" +json="" ; [ "${JSON:-yes}" != "no" ] && json="--with-json" CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ @@ -122,6 +133,9 @@ CXXFLAGS="$SLKCFLAGS" \ --mandir=/usr/man \ --docdir=/usr/doc/$PRGNAM-$VERSION \ --build=$ARCH-slackware-linux \ + --with-blas=$BLAS \ + --with-python2=no \ + --with-doc=no \ $cluster \ $kinwalker \ $forester \ @@ -129,14 +143,15 @@ CXXFLAGS="$SLKCFLAGS" \ $rnalocmin \ $perl \ $python \ - $python3 \ $swig \ $simd \ $lto \ $openmp \ $pthreads \ $svm \ - $gsl || exit 1 + $gsl \ + $json \ + || exit 1 make make install DESTDIR=$PKG @@ -155,11 +170,13 @@ for perlscript in $PKG/usr/share/ViennaRNA/bin/*.pl ; do done rm -r $PKG/usr/share/ViennaRNA/bin -# no need for that file it is outdated anyway +# re-organise info files the Slackware/SBo way +mkdir $PKG/usr/info/ rm $PKG/usr/share/info/dir - -#gzip info file -gzip -9 $PKG/usr/share/info/*.info +#gzip and move info file +gzip -9 $PKG/usr/share/info/*.info* +mv $PKG/usr/share/info/*.info* $PKG/usr/info/ +rmdir $PKG/usr/share/info find $PKG/usr/man -type f -exec gzip -9 {} \; for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done @@ -181,12 +198,16 @@ if [[ -e $PKG/usr/doc/$PRGNAM-$VERSION/RNAlib-$VERSION.pdf ]]; then fi cp -a \ - NEWS README.md AUTHORS COPYING THANKS INSTALL CHANGELOG.md license.txt \ + NEWS README.md AUTHORS COPYING THANKS CHANGELOG.md license.txt \ $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild +rm -f $PKG/usr/lib*/*.la + mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc +cat $CWD/doinst.sh > $PKG/install/doinst.sh +cat $CWD/douninst.sh > $PKG/install/douninst.sh cd $PKG -/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE diff --git a/academic/ViennaRNA/ViennaRNA.info b/academic/ViennaRNA/ViennaRNA.info index 06e2675530..b871a31ccc 100644 --- a/academic/ViennaRNA/ViennaRNA.info +++ b/academic/ViennaRNA/ViennaRNA.info @@ -1,10 +1,10 @@ PRGNAM="ViennaRNA" -VERSION="2.4.14" +VERSION="2.6.4" HOMEPAGE="https://www.tbi.univie.ac.at/RNA" -DOWNLOAD="https://github.com/ViennaRNA/ViennaRNA/releases/download/v2.4.14/ViennaRNA-2.4.14.tar.gz" -MD5SUM="b9c64be709d3dfef72cc27e615845a04" -DOWNLOAD_x86_64="" -MD5SUM_x86_64="" -REQUIRES="python3 gri" +DOWNLOAD="UNSUPPORTED" +MD5SUM="" +DOWNLOAD_x86_64="https://www.tbi.univie.ac.at/RNA/download/sourcecode/2_6_x/ViennaRNA-2.6.4.tar.gz" +MD5SUM_x86_64="6d8fd8ffe44d70399bff220f709a2b55" +REQUIRES="lapacke" MAINTAINER="Rob van Nues" EMAIL="sborg63@disroot.org" diff --git a/academic/ViennaRNA/doinst.sh b/academic/ViennaRNA/doinst.sh new file mode 100644 index 0000000000..fe39c0a9d2 --- /dev/null +++ b/academic/ViennaRNA/doinst.sh @@ -0,0 +1,4 @@ +if [ -x /usr/bin/install-info ]; then + /usr/bin/install-info --info-dir=usr/info usr/info/RNAlib.info.gz 1> /dev/null 2>&1 +fi + diff --git a/academic/ViennaRNA/douninst.sh b/academic/ViennaRNA/douninst.sh new file mode 100644 index 0000000000..1bef502028 --- /dev/null +++ b/academic/ViennaRNA/douninst.sh @@ -0,0 +1,6 @@ +if [ -x /usr/bin/install-info -a -d usr/info ]; then + ( cd usr/info + rm -f dir + for i in *.info*; do /usr/bin/install-info $i dir 2>/dev/null; done + ) +fi |