update Dockerfile and .travis.yml to be more similar to trezor-mcu

pull/25/head
Pavol Rusnak 5 years ago
parent ba3b958612
commit 1e697787a6
No known key found for this signature in database
GPG Key ID: 91F3B339B9A02A3D

@ -2,11 +2,25 @@ 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=7-2018q2
- TOOLCHAIN_LONGVER=gcc-arm-none-eabi-7-2018-q2-update
- TOOLCHAIN_SHORTVER=8-2018q4
- TOOLCHAIN_LONGVER=gcc-arm-none-eabi-8-2018-q4-major
matrix:
- GOAL=stm32
- GOAL=unix
@ -17,40 +31,27 @@ matrix:
- compiler: clang
env: GOAL=unix
addons:
apt:
sources:
- deadsnakes
packages:
- build-essential
- gcc-multilib
- libusb-1.0-0-dev
- libudev-dev
- python3.6
- python3.6-dev
- python3.6-venv
cache:
directories:
- $HOME/libsodium
before_install:
- python3.6 -m ensurepip --user
- python3.6 -m pip install --user pipenv
- $PYTHON -m ensurepip --user
- $PYTHON -m pip install --user pipenv
install:
- curl -LO "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"
- ./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
- 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
- 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

@ -8,7 +8,7 @@ ENV TOOLCHAIN_FLAVOR=$TOOLCHAIN_FLAVOR
# install build tools and dependencies
RUN apt-get update && apt-get install -y \
build-essential wget git python3-pip gcc-multilib
build-essential wget git python3-pip
# install dependencies from toolchain source build
@ -46,20 +46,23 @@ RUN if [ "$TOOLCHAIN_FLAVOR" = "src" ]; then \
popd ; \
fi
# install additional tools
# download protobuf
RUN apt-get install -y protobuf-compiler libprotobuf-dev
ENV PROTOBUF_VERSION=3.4.0
ENV PROTOBUF_HASH=e4b51de1b75813e62d6ecdde582efa798586e09b5beaebfb866ae7c9eaadace4
RUN wget "https://github.com/google/protobuf/releases/download/v${PROTOBUF_VERSION}/protoc-${PROTOBUF_VERSION}-linux-x86_64.zip"
RUN echo "${PROTOBUF_HASH} protoc-${PROTOBUF_VERSION}-linux-x86_64.zip" | sha256sum -c
# setup toolchain
ENV PATH=/opt/$TOOLCHAIN_LONGVER/bin:$PATH
# install python dependencies
ENV PYTHON=python3
ENV LC_ALL=C.UTF-8 LANG=C.UTF-8
RUN pip3 install scons trezor
# use zipfile module to extract files world-readable
RUN $PYTHON -m zipfile -e "protoc-${PROTOBUF_VERSION}-linux-x86_64.zip" /usr/local && chmod 755 /usr/local/bin/protoc
# workarounds for weird default install
# install python dependencies
RUN ln -s python3 /usr/bin/python
RUN ln -s dist-packages /usr/local/lib/python3.5/site-packages
ENV LC_ALL=C.UTF-8 LANG=C.UTF-8
RUN $PYTHON -m pip install scons trezor

@ -1 +1 @@
Subproject commit b98de8b581dfd691dcb1b4efbe7d489a81e1cbaf
Subproject commit c5d8107e2af090ff4547851297a484652fde4242
Loading…
Cancel
Save