blob: cd3eb76430efc31ad7d0ccc4ee59ff81396c1ed2 [file] [log] [blame]
Ashlesh Gawande0b2897e2018-06-20 14:40:47 -05001#!/usr/bin/env bash
Davide Pesavento133067f2020-04-02 22:08:27 -04002set -ex
Ashlesh Gawande0b2897e2018-06-20 14:40:47 -05003
4if has OSX $NODE_LABELS; then
5 FORMULAE=(boost openssl pkg-config)
Davide Pesavento133067f2020-04-02 22:08:27 -04006 if has OSX-10.13 $NODE_LABELS || has OSX-10.14 $NODE_LABELS; then
7 FORMULAE+=(python)
Ashlesh Gawande0b2897e2018-06-20 14:40:47 -05008 fi
Ashlesh Gawande0b2897e2018-06-20 14:40:47 -05009
Davide Pesavento133067f2020-04-02 22:08:27 -040010 if [[ -n $TRAVIS ]]; then
11 # Travis images come with a large number of pre-installed
12 # brew packages, don't waste time upgrading all of them
13 brew list --versions "${FORMULAE[@]}" || brew update
14 for FORMULA in "${FORMULAE[@]}"; do
15 brew list --versions "$FORMULA" || brew install "$FORMULA"
16 done
17 # Ensure /usr/local/opt/openssl exists
18 brew reinstall openssl
19 else
20 brew update
21 brew upgrade
22 brew install "${FORMULAE[@]}"
23 brew cleanup
24 fi
25
26elif has Ubuntu $NODE_LABELS; then
Ashlesh Gawande0b2897e2018-06-20 14:40:47 -050027 sudo apt-get -qq update
Davide Pesavento042dfb32020-07-23 21:07:16 -040028 sudo apt-get -qy install build-essential pkg-config python3-minimal \
Davide Pesavento133067f2020-04-02 22:08:27 -040029 libboost-all-dev libssl-dev libsqlite3-dev
Davide Pesavento87d4e202020-08-09 01:18:52 -040030
31 if [[ $JOB_NAME == *"code-coverage" ]]; then
32 sudo apt-get -qy install gcovr lcov
33 fi
Ashlesh Gawande0b2897e2018-06-20 14:40:47 -050034fi