## 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 ## GHDLSYNTH-BETA ## FROM symbiyosys-ghdl AS symbiyosys-ghdlsynth # Build ghdlsynth-beta RUN cd /root && \ mkdir ghdlsynth-beta && \ cd ghdlsynth-beta && \ curl https://codeload.github.com/tgingold/ghdlsynth-beta/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 && \ apt-get 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:$PATH"