@@ -6,11 +6,14 @@ ENV DEBIAN_FRONTEND=noninteractive \
66 PYMTL_VERILATOR_INCLUDE_DIR=/WORK_REPO/verilator/share/verilator/include \
77 YOSYS_EXE="/OpenROAD-flow-scripts/tools/install/yosys/bin/yosys" \
88 OPENROAD_EXE="/OpenROAD-flow-scripts/tools/install/OpenROAD/bin/openroad" \
9- LLVM_RELEASE_URL="https://github.com/tancheng/CGRA-Flow/releases/download/LLVM%406146a88/llvm-project-6146a88-prebuild.tar.xz"
9+ LLVM_RELEASE_URL="https://github.com/tancheng/CGRA-Flow/releases/download/LLVM%406146a88/llvm-project-6146a88-prebuild.tar.xz" \
10+ GO_VERSION="1.22.1"
11+
1012ENV PATH="/WORK_REPO/CGRA-Flow/tools/sv2v/bin:$PATH"
1113ENV PATH="/WORK_REPO/CGRA-Flow/tools/OpenROAD-flow-scripts/tools/install/OpenROAD/bin:$PATH"
1214ENV PATH="/WORK_REPO/verilator/bin/:$PATH"
1315ENV PATH="/WORK_REPO/llvm-project/bin:$PATH"
16+ ENV PATH="/usr/local/go/bin:$PATH"
1417
1518SHELL ["/bin/bash" , "-c" ]
1619
@@ -21,9 +24,15 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
2124 wget curl git cmake make build-essential ninja-build \
2225 && curl -sSL https://get.haskellstack.org/ | sh
2326
27+ # Install Go (Required for Zeonica)
28+ RUN wget https://go.dev/dl/go${GO_VERSION}.linux-amd64.tar.gz \
29+ && tar -C /usr/local -xzf go${GO_VERSION}.linux-amd64.tar.gz \
30+ && rm go${GO_VERSION}.linux-amd64.tar.gz
31+
2432# Setups Workspace and Clones Repo.
2533WORKDIR /WORK_REPO
26- RUN git clone --recursive https://github.com/tancheng/CGRA-Flow.git \
34+ RUN git config --global url."https://github.com/" .insteadOf "git@github.com:" \
35+ && git clone --recursive https://github.com/tancheng/CGRA-Flow.git \
2736 && ln -s /OpenROAD-flow-scripts/ /WORK_REPO/CGRA-Flow/tools/
2837
2938# Builds C++ Tools (CGRA-Mapper, Cacti, sv2v)
@@ -32,6 +41,10 @@ RUN cd /WORK_REPO/CGRA-Flow/CGRA-Mapper && \
3241 && cd /WORK_REPO/CGRA-Flow/tools/cacti && make -j$(nproc) \
3342 && cd /WORK_REPO/CGRA-Flow/tools/sv2v && make -j$(nproc)
3443
44+ # Setup Zeonica (Install Go Dependencies)
45+ RUN cd /WORK_REPO/CGRA-Flow/zeonica && \
46+ go mod download
47+
3548# Installs Verilator (Pre-compiled binary)
3649RUN wget https://github.com/tancheng/pymtl-verilator/raw/master/verilator-travis-4.036.tar.gz \
3750 && tar -C /WORK_REPO -xzf verilator-travis-4.036.tar.gz \
@@ -40,7 +53,7 @@ RUN wget https://github.com/tancheng/pymtl-verilator/raw/master/verilator-travis
4053# Python Environment Setup
4154RUN python3.11 -m venv /WORK_REPO/venv \
4255 && source /WORK_REPO/venv/bin/activate \
43- && pip3 install --no-cache-dir py==1.11.0 wheel py-markdown-table pillow customtkinter PyYAML lit \
56+ && pip3 install --no-cache-dir py==1.11.0 wheel py-markdown-table pillow customtkinter PyYAML lit requests \
4457 && pip3 install --no-cache-dir -U git+https://github.com/tancheng/pymtl3.1@yo-struct-list-fix \
4558 && cd /WORK_REPO/CGRA-Flow/tools/mflowgen && pip3 install -e . \
4659 && rm -rf /root/.cache/pip
0 commit comments