diff options
Diffstat (limited to '.github/workflows/interchange_ci.yml')
-rw-r--r-- | .github/workflows/interchange_ci.yml | 76 |
1 files changed, 71 insertions, 5 deletions
diff --git a/.github/workflows/interchange_ci.yml b/.github/workflows/interchange_ci.yml index 1ca42bb7..8b16d795 100644 --- a/.github/workflows/interchange_ci.yml +++ b/.github/workflows/interchange_ci.yml @@ -3,9 +3,60 @@ name: FPGA interchange CI tests on: [push, pull_request] jobs: + Build-yosys: + runs-on: ubuntu-latest + steps: + + - uses: actions/checkout@v2 + with: + submodules: recursive + + - uses: actions/setup-python@v2 + + - name: Install + run: | + sudo apt-get update + sudo apt-get install git make cmake libboost-all-dev python3-dev libeigen3-dev tcl-dev clang bison flex swig + + - name: ccache + uses: hendrikmuhs/ccache-action@v1 + + - name: Execute build yosys script + run: | + export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH" + source ./.github/ci/build_interchange.sh + build_yosys + + Build-nextpnr: + runs-on: ubuntu-latest + steps: + + - uses: actions/checkout@v2 + with: + submodules: recursive + + - uses: actions/setup-python@v2 + + - name: Install + run: | + sudo apt-get update + sudo apt-get install git make cmake libboost-all-dev python3-dev libeigen3-dev tcl-dev clang bison flex swig - Run-tests: + - name: ccache + uses: hendrikmuhs/ccache-action@v1 + + - name: Execute build interchange script + run: | + export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH" + source ./.github/ci/build_interchange.sh + build_nextpnr + + Run-Tests: runs-on: ubuntu-latest + needs: [Build-yosys, Build-nextpnr] + strategy: + matrix: + device: [xc7a35t, xc7a100t, xc7a200t, xc7z010] steps: - uses: actions/checkout@v2 @@ -19,11 +70,26 @@ jobs: sudo apt-get update sudo apt-get install git make cmake libboost-all-dev python3-dev libeigen3-dev tcl-dev clang bison flex swig - - name: Execute build script - run: stdbuf -i0 -o0 -e0 ./.github/ci/build_interchange.sh + - name: ccache + uses: hendrikmuhs/ccache-action@v1 + + - name: Execute build interchange script + env: + RAPIDWRIGHT_PATH: ${{ github.workspace }}/RapidWright + INTERCHANGE_SCHEMA_PATH: ${{ github.workspace }}/3rdparty/fpga-interchange-schema/interchange + PYTHON_INTERCHANGE_PATH: ${{ github.workspace }}/python-fpga-interchange + PYTHON_INTERCHANGE_TAG: v0.0.4 + + run: | + export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH" + source ./.github/ci/build_interchange.sh + build_yosys && build_nextpnr && get_dependencies - name: Run tests + env: + DEVICE: ${{ matrix.device }} run: | cd build - make all-fpga_interchange-archcheck-tests -j`nproc` - make all-fpga_interchange-tests -j`nproc` + make chipdb-$DEVICE-bin-check-test-data + make chipdb-$DEVICE-bin-check + make all-$DEVICE-tests -j`nproc` |