Add build check Github Action #3
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build check | |
on: | |
push: | |
pull_request: | |
workflow_dispatch: | |
jobs: | |
macos_macports_build_job: | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [macos-12, macos-14] | |
runs-on: ${{ matrix.os }} | |
name: Build on ${{ matrix.os }} (macports) | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: melusina-org/setup-macports@v1 | |
- name: Install ports | |
run: sudo port install SoapySDR limesuite libiio libad9361-iio | |
- name: Configure | |
run: cmake -B build | |
- name: Build | |
run: cmake --build build | |
macos_tfcollins_build_job: | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [macos-12, macos-14] | |
runs-on: ${{ matrix.os }} | |
name: Build on ${{ matrix.os }} (tfcollins) | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup tools | |
run: | | |
brew tap tfcollins/homebrew-formulae | |
brew update | |
brew install soapysdr limesuite libiio libad9361-iio | |
- name: Configure | |
run: cmake -B build | |
- name: Build | |
run: cmake --build build | |
macos_pothos_build_job: | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [macos-12, macos-14] | |
runs-on: ${{ matrix.os }} | |
name: Build on ${{ matrix.os }} (pothos) | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup tools | |
# Note: "distutils" package is removed in python version 3.12 | |
# pothosware libiio homebrew formula will fail without "setuptools" | |
run: | | |
brew tap pothosware/homebrew-pothos | |
brew update | |
pip3 install --break-system-packages setuptools | |
brew install soapysdr limesuite libiio libad9361 | |
- name: Configure | |
run: cmake -B build | |
- name: Build | |
run: cmake --build build | |
linux_build_job: | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-20.04, ubuntu-22.04] | |
runs-on: ${{ matrix.os }} | |
name: Build on ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup tools | |
run: | | |
sudo apt-get update -q -y | |
sudo apt-get install -y --no-install-recommends cmake ninja-build | |
sudo apt-get install -q -y libsoapysdr-dev liblimesuite-dev libiio-dev libad9361-dev | |
- name: Configure | |
run: cmake -GNinja -B build | |
- name: Build | |
run: cmake --build build |