|
| 1 | +FROM ubuntu:latest AS build |
| 2 | + |
| 3 | +WORKDIR /root |
| 4 | + |
| 5 | +# |
| 6 | +# Dependencies |
| 7 | +# |
| 8 | + |
| 9 | +RUN apt update -qq \ |
| 10 | + && DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends \ |
| 11 | + # Common |
| 12 | + build-essential \ |
| 13 | + ca-certificates \ |
| 14 | + curl \ |
| 15 | + git \ |
| 16 | + gnupg \ |
| 17 | + python3 \ |
| 18 | + wget \ |
| 19 | + zlib1g-dev \ |
| 20 | + # vhd2vl |
| 21 | + flex \ |
| 22 | + bison \ |
| 23 | + iverilog \ |
| 24 | + # Surelog |
| 25 | + cmake \ |
| 26 | + default-jre \ |
| 27 | + python3-orderedmultidict \ |
| 28 | + && curl -sSL https://get.haskellstack.org/ | sh \ |
| 29 | + && curl -fsSL https://bazel.build/bazel-release.pub.gpg | gpg --dearmor -o /usr/share/keyrings/bazel-archive-keyring.gpg \ |
| 30 | + && echo "deb [signed-by=/usr/share/keyrings/bazel-archive-keyring.gpg] \ |
| 31 | + https://storage.googleapis.com/bazel-apt stable jdk1.8" | tee /etc/apt/sources.list.d/bazel.list \ |
| 32 | + && apt update -qq \ |
| 33 | + && DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends \ |
| 34 | + bazel \ |
| 35 | + && apt autoclean && apt clean && apt -y autoremove \ |
| 36 | + && rm -rf /var/lib/apt/lists/* |
| 37 | + |
| 38 | +# |
| 39 | +# vhd2vl |
| 40 | +# |
| 41 | + |
| 42 | +RUN git clone --depth 1 https://github.com/ldoolitt/vhd2vl \ |
| 43 | + && cd vhd2vl && make -j$(nproc) \ |
| 44 | + && cp src/vhd2vl /usr/local/bin |
| 45 | + |
| 46 | +# |
| 47 | +# Slang |
| 48 | +# |
| 49 | + |
| 50 | +RUN git clone --depth 1 https://github.com/MikePopoloski/slang.git \ |
| 51 | + && cd slang && cmake -B build && cmake --build build -j8 \ |
| 52 | + && cmake --install build --strip |
| 53 | + |
| 54 | +# |
| 55 | +# Surelog |
| 56 | +# |
| 57 | + |
| 58 | +RUN git clone --depth 1 https://github.com/alainmarcel/Surelog.git \ |
| 59 | + && cd Surelog && git submodule update --init --recursive \ |
| 60 | + && make -j$(nproc) && make install |
| 61 | + |
| 62 | +# |
| 63 | +# sv2v |
| 64 | +# |
| 65 | + |
| 66 | +RUN git clone --depth 1 https://github.com/zachjs/sv2v.git \ |
| 67 | + && cd sv2v && make -j$(nproc) && cp bin/sv2v /usr/local/bin |
| 68 | + |
| 69 | +# |
| 70 | +# Verible |
| 71 | +# |
| 72 | + |
| 73 | +RUN git clone --depth 1 https://github.com/chipsalliance/verible.git \ |
| 74 | + && cd verible && bazel build -c opt //... \ |
| 75 | + && bazel run -c opt :install -- /usr/local/bin |
| 76 | + |
| 77 | +############################################################################### |
| 78 | + |
| 79 | +## slang |
| 80 | +#/usr/local/lib/libfmt.a |
| 81 | +#/usr/local/include/fmt |
| 82 | +#/usr/local/lib/cmake/fmt |
| 83 | +#/usr/local/include/ieee1800 |
| 84 | +#/usr/local/lib/libfmt.a |
| 85 | +#/usr/local/lib/libmimalloc.a |
| 86 | +#/usr/local/include/mimalloc-2.1 |
| 87 | +#/usr/local/include/slang |
| 88 | +#/usr/local/include/slang |
| 89 | +#/usr/local/bin/slang |
| 90 | +#/usr/local/bin/slang-netlist |
| 91 | +#/usr/local/bin/slang-tidy |
| 92 | +#/usr/local/bin/slang-reflect |
| 93 | +#/usr/local/bin/slang-hier |
| 94 | +#/usr/local/lib/libsvlang.a |
| 95 | +#/usr/local/bin/slang |
| 96 | +#/usr/local/lib/cmake/slang |
| 97 | +#/usr/local/share/pkgconfig/sv-lang.pc |
| 98 | + |
| 99 | +## Surelog |
| 100 | +#/usr/local/lib/libcapnp.a |
| 101 | +#/usr/local/lib/libkj.a |
| 102 | +#/usr/local/lib/libuhdm.a |
| 103 | +#/usr/local/bin/uhdm-cmp |
| 104 | +#/usr/local/bin/uhdm-dump |
| 105 | +#/usr/local/bin/uhdm-hier |
| 106 | +#/usr/local/bin/uhdm-lint |
| 107 | +#/usr/local/include/uhdm |
| 108 | +#/usr/local/share/uhdm/UHDM.capnp |
| 109 | +#/usr/local/lib/cmake/UHDM |
| 110 | +#/usr/local/lib/pkgconfig/UHDM.pc |
| 111 | +#/usr/local/bin/surelog |
| 112 | +#/usr/local/bin/roundtrip |
| 113 | +#/usr/local/lib/libsurelog.a |
| 114 | +#/usr/local/lib/libantlr4-runtime.a |
| 115 | +#/usr/local/lib/libcapnp.a |
| 116 | +#/usr/local/lib/libkj.a |
| 117 | +#/usr/local/lib/libuhdm.a |
| 118 | +#/usr/local/share/surelog |
| 119 | +#/usr/local/include/Surelog |
| 120 | +#/usr/local/lib/cmake/Surelog |
| 121 | +#/usr/local/lib/pkgconfig/Surelog.pc |
| 122 | + |
| 123 | +## Verible |
| 124 | +#/usr/local/bin/git-verible-verilog-format.sh |
| 125 | +#/usr/local/bin/verible-patch-tool |
| 126 | +#/usr/local/bin/verible-transform-interactive.sh |
| 127 | +#/usr/local/bin/verible-verilog-diff |
| 128 | +#/usr/local/bin/verible-verilog-format |
| 129 | +#/usr/local/bin/verible-verilog-format-changed-lines-interactive.sh |
| 130 | +#/usr/local/bin/verible-verilog-kythe-extractor |
| 131 | +#/usr/local/bin/verible-verilog-kythe-kzip-writer |
| 132 | +#/usr/local/bin/verible-verilog-lint |
| 133 | +#/usr/local/bin/verible-verilog-ls |
| 134 | +#/usr/local/bin/verible-verilog-obfuscate |
| 135 | +#/usr/local/bin/verible-verilog-preprocessor |
| 136 | +#/usr/local/bin/verible-verilog-project |
| 137 | +#/usr/local/bin/verible-verilog-syntax |
0 commit comments