|
|
- ## GHDL ##
-
- FROM symbiyosys as symbiyosys-ghdl
-
- ARG LLVM_VER="7"
-
- RUN apt-get update -qq && \
- DEBIAN_FRONTEND=noninteractive apt-get -y install --no-install-recommends \
- gnat \
- llvm-dev && \
- apt-get autoclean && apt-get clean && apt-get -y autoremove && \
- rm -rf /var/lib/apt/lists/* && \
- cd /root && \
- mkdir ghdl && \
- cd ghdl && \
- curl https://codeload.github.com/ghdl/ghdl/tar.gz/master | tar xzf - --strip-components=1 && \
- ./configure --enable-synth --prefix=/opt/ghdl --with-llvm-config=llvm-config-$LLVM_VER && \
- make && \
- make install && \
- mkdir /opt/ghdl/doc && \
- curl https://ghdl.readthedocs.io/_/downloads/en/latest/pdf/ -o /opt/ghdl/doc/ghdl_manual.pdf
-
-
- ## GHDLSYNTH-BETA ##
-
- FROM symbiyosys-ghdl AS symbiyosys-ghdlsynth
-
- # Build ghdlsynth-beta
- RUN cd /root && \
- mkdir ghdl-yosys-plugin && \
- cd ghdl-yosys-plugin && \
- curl https://codeload.github.com/ghdl/ghdl-yosys-plugin/tar.gz/master | tar xzf - --strip-components=1 && \
- make GHDL=/opt/ghdl/bin/ghdl YOSYS_CONFIG=/opt/yosys/bin/yosys-config && \
- make install GHDL=/opt/ghdl/bin/ghdl YOSYS_CONFIG=/opt/yosys/bin/yosys-config
-
-
- # GHDL-formal
-
- FROM debian:buster-slim AS ghdl-formal
-
- # Get runtime dependencies
- RUN apt-get update -qq && \
- DEBIAN_FRONTEND=noninteractive apt-get -y install --no-install-recommends \
- ca-certificates \
- libreadline7 \
- libtcl8.6 \
- libgnat-8 \
- libllvm7 \
- gcc \
- libc6-dev \
- zlib1g-dev \
- make \
- python3 \
- libssl-dev \
- libpython2.7 && \
- apt-get -y upgrade && apt-get autoclean && apt-get clean && apt-get -y autoremove && \
- update-ca-certificates && \
- rm -rf /var/lib/apt/lists/*
-
- # copy build artifacts
- COPY --from=symbiyosys-ghdlsynth /opt /opt
-
- # Enhance path variable
- ENV PATH "/opt/ghdl/bin:/opt/symbiyosys/bin:/opt/yosys/bin:/opt/z3/bin:/opt/yices2/bin:/opt/cvc4/bin:/opt/boolector/bin:/opt/bitwuzla/bin:/opt/super_prove/bin:$PATH"
|