You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
trezor-firmware/Dockerfile

30 lines
1002 B

10 years ago
# initialize from the image
FROM ubuntu:14.04
# add and update package repositories
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys FE324A81C208C89497EFC6246D1D8367A3421AFB && echo "deb http://ppa.launchpad.net/terry.guo/gcc-arm-embedded/ubuntu trusty main" >> /etc/apt/sources.list && apt-get update
10 years ago
# define used versions for pinning
ENV GCC_ARM_VERSION 4-8-2014q2-0trusty9
ENV LIBOPENCM3_GITREV c01f9ee323d06b5325d77cda593a46dfe76ba341
ENV TREZOR_MCU_GITREV e9fd756daad713525fa30bc3a08df4127548383f
10 years ago
# install build tools and dependencies
RUN apt-get install -y build-essential git gcc-arm-none-eabi=$GCC_ARM_VERSION python
10 years ago
# clone the source code
RUN git clone https://github.com/libopencm3/libopencm3 && git clone https://github.com/trezor/trezor-mcu
10 years ago
# build libopencm3
RUN cd libopencm3 && git checkout $LIBOPENCM3_GITREV && make
10 years ago
# build the firmware
RUN cd trezor-mcu && git checkout $TREZOR_MCU_GITREV && git submodule update --init && make && cd firmware && make