sudo: false dist: trusty language: c addons: apt: sources: - deadsnakes packages: - build-essential - python3.6 - python3.6-dev - python3.6-venv - libusb-1.0-0-dev - libudev-dev env: global: - MAKEFLAGS=-j2 - PYTHON=python3.6 - PROTOBUF_VERSION=3.4.0 - TOOLCHAIN_SHORTVER=8-2018q4 - TOOLCHAIN_LONGVER=gcc-arm-none-eabi-8-2018-q4-major matrix: - GOAL=stm32 - GOAL=unix - GOAL=src matrix: include: - compiler: clang env: GOAL=unix cache: directories: - $HOME/libsodium before_install: - $PYTHON -m ensurepip --user - $PYTHON -m pip install --user pipenv install: - ./travis-install-libsodium.sh - export PKG_CONFIG_PATH=$HOME/libsodium/lib/pkgconfig:$PKG_CONFIG_PATH - export LD_LIBRARY_PATH=$HOME/libsodium/lib:$LD_LIBRARY_PATH - wget "https://github.com/google/protobuf/releases/download/v${PROTOBUF_VERSION}/protoc-${PROTOBUF_VERSION}-linux-x86_64.zip" - unzip "protoc-${PROTOBUF_VERSION}-linux-x86_64.zip" -d protoc - export PATH="$(pwd)/protoc/bin:$PATH" - pipenv install before_script: - test "$GOAL" != "stm32" || wget https://developer.arm.com/-/media/Files/downloads/gnu-rm/$TOOLCHAIN_SHORTVER/$TOOLCHAIN_LONGVER-linux.tar.bz2 - test "$GOAL" != "stm32" || tar xfj $TOOLCHAIN_LONGVER-linux.tar.bz2 - test "$GOAL" != "stm32" || export PATH=$PWD/$TOOLCHAIN_LONGVER/bin:$PATH script: - test "$GOAL" != "src" || pipenv run make style_check - test "$GOAL" != "src" || pipenv run make templates_check - test "$GOAL" != "stm32" || pipenv run make build_cross - test "$GOAL" != "stm32" || pipenv run make build_boardloader - test "$GOAL" != "stm32" || pipenv run make build_bootloader - test "$GOAL" != "stm32" || pipenv run make build_prodtest - test "$GOAL" != "stm32" || pipenv run make build_firmware - test "$GOAL" != "stm32" || test "$TREZOR_MODEL" = "1" || pipenv run make sizecheck - test "$GOAL" != "unix" || pipenv run make build_unix_noui - test "$GOAL" != "unix" || pipenv run make test - test "$GOAL" != "unix" || test "$TREZOR_MODEL" = "1" || pipenv run make test_emu - test "$GOAL" != "unix" || test "$TREZOR_MODEL" = "1" || pipenv run make test_emu_monero notifications: webhooks: urls: - http://ci-bot.satoshilabs.com:5000/travis on_success: always on_failure: always on_start: always