From 5c0049ce66faaa6ff1d3c2ce85949b64805c900b Mon Sep 17 00:00:00 2001 From: Daniel Keller Date: Mon, 17 Aug 2026 13:13:24 +0200 Subject: [PATCH] ci: Make the simulations actually use ccache The cache added in #198 never stored anything. ccache was installed and its directory cached, on the assumption that verilator picks it up as OBJCACHE by itself; that holds for the SEPP build here, whose verilated.mk defaults OBJCACHE to ccache, but ubuntu ships it empty. The first devel run compiled five models and reported "Cache size (GB): 0.0 / 2.0", with every compile line reading g++-14 and no ccache prefix. The simulation legs pass OBJCACHE=ccache to the sub-make now. Verified that the override lands: building with OBJCACHE=/usr/bin/false prefixes every compile and fails, so the variable reaches verilated.mk. --- .github/actions/verify-setup/action.yml | 2 +- .github/workflows/verify.yml | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/actions/verify-setup/action.yml b/.github/actions/verify-setup/action.yml index 9ef8c9c6..4dae72d2 100644 --- a/.github/actions/verify-setup/action.yml +++ b/.github/actions/verify-setup/action.yml @@ -43,7 +43,7 @@ runs: fi bender --version - # ccache: verilator picks it up as OBJCACHE, so the model rebuilds hit it + # ubuntu's verilator ships OBJCACHE empty, so the sims pass OBJCACHE=ccache - if: inputs.verilator == 'true' shell: bash run: | diff --git a/.github/workflows/verify.yml b/.github/workflows/verify.yml index 01e9db00..7f905c6f 100644 --- a/.github/workflows/verify.yml +++ b/.github/workflows/verify.yml @@ -154,7 +154,8 @@ jobs: run: uv run --locked make idma_hw_all - name: Simulate ${{ matrix.suite }} - run: uv run --locked make idma_verify_sim_${{ matrix.suite }} IDMA_VLT_MAKEFLAGS=-j4 + run: uv run --locked make idma_verify_sim_${{ matrix.suite }} \ + IDMA_VLT_MAKEFLAGS="-j4 OBJCACHE=ccache" - name: ccache statistics if: always()