Skip to content

Instantly share code, notes, and snippets.

@mtholder
Created March 29, 2016 01:36
Show Gist options
  • Select an option

  • Save mtholder/46be4f065983c32795e7 to your computer and use it in GitHub Desktop.

Select an option

Save mtholder/46be4f065983c32795e7 to your computer and use it in GitHub Desktop.
checkout the open tree of life repos used to build the synthetic tree of life - assumes that you have python 2.7, g++ and devtools for each language
#!/bin/bash
echo 'This script installs the tools needed for propinquity as subdirectories'
echo 'of the working directory. This assumes that you have a C++ dev environment (g++, boost, automake, libtool)'
echo 'installed. See README files for propinquity and otcetera if those builds fail'
echo 'Also assumes virtualenv for python'
CONTEXT_DIR="${PWD}"
virtualenv propinquity-env
source propinquity-env/bin/activate
# Install peyotl
git clone https://github.com/mtholder/peyotl.git || exit
cd peyotl
pip install -r requirements.txt || exit
python setup.py develop || exit
cd -
#install otcetera
git clone https://github.com/mtholder/otcetera.git || exit
cd otcetera
sh bootstrap.sh || exit
cd ..
mkdir buildotcetera
cd buildotcetera
CXX=/usr/bin/g++ \
CC=/usr/bin/gcc \
CXXFLAGS="-Waddress -Warray-bounds -Wc++11-compat -Wchar-subscripts -Wcomment -Wformat -Wmain -Wmaybe-uninitialized -Wmissing-braces -Wnonnull -Wopenmp-simd -Wparentheses -Wreorder -Wreturn-type -Wsequence-point -Wsign-compare -Wstrict-aliasing -Wstrict-overflow -Wswitch -Wtrigraphs -Wuninitialized -Wno-unknown-pragmas -Wunused-function -Wunused-label -Wunused-value -Wunused-variable -Wvolatile-register-var -Wno-pragmas -pedantic -g -O0 -std=c++14" \
../otcetera/configure --prefix=$CONTEXT_DIR/propinquity-env || exit
make -j4 || exit
make check || exit
make install || exit
export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${CONTEXT_DIR}/propinquity-env/lib"
cd -
# download OTT
mkdir ott
cd ott
wget http://files.opentreeoflife.org/ott/ott2.9/ott2.9.tgz
tar xfvz ott2.9.tgz
cd "${CONTEXT_DIR}"
# grab the study and collections repo
git clone https://github.com/OpenTreeOfLife/phylesystem.git || exit
cd phylesystem
bash pull-studies.bash || exit
cd shards
git clone https://github.com/OpenTreeOfLife/collections-1.git || exit
cd "${CONTEXT_DIR}"
# checkout propinquity
git clone https://github.com/mtholder/propinquity.git || exit
cd propinquity
echo '[opentree]' > config.local
echo "home = ${CONTEXT_DIR}" >> config.local
echo "peyotl = %(home)s/peyotl" >> config.local
echo "phylesystem = %(home)s/phylesystem" >> config.local
echo "ott = %(home)s/ott/ott" >> config.local
echo "collections = %(home)s/phylesystem" >> config.local
echo >> config.local
cp config.opentree.synth myconfig
echo >> myconfig
cat config.local >> myconfig
pip install Chameleon
./bin/build_at_dir.sh myconfig ../opentree.synth
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment