| @ -0,0 +1,112 @@ | |||||
| FROM ubuntu:18.04 | |||||
| RUN apt-get update && \ | |||||
| apt-get upgrade -y && \ | |||||
| apt-get install -y \ | |||||
| build-essential \ | |||||
| clang \ | |||||
| bison \ | |||||
| flex \ | |||||
| libreadline-dev \ | |||||
| gawk \ | |||||
| tcl-dev \ | |||||
| libffi-dev \ | |||||
| git \ | |||||
| mercurial \ | |||||
| graphviz \ | |||||
| xdot \ | |||||
| pkg-config \ | |||||
| python \ | |||||
| python3 \ | |||||
| libftdi-dev \ | |||||
| gperf \ | |||||
| libboost-program-options-dev \ | |||||
| autoconf \ | |||||
| libgmp-dev \ | |||||
| cmake \ | |||||
| make \ | |||||
| wget \ | |||||
| libpython2.7 && \ | |||||
| adduser symbiyosys --gecos "" --disabled-login | |||||
| RUN cd /home/symbiyosys && \ | |||||
| git clone https://github.com/cliffordwolf/yosys.git yosys && \ | |||||
| cd yosys && \ | |||||
| make -j$(nproc) && \ | |||||
| make install && \ | |||||
| cd /home/symbiyosys && \ | |||||
| git clone https://github.com/cliffordwolf/SymbiYosys.git SymbiYosys && \ | |||||
| cd SymbiYosys && \ | |||||
| make install && \ | |||||
| cd /home/symbiyosys && \ | |||||
| git clone https://github.com/Z3Prover/z3.git z3 && \ | |||||
| cd z3 && \ | |||||
| python scripts/mk_make.py && \ | |||||
| cd build && \ | |||||
| make -j$(nproc) && \ | |||||
| make install && \ | |||||
| cd /home/symbiyosys && \ | |||||
| git clone https://github.com/SRI-CSL/yices2.git yices2 && \ | |||||
| cd yices2 && \ | |||||
| autoconf && \ | |||||
| ./configure && \ | |||||
| make -j$(nproc) && \ | |||||
| make install && \ | |||||
| cd /home/symbiyosys && \ | |||||
| git clone https://bitbucket.org/arieg/extavy.git && \ | |||||
| cd extavy && \ | |||||
| git submodule update --init && \ | |||||
| mkdir build; cd build && \ | |||||
| cmake -DCMAKE_BUILD_TYPE=Release .. && \ | |||||
| make -j$(nproc) && \ | |||||
| cp avy/src/avy /usr/local/bin/ && \ | |||||
| cp avy/src/avybmc /usr/local/bin/ && \ | |||||
| cd /home/symbiyosys && \ | |||||
| git clone https://github.com/boolector/boolector && \ | |||||
| git clone https://github.com/arminbiere/lingeling boolector/deps/lingeling && \ | |||||
| git clone https://github.com/boolector/btor2tools boolector/deps/btor2tools && \ | |||||
| ( cd boolector/deps/lingeling && ./configure.sh -fPIC && make -j$(nproc); ) && \ | |||||
| ( cd boolector/deps/btor2tools && ./configure.sh -fPIC && make -j$(nproc); ) && \ | |||||
| ( cd boolector && ./configure.sh && cd build && make -j$(nproc); ) && \ | |||||
| cp boolector/build/bin/boolector /usr/local/bin/ && \ | |||||
| cp boolector/build/bin/btor* /usr/local/bin/ && \ | |||||
| cp boolector/deps/btor2tools/bin/btorsim /usr/local/bin/ && \ | |||||
| cd /home/symbiyosys && \ | |||||
| wget https://downloads.bvsrc.org/super_prove/super_prove-hwmcc17_final-2-d7b71160dddb-Ubuntu_14.04-Release.tar.gz && \ | |||||
| tar xzf super_prove-hwmcc17_final-2-d7b71160dddb-Ubuntu_14.04-Release.tar.gz -C /usr/local/ && \ | |||||
| echo '#!/bin/bash' >> /usr/local/bin/suprove && \ | |||||
| echo 'tool=super_prove; if [ "$1" != "${1#+}" ]; then tool="${1#+}"; shift; fi' >> /usr/local/bin/suprove && \ | |||||
| echo 'exec /usr/local/super_prove/bin/${tool}.sh "$@"' >> /usr/local/bin/suprove && \ | |||||
| chmod +x /usr/local/bin/suprove && \ | |||||
| rm -rf yosys SymbiYosys z3 yices2 extavy boolector super_prove* | |||||
| RUN apt-get purge -y \ | |||||
| build-essential \ | |||||
| clang \ | |||||
| bison \ | |||||
| flex \ | |||||
| libreadline-dev \ | |||||
| gawk \ | |||||
| libffi-dev \ | |||||
| git \ | |||||
| mercurial \ | |||||
| graphviz \ | |||||
| xdot \ | |||||
| pkg-config \ | |||||
| libftdi-dev \ | |||||
| gperf \ | |||||
| libboost-program-options-dev \ | |||||
| autoconf \ | |||||
| libgmp-dev \ | |||||
| cmake \ | |||||
| wget && \ | |||||
| apt-get clean -y && \ | |||||
| apt-get autoclean -y && \ | |||||
| apt-get autoremove -y | |||||
| USER symbiyosys | |||||
| WORKDIR /home/symbiyosys | |||||
| RUN mkdir work | |||||
| VOLUME /home/symbiyosys/work | |||||