| on: [push, pull_request] |
| name: CI |
| |
| jobs: |
| build: |
| strategy: |
| matrix: |
| name: [gcc] |
| #name: [gcc, clang] |
| include: |
| #- name: gcc |
| # env: CC=gcc CXX=g++ |
| - name: clang |
| env: CC=clang CXX=clang++ |
| |
| name: ${{ matrix.name }} |
| runs-on: [ubuntu-latest] |
| |
| steps: |
| |
| - uses: actions/checkout@v2 |
| |
| - name: Packages |
| run: | |
| sudo apt-get update |
| sudo apt-get install -y \ |
| bison \ |
| build-essential \ |
| clang \ |
| cmake \ |
| flex \ |
| gcc \ |
| git \ |
| libboost-program-options-dev \ |
| ninja-build \ |
| python3 \ |
| python3-pip \ |
| python3-setuptools \ |
| zlib1g-dev |
| sudo pip3 install -U lit |
| |
| - name: Dependencies |
| run: | |
| ./scripts/deps/setup-minisat.sh |
| ./scripts/deps/setup-cms.sh |
| ./scripts/deps/setup-gtest.sh |
| ./scripts/deps/setup-outputcheck.sh |
| |
| - name: Configure |
| run: | |
| mkdir build |
| cd build |
| ${{ matrix.env }} cmake -DNOCRYPTOMINISAT:BOOL=OFF -DENABLE_TESTING:BOOL=ON -DPYTHON_EXECUTABLE:PATH="$(which python3)" -G Ninja .. |
| |
| - name: Build |
| run: cmake --build . --parallel "$(nproc)" |
| working-directory: build |
| |
| - name: Test |
| run: ctest --parallel "$(nproc)" -VV --output-on-failure |
| working-directory: build |
| |
| # EOF |