@@ -15,7 +15,7 @@ permissions:
1515 contents : read
1616
1717env :
18- JDK_VERSION : 20
18+ JDK_VERSION : 21
1919 JDK_DIST : temurin
2020 VERILATOR_REPO : https://github.com/verilator/verilator
2121 VERILATOR_DIR : verilator
@@ -29,24 +29,39 @@ jobs:
2929
3030 steps :
3131 - name : Check out repo
32- uses : actions/checkout@v3
32+ uses : actions/checkout@v4
3333 - name : Set up JDK ${{ env.JDK_VERSION }} (${{ env.JDK_DIST }})
34- uses : actions/setup-java@v3
34+ uses : actions/setup-java@v4
3535 with :
3636 java-version : ${{ env.JDK_VERSION }}
3737 distribution : ${{ env.JDK_DIST }}
3838 cache : ' sbt'
39+ - name : Install sbt
40+ uses : sbt/setup-sbt@v1
3941 - name : Install firtool ${{ env.FIRTOOL_VERSION_TAG }}
42+ id : install-circt
43+ 44+ with :
45+ version : ${{ env.FIRTOOL_VERSION_TAG }}
46+ - name : Set CHISEL_FIRTOOL_PATH
47+ if : steps.install-circt.outcome == 'success'
48+ run : |
49+ dir=$(dirname $(which firtool))
50+ echo "CHISEL_FIRTOOL_PATH=$dir" >> "$GITHUB_ENV"
51+ - name : Print firtool version
52+ if : steps.install-circt.outcome == 'success'
4053 run : |
41- wget -q -O - "https://github.com/llvm/circt/releases/download/${{ env.FIRTOOL_VERSION_TAG }}/firrtl-bin-linux-x64.tar.gz" | tar -zx
42- sudo mv "${{ env.FIRTOOL_VERSION_TAG }}/bin/firtool" /usr/local/bin
54+ echo "The CIRCT version used is:" >> $GITHUB_STEP_SUMMARY
55+ echo \`\`\` >> $GITHUB_STEP_SUMMARY
56+ $CHISEL_FIRTOOL_PATH/firtool -version >> $GITHUB_STEP_SUMMARY
57+ echo \`\`\` >> $GITHUB_STEP_SUMMARY
4358 - name : " Cache: Verilator ${{ env.VERILATOR_VERSION_TAG }}"
44- uses : actions/cache@v3
59+ uses : actions/cache@v4
4560 id : install-cache
4661 with :
4762 path : ${{ env.VERILATOR_DIR }}
4863 key : ${{ runner.os }}-${{ runner.arch }}-verilator-${{ env.VERILATOR_VERSION_TAG }}
49-
64+
5065 - name : Install Verilator ${{ env.VERILATOR_VERSION_TAG }} from cache
5166 if : steps.install-cache.outputs.cache-hit == 'true'
5267 run : |
5772 sudo apt-get install -my libfl2 || true # Ubuntu only (ignore if gives error)
5873 sudo apt-get install -my libfl-dev || true # Ubuntu only (ignore if gives error)
5974 sudo apt-get install -my zlibc zlib1g zlib1g-dev || true # Ubuntu only (ignore if gives error)
60-
75+
6176 cd "$VERILATOR_DIR"
6277 sudo make install
6378 verilator --version
7186 sudo apt-get install -my libfl2 || true # Ubuntu only (ignore if gives error)
7287 sudo apt-get install -my libfl-dev || true # Ubuntu only (ignore if gives error)
7388 sudo apt-get install -my zlibc zlib1g zlib1g-dev || true # Ubuntu only (ignore if gives error)
74-
89+
7590 git clone "$VERILATOR_REPO" "$VERILATOR_DIR"
7691 cd "$VERILATOR_DIR"
7792 git checkout "$VERILATOR_VERSION_TAG"
8095 make -j "$(nproc)"
8196 sudo make install
8297 verilator --version
83-
98+
8499 - name : Check scalafmt
85100 run : sbt scalafmtCheckAll
86101 - name : Run tests
0 commit comments