Skip to content

Assignment of static signals into registers #161

Assignment of static signals into registers

Assignment of static signals into registers #161

Workflow file for this run

name: "Debug builds (SiDi128)"
on:
workflow_dispatch:
pull_request:
repository_dispatch:
types: rebuild
# schedule:
# - cron: '0 3 * * 4' # runs every Thursday night
jobs:
list_cores:
runs-on: ubuntu-latest
defaults:
run:
shell: bash
outputs:
cores: ${{ steps.generate-matrix.outputs.cores }}
steps:
- uses: actions/checkout@v4
with:
submodules: 'recursive'
token: ${{ secrets.PAT }}
- id: generate-matrix
run: |
cd cores
# Get list of cores ready for compilation
CORES='['
for i in *; do
if [[ -e $i/cfg/macros.def && ! -e $i/cfg/skip ]]; then
if [ "$CORES" != '[' ]; then CORES="$CORES, "; fi
CORES="$CORES \"$i\""
fi
done
CORES="$CORES ]"
echo $CORES
echo "cores=${CORES}" >> $GITHUB_OUTPUT
compile_cores20:
runs-on: ubuntu-latest
defaults:
run:
shell: bash
needs:
- list_cores
strategy:
fail-fast: false
matrix:
core: ${{ fromJSON(needs.list_cores.outputs.cores) }}
steps:
- uses: actions/checkout@v4
with:
submodules: 'recursive'
token: ${{ secrets.PAT }}
- id: compile
run: |
# Compilation on Quartus 20.1
docker run -e BETAKEY=${{ secrets.BETAKEY }} --network host -v `pwd`:/jtcores jotego/jtcore20 /jtcores/modules/jtframe/devops/xjtcore.sh ${{matrix.core}} --debug sidi128
- id: upload
uses: actions/upload-artifact@v4
with:
name: release-q20-${{ matrix.core }}
path: release
retention-days: 15
join_artifacts:
runs-on: ubuntu-latest
needs: [ compile_cores20 ]
if: ${{ always() }} # upload the results even if some core did not compile correctly
steps:
- name: Download all artifacts
uses: actions/download-artifact@v4
with:
path: release
pattern: release-q*
merge-multiple: true
- name: Upload combined artifact
uses: actions/upload-artifact@v4
with:
name: release
path: release
retention-days: 15