forked from haiwan/sledge
parent
6e27f8d6fb
commit
a4a39ba5d7
@ -1,55 +1,68 @@
|
|||||||
# Inspired by lucet's Dockerfile.
|
# Inspired by lucet's Dockerfile.
|
||||||
|
|
||||||
# using ubuntu 18 docker image
|
# using ubuntu 18 docker image
|
||||||
FROM ubuntu:bionic
|
FROM ubuntu:focal
|
||||||
|
|
||||||
|
ARG DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
# install some basic packages
|
|
||||||
RUN apt-get update
|
RUN apt-get update
|
||||||
|
|
||||||
|
# General GCC C/C++ Build toolchain
|
||||||
|
# pkg-config, libtool - used by PocketSphinx
|
||||||
|
# cmake - used by cmsis
|
||||||
RUN apt-get install -y --no-install-recommends \
|
RUN apt-get install -y --no-install-recommends \
|
||||||
|
automake \
|
||||||
build-essential \
|
build-essential \
|
||||||
curl \
|
binutils-dev \
|
||||||
git \
|
|
||||||
cmake \
|
cmake \
|
||||||
ca-certificates \
|
git \
|
||||||
libssl-dev \
|
libc++-dev \
|
||||||
pkg-config \
|
libtinfo5 \
|
||||||
gcc \
|
libtool \
|
||||||
g++ \
|
pkg-config
|
||||||
|
|
||||||
|
# LLVM Tools
|
||||||
|
RUN apt-get install -y --no-install-recommends \
|
||||||
clang-8 \
|
clang-8 \
|
||||||
clang-tools-8 \
|
clang-tools-8 \
|
||||||
llvm-8 \
|
llvm-8 \
|
||||||
llvm-8-dev \
|
llvm-8-dev \
|
||||||
libc++-dev \
|
|
||||||
libc++abi-dev \
|
libc++abi-dev \
|
||||||
lld-8 \
|
lld-8 \
|
||||||
lldb-8 \
|
|
||||||
libclang-8-dev \
|
libclang-8-dev \
|
||||||
libclang-common-8-dev \
|
libclang-common-8-dev
|
||||||
vim \
|
|
||||||
binutils-dev \
|
|
||||||
build-essential \
|
|
||||||
automake \
|
|
||||||
libtool \
|
|
||||||
strace \
|
|
||||||
less
|
|
||||||
RUN rm -rf /var/lib/apt/lists/*
|
|
||||||
|
|
||||||
# set to use our installed clang version
|
|
||||||
RUN update-alternatives --install /usr/bin/clang clang /usr/bin/clang-8 100
|
RUN update-alternatives --install /usr/bin/clang clang /usr/bin/clang-8 100
|
||||||
RUN update-alternatives --install /usr/bin/llvm-config llvm-config /usr/bin/llvm-config-8 100
|
RUN update-alternatives --install /usr/bin/llvm-config llvm-config /usr/bin/llvm-config-8 100
|
||||||
|
|
||||||
# set LD_LIBRARY_PATH
|
# Test Script Stuff
|
||||||
ENV LD_LIBRARY_PATH=/usr/local/lib
|
RUN apt-get install -y --no-install-recommends \
|
||||||
|
curl \
|
||||||
|
imagemagick \
|
||||||
|
netpbm \
|
||||||
|
pango1.0-tools \
|
||||||
|
wamerican \
|
||||||
|
wget
|
||||||
|
|
||||||
RUN curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain stable -y
|
# Interactive Tools
|
||||||
ENV PATH=/root/.cargo/bin:$PATH
|
RUN apt-get install -y --no-install-recommends \
|
||||||
|
less \
|
||||||
|
lldb-8 \
|
||||||
|
strace \
|
||||||
|
vim
|
||||||
|
|
||||||
RUN rustup component add rustfmt
|
# SSL Stuff - What is this used for?
|
||||||
RUN rustup target add wasm32-wasi
|
RUN apt-get install -y --no-install-recommends \
|
||||||
|
ca-certificates \
|
||||||
|
libssl-dev
|
||||||
|
|
||||||
|
# Rust
|
||||||
|
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain stable --component rustfmt --target wasm32-wasi -y
|
||||||
|
ENV PATH=/root/.cargo/bin:$PATH
|
||||||
RUN cargo install --debug cargo-audit cargo-watch rsign2
|
RUN cargo install --debug cargo-audit cargo-watch rsign2
|
||||||
|
|
||||||
|
# WASI-SDK
|
||||||
RUN curl -sS -L -O https://github.com/CraneStation/wasi-sdk/releases/download/wasi-sdk-7/wasi-sdk_7.0_amd64.deb && dpkg -i wasi-sdk_7.0_amd64.deb && rm -f wasi-sdk_7.0_amd64.deb
|
RUN curl -sS -L -O https://github.com/CraneStation/wasi-sdk/releases/download/wasi-sdk-7/wasi-sdk_7.0_amd64.deb && dpkg -i wasi-sdk_7.0_amd64.deb && rm -f wasi-sdk_7.0_amd64.deb
|
||||||
|
|
||||||
ENV WASI_SDK=/opt/wasi-sdk
|
ENV WASI_SDK=/opt/wasi-sdk
|
||||||
|
|
||||||
ENV PATH=/opt/sledge/bin:$PATH
|
ENV PATH=/opt/sledge/bin:$PATH
|
||||||
|
ENV LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
|
||||||
|
Loading…
Reference in new issue