aboutsummaryrefslogtreecommitdiffstats
path: root/.cirrus/Dockerfile.ubuntu20.04
diff options
context:
space:
mode:
Diffstat (limited to '.cirrus/Dockerfile.ubuntu20.04')
-rw-r--r--.cirrus/Dockerfile.ubuntu20.0467
1 files changed, 67 insertions, 0 deletions
diff --git a/.cirrus/Dockerfile.ubuntu20.04 b/.cirrus/Dockerfile.ubuntu20.04
new file mode 100644
index 00000000..188cd8f4
--- /dev/null
+++ b/.cirrus/Dockerfile.ubuntu20.04
@@ -0,0 +1,67 @@
+FROM ubuntu:focal-20201106
+
+ENV DEBIAN_FRONTEND=noninteractive
+
+RUN set -e -x ;\
+ apt-get -y update ;\
+ apt-get -y upgrade ;\
+ apt-get -y install \
+ build-essential autoconf cmake clang bison wget flex gperf \
+ libreadline-dev gawk tcl-dev libffi-dev graphviz xdot python3-dev \
+ libboost-all-dev qt5-default git libftdi-dev pkg-config libeigen3-dev \
+ zlib1g-dev curl python3-pip
+
+RUN set -e -x ;\
+ mkdir -p /usr/local/src ;\
+ cd /usr/local/src ;\
+ git clone --recursive https://github.com/steveicarus/iverilog.git ;\
+ cd iverilog ;\
+ git reset --hard 84b4ebee0cfcda28a242d89a07020cd70b1d3e7f ;\
+ sh autoconf.sh ;\
+ ./configure ;\
+ make -j $(nproc) ;\
+ make install ;\
+ rm -rf /usr/local/src/iverilog
+
+RUN set -e -x ;\
+ mkdir -p /usr/local/src ;\
+ cd /usr/local/src ;\
+ git clone --recursive https://github.com/YosysHQ/icestorm.git ;\
+ cd icestorm ;\
+ git reset --hard 4bc68c9620e6be20f8fe10d20f84681d80beac23 ;\
+ make -j $(nproc) ;\
+ make install
+
+RUN set -e -x ;\
+ mkdir -p /usr/local/src ;\
+ cd /usr/local/src ;\
+ git clone --recursive https://github.com/YosysHQ/yosys.git ;\
+ cd yosys ;\
+ git reset --hard cd8b2ed4e6f9447c94d801de7db7ae6ce0976d57 ;\
+ make -j $(nproc) ;\
+ make install ;\
+ rm -rf /usr/local/src/yosys
+
+RUN set -e -x ;\
+ mkdir -p /usr/local/src ;\
+ cd /usr/local/src ;\
+ git clone --recursive https://github.com/YosysHQ/prjtrellis.git ;\
+ cd prjtrellis ;\
+ git reset --hard 7831b54f619d6695855525fca776543b7c827704 ;\
+ cd libtrellis ;\
+ cmake . ;\
+ make -j $(nproc) ;\
+ make install
+
+RUN set -e -x ;\
+ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y ;\
+ mkdir -p /usr/local/src ;\
+ cd /usr/local/src ;\
+ git clone --recursive https://github.com/daveshah1/prjoxide.git ;\
+ cd prjoxide ;\
+ git reset --hard 72dbb7973f31a30c3b9d18f3bac97caaea9a7f33 ;\
+ cd libprjoxide ;\
+ PATH=$PATH:$HOME/.cargo/bin cargo install --path prjoxide
+
+RUN set -e -x ;\
+ pip3 install apycula==0.0.1a3