openethereum/docker/ubuntu-jit/Dockerfile

54 lines
1.4 KiB
Docker
Raw Normal View History

2016-01-20 16:23:13 +01:00
FROM ubuntu:14.04
2016-06-29 14:46:29 +02:00
WORKDIR /build
2016-01-20 16:23:13 +01:00
# install tools and dependencies
RUN apt-get update && \
2016-06-29 14:46:29 +02:00
apt-get install -y \
# make
build-essential \
# add-apt-repository
software-properties-common \
curl \
wget \
git \
g++ \
binutils \
file \
# evmjit dependencies
zlib1g-dev \
libedit-dev
2016-01-20 16:23:13 +01:00
2016-06-29 14:46:29 +02:00
# cmake and llvm ppas. then update ppas
2016-01-20 16:23:13 +01:00
RUN add-apt-repository -y "ppa:george-edison55/cmake-3.x" && \
2016-06-29 14:46:29 +02:00
add-apt-repository "deb http://llvm.org/apt/trusty/ llvm-toolchain-trusty-3.7 main" && \
apt-get update && \
apt-get install -y --force-yes cmake llvm-3.7-dev
2016-01-20 16:23:13 +01:00
# install evmjit
RUN git clone https://github.com/debris/evmjit && \
2016-06-29 14:46:29 +02:00
cd evmjit && \
mkdir build && cd build && \
cmake .. && make && make install && cd
2016-01-20 16:23:13 +01:00
2016-06-29 14:46:29 +02:00
# install rustup
RUN curl https://sh.rustup.rs -sSf | sh -s -- -y
2016-01-20 16:23:13 +01:00
2016-06-29 14:46:29 +02:00
# rustup directory
ENV PATH /root/.cargo/bin:$PATH
2016-01-20 16:23:13 +01:00
# show backtraces
ENV RUST_BACKTRACE 1
2016-02-01 12:35:52 +01:00
2016-06-29 14:46:29 +02:00
# show tools
RUN rustc -vV && \
cargo -V && \
gcc -v &&\
g++ -v
2016-02-01 12:35:52 +01:00
# build parity
RUN git clone https://github.com/ethcore/parity && \
2016-06-29 14:46:29 +02:00
cd parity && \
cargo build --release --features ethcore/jit --verbose && \
ls /build/parity/target/release/parity && \
strip /build/parity/target/release/parity
RUN file /build/parity/target/release/parity