61 lines
1.8 KiB
YAML
61 lines
1.8 KiB
YAML
# SPDX-License-Identifier: LGPL-3.0-or-later
|
|
# See Notices.txt for copyright information
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
deps:
|
|
uses: ./.forgejo/workflows/deps.yml
|
|
test:
|
|
runs-on: debian-12
|
|
needs: deps
|
|
steps:
|
|
- uses: https://code.forgejo.org/actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0
|
|
- run: |
|
|
scripts/check-copyright.sh
|
|
- run: |
|
|
apt-get update -qq
|
|
apt-get install -qq \
|
|
bison \
|
|
build-essential \
|
|
ccache \
|
|
clang \
|
|
cvc5 \
|
|
flex \
|
|
gawk \
|
|
git \
|
|
libboost-filesystem-dev \
|
|
libboost-python-dev \
|
|
libboost-system-dev \
|
|
libffi-dev \
|
|
libreadline-dev \
|
|
lld \
|
|
pkg-config \
|
|
python3 \
|
|
python3-click \
|
|
tcl-dev \
|
|
z3 \
|
|
zlib1g-dev
|
|
- run: |
|
|
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain 1.80.1
|
|
source "$HOME/.cargo/env"
|
|
echo "$PATH" >> "$GITHUB_PATH"
|
|
- uses: https://code.forgejo.org/actions/cache/restore@v3
|
|
with:
|
|
path: deps
|
|
key: ${{ needs.deps.outputs.cache-primary-key }}
|
|
fail-on-cache-miss: true
|
|
- run: |
|
|
make -C deps/z3/build install
|
|
make -C deps/sby install
|
|
make -C deps/yosys install
|
|
export PATH="$(realpath deps/firtool/bin):$PATH"
|
|
echo "$PATH" >> "$GITHUB_PATH"
|
|
- uses: https://github.com/Swatinem/rust-cache@v2
|
|
with:
|
|
save-if: ${{ github.ref == 'refs/heads/master' }}
|
|
- run: cargo test
|
|
- run: cargo build --tests --features=unstable-doc
|
|
- run: cargo doc --features=unstable-doc
|