Skip to content

Commit

Permalink
Merge pull request #76 from BackofenLab/intarna-2
Browse files Browse the repository at this point in the history
prepare Intarna 2.0.3 release
  • Loading branch information
Martin Mann authored May 3, 2017
2 parents 180f9cd + 33b74e3 commit fb8c112
Show file tree
Hide file tree
Showing 30 changed files with 1,153 additions and 310 deletions.
18 changes: 10 additions & 8 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,19 +15,18 @@ addons:
sources:
- ubuntu-toolchain-r-test
packages:
- gcc-4.9
- g++-4.9
- doxygen


#- gcc-4.9
#- g++-4.9
# - doxygen

before_install:
- wget http://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh
- chmod +x miniconda.sh
- "./miniconda.sh -b"
- export CONDA_PATH=$HOME/miniconda3
- export PATH=$CONDA_PATH/bin:$PATH
- conda update --yes conda
- conda install --yes automake pkgconfig viennarna boost -c conda-forge -c bioconda
- conda install --yes gcc automake pkgconfig viennarna boost=1.61.* -c conda-forge -c bioconda
# - export CONDA_PATH=/home/travis/miniconda2/
- export CONDA_LIB_PATH=$CONDA_PATH/lib
# - ls $CONDA_LIB_PATH
Expand All @@ -40,9 +39,12 @@ script:
- cd $TRAVIS_BUILD_DIR
# generate autotools's files
- bash autotools-init.sh
- CC=gcc-4.9 CXX=g++-4.9 ./configure --with-boost=$CONDA_PATH --with-vrna=$CONDA_PATH --prefix=$HOME/IntaRNA
#- CC=gcc-4.9 CXX=g++-4.9 ./configure --with-boost=$CONDA_PATH --with-vrna=$CONDA_PATH --prefix=$HOME/IntaRNA
- ./configure --with-boost=$CONDA_PATH --with-vrna=$CONDA_PATH --prefix=$HOME/IntaRNA
# compile documentation
# - make doxygen-doc
# compile, test and install IntaRNA
- make && make tests && make install
- make -j 2 && make tests -j 2 && make install
##### check IntaRNA build #####
# run IntaRNA with help output
- $HOME/IntaRNA/bin/IntaRNA -h
37 changes: 37 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,4 +1,41 @@

170503 Martin Mann :
* README.md :
+ OS X install instructions (thanks to Lars Barquist)
+ IntaRNA/NussinovHandler : (thanks to Mostafa Mahmoud) implementation of
intramolecular structure prediction, partition function and probability
computation using a variant of the Nussinov-Jacobson model
* IntaRNA/AccessibilityBasePair :
* uses NussinovHandler for computation
* IntaRNA/InteractionEnergyBasePair :
* uses NussinovHandler for computation
+ computeES() : fill a given ES value container
* getES*() : enabled
+ tests for NussinovHandler
+ tests for InteractionEnergyBasePair

170413 Martin Mann :
* doc/*
+ added to distribution build

170412 Martin Mann :
* configure.ac :
* doxygen docu generation now truely optional
* pkgconfig usage now truely optional (check for m4 functions)
* Makefile.am :
* doxygen docu generation now truely optional
- include of doc/doxygen.am obsolete
+ @DX_RULES@ : doxygen rules generated by configure
- doc/doxygen.am : obsolete

170411 Martin Mann :
* PredictorHeuristicSeed :
* predict() :
* bugfix : reinit was not overwriting all hybridE_seed entries
(thanks to Alex Gawronski)

version 2.0.2

170328 Martin Mann :
* PredictorHeuristic* :
* predict() :
Expand Down
5 changes: 3 additions & 2 deletions Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,17 @@
# ACLOCAL_AMFLAGS=-I m4

# sub directories to check for Makefiles
SUBDIRS = src perl tests .
SUBDIRS = src perl tests doc .

################################################################
# doxygen
################################################################

if enable_doxygen
## doxygen documentation make target
include $(top_srcdir)/doc/doxygen.am
@DX_RULES@
else
## generate mandatory targets otherwise generated by doxygen.m4
DX_PHONY =
endif

Expand Down
78 changes: 67 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ The following topics are covered by this documentation:
- [Cloning from github](#instgithub)
- [Source code distribution](#instsource)
- [Microsoft Windows installation](#instwin)
- [OS X installation with homebrew](#instosx)
- [Usage and Parameters](#usage)
- [Just run ...](#defaultRun)
- [Prediction modes, their features and emulated tools](#predModes)
Expand Down Expand Up @@ -120,10 +121,10 @@ dependencies:
- compiler supporting C++11 standard and OpenMP
- [boost C++ library](http://www.boost.org/) version >= 1.50.0
(ensure the following libraries are installed; or install all e.g. in Ubuntu via package `libboost-all-dev`)
- libboost_regex
- libboost_program_options
- libboost_filesystem
- libboost_system
- libboost_regex
- libboost_program_options
- libboost_filesystem
- libboost_system
- [Vienna RNA package](http://www.tbi.univie.ac.at/RNA/) version >= 2.3.0
- if [cloning from github](#instgithub): GNU autotools (automake, autoconf, ..)

Expand Down Expand Up @@ -191,15 +192,15 @@ e.g. using [Cygwin](https://www.cygwin.com/) as 'linux emulator'. Just install
Cygwin with the following packages:

- *Devel*:
- make
- gcc-g++
- autoconf
- automake
- pkg-config
- make
- gcc-g++
- autoconf
- automake
- pkg-config
- *Libs*:
- libboost-devel
- libboost-devel
- *Perl*:
- perl
- perl

and follow either [install from github](#instgithub) or
[install from package](#instsource).
Expand All @@ -224,6 +225,61 @@ directory to your [`Path` System variable](http://www.computerhope.com/issues/ch



<br /><br />
<a name="instosx" />
## OS X installation with homebrew (thanks to Lars Barquist)

If you do not want to or can use the pre-compiled binaries for OS X available from
[bioconda](https://anaconda.org/bioconda/intarna), you can compile `IntaRNA`
locally.

The following wraps up how to build `IntaRNA-2.0.2` under OS X (Sierra 10.12.4) using homebrew.

First, install homebrew! :)

```[bash]
brew install gcc --without-multilib
```

`--without-multilib` is necessary for OpenMP multithreading support -- note
OS X default `gcc`/`clang` doesn't support OpenMP, so we need to install standard
`gcc`/`g++`

```[bash]
brew install boost --cc=gcc-6
```

`--cc=gcc-6` is necessary to build `boost` with standard `gcc`, rather than the
default bottle which appears to have been built with the system `clang`.
Brew installs `gcc`/`g++` as `/usr/local/bin/gcc-VERSION` by default to avoid
clashing with the system's `gcc`/`clang`. `6` is the current version as of
writing, but may change.

```[bash]
brew install viennarna
brew install doxygen
```

Download and extract the IntaRNA source code package (e.g. `intaRNA-2.0.2.tar.gz`) from the [release page](releases/).

```[bash]
./configure CC=gcc-6 CXX=g++-6
```

This sets up makefiles to use standard `gcc`/`g++` from brew, which will
need an update to the appropriate compiler version if not still `6`.
You might also want to
set `--prefix=INSTALLPATH` if you dont want to install IntaRNA globally.


```[bash]
Make
make tests
make install
```




<br /><br /><br /><br />
<a name="usage" />
Expand Down
22 changes: 19 additions & 3 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

AC_PREREQ([2.65])
# 5 argument version only available with aclocal >= 2.64
AC_INIT( [IntaRNA], [2.0.2], [], [intaRNA], [http://www.bioinf.uni-freiburg.de] )
AC_INIT( [IntaRNA], [2.0.3], [], [intaRNA], [http://www.bioinf.uni-freiburg.de] )


# minimal required version of the boost library
Expand All @@ -16,7 +16,10 @@ AC_CONFIG_AUX_DIR([.])
AC_CONFIG_SRCDIR([src/easylogging++.h])
AC_CONFIG_HEADERS([src/config.h])

AC_CONFIG_MACRO_DIR([m4])
# AC_CONFIG_MACRO_DIR([m4])
m4_include([m4/m4_ax_cxx_compile_stdcxx.m4])
m4_include([m4/m4_ax_openmp.m4])
m4_include([m4/m4_ax_boost_base.m4])

lt_enable_auto_import=""
case "$host_os" in
Expand Down Expand Up @@ -67,6 +70,16 @@ AC_MSG_RESULT([$pkgconfigEnabled])
AS_IF([test x"$pkgconfigEnabled" = x"yes"], [
# Checks for pkg-config
AC_CHECK_PROG([HAVE_PKG_CONFIG],[pkg-config],[yes],[no])
AS_IF([test "HAVE_PKG_CONFIG" == "yes"], [
dnl Testing presence of pkg-config
AC_MSG_CHECKING([pkg-config m4 macros])
AS_IF([test m4_ifdef([PKG_CHECK_MODULES], [yes], [no]) == yes], [
AC_MSG_RESULT([yes]);
], [
AC_MSG_RESULT([no]);
HAVE_PKG_CONFIG=no
])
])
], [
HAVE_PKG_CONFIG=no
])
Expand Down Expand Up @@ -146,6 +159,8 @@ dnl generate doxygen documentation in Doxy
AC_CHECK_PROG([HAVE_DOXYGEN],[doxygen],[yes],[no])

AS_IF([test "x$HAVE_DOXYGEN" = "xyes"], [
# loading m4 macro
m4_include([m4/doxygen.m4])
# setup doxygen documentation to build
DX_HTML_FEATURE(ON)
DX_CHM_FEATURE(OFF)
Expand All @@ -156,7 +171,7 @@ AS_IF([test "x$HAVE_DOXYGEN" = "xyes"], [
DX_PDF_FEATURE(ON)
DX_PS_FEATURE(OFF)
# generate according options etc.
DX_INIT_DOXYGEN($PACKAGE_NAME, ["doc/doxygen.cfg"], ["doxygen-doc"])
DX_INIT_DOXYGEN($PACKAGE_NAME, [doc/doxygen.cfg], [doxygen-doc])
])

###############################################################################
Expand Down Expand Up @@ -298,6 +313,7 @@ AC_CONFIG_FILES([src/IntaRNA/intarna_config.h])
AC_CONFIG_FILES([src/bin/Makefile])
AC_CONFIG_FILES([perl/Makefile])
AC_CONFIG_FILES([tests/Makefile])
AC_CONFIG_FILES([doc/Makefile])
AC_CONFIG_FILES([IntaRNA.pc])

# generate the final Makefile etc.
Expand Down
10 changes: 10 additions & 0 deletions doc/Makefile.am
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@

################################################################
# extra files to be added to distribution
################################################################

EXTRA_DIST = \
conda.txt \
doxygen.cfg


Loading

0 comments on commit fb8c112

Please sign in to comment.