From 89230471bcfe8457c2f7e623dfb033bf7e86b82d Mon Sep 17 00:00:00 2001 From: Luca Colagrande Date: Fri, 29 Sep 2023 10:13:15 +0200 Subject: [PATCH] spike-dasm: Add to Docker container --- .gitmodules | 2 +- docs/ug/getting_started.md | 6 ++---- util/container/Dockerfile | 13 ++++++++++++- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/.gitmodules b/.gitmodules index f899e248d..9ee115b7f 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,4 +7,4 @@ [submodule "sw/deps/riscv-isa-sim"] path = sw/deps/riscv-isa-sim url = https://github.com/pulp-platform/riscv-isa-sim.git - branch = GiannaP-snitch \ No newline at end of file + branch = snitch \ No newline at end of file diff --git a/docs/ug/getting_started.md b/docs/ug/getting_started.md index 1a8bba567..c7f3a194e 100644 --- a/docs/ug/getting_started.md +++ b/docs/ug/getting_started.md @@ -11,7 +11,7 @@ git clone https://github.com/pulp-platform/{{ repo }}.git --recurse-submodules If you had already cloned the repository without the `--recurse-submodules` flag, clone its submodules: ```shell -git submodule init --recursive +git submodule update --init --recursive ``` ## Tools and environment @@ -57,7 +57,7 @@ export LLVM_BINROOT="/usr/pack/riscv-1.0-kgf/pulp-llvm-0.12.0/bin" # As a temporary workaround (until correct tool versions are installed system-wide): export PATH=/usr/scratch/dachstein/colluca/opt/verible/bin:$PATH -# Install spike for spike-dasm (submodule of the repository) +# Install spike-dasm cd sw/deps/riscv-isa-sim autoconf mkdir build @@ -65,8 +65,6 @@ cd build ../configure make export PATH=$(pwd):$PATH -# or use temporary: -# export PATH=/home/colluca/snitch/bin:$PATH ``` Add these commands to your shell startup file (e.g. `~/.bashrc` if you use bash as the default shell) to ensure that the environment is set up correctly every time you open a new shell. diff --git a/util/container/Dockerfile b/util/container/Dockerfile index ea320f325..b8fa9105c 100644 --- a/util/container/Dockerfile +++ b/util/container/Dockerfile @@ -21,7 +21,8 @@ RUN apt-get update && \ software-properties-common \ unzip \ wget \ - zlib1g-dev + zlib1g-dev \ + autoconf # Build Rust tools RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y @@ -51,6 +52,14 @@ RUN rustup override set 1.63.0 RUN git clone https://github.com/pulp-platform/banshee.git /tmp/banshee --recurse-submodules RUN cargo install --path /tmp/banshee +# Install `spike-dasm` +RUN git clone https://github.com/pulp-platform/riscv-isa-sim.git +WORKDIR /tools/riscv-isa-sim +RUN git checkout snitch +RUN autoconf +RUN mkdir build +RUN cd build && ../configure && make + # 2. Stage FROM ubuntu:18.04 AS snitch_cluster ARG SNITCH_LLVM_VERSION=latest @@ -119,6 +128,8 @@ RUN apt-get update && apt-get install software-properties-common -y && \ # Copy artifacts from stage 1. COPY --from=builder /root/.cargo/bin/bender bin/ COPY --from=builder /root/.cargo/bin/banshee bin/ +COPY --from=builder /root/.cargo/bin/banshee bin/ +COPY --from=builder /tools/riscv-isa-sim/build/spike-dasm bin/ # Set locale to UTF-8, required because Python 3.6 defaults on ASCII encoding. # See https://click.palletsprojects.com/en/8.1.x/unicode-support/