Add Github Action to build check #19
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 libusb 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 libusb 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 libusb 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 libusb-1.0-0-dev libiio-dev libad9361-dev | |
- name: Configure | |
run: cmake -GNinja -B build | |
- name: Build | |
run: cmake --build build |