Build All #32
Workflow file for this run
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 All | |
on: | |
workflow_dispatch: | |
push: | |
branches: [develop] | |
pull_request: | |
env: | |
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.) | |
BUILD_TYPE: Release | |
CMAKE_BUILD_PARALLEL_LEVEL: 2 | |
SOAPY_SDR_BRANCH: master | |
INSTALL_PREFIX: ${{github.workspace}}/deps | |
CMAKE_OPTIONS: -DINSTALL_KERNEL_MODULE=0 -DENABLE_UDEV_RULES=0 -DENABLE_GNURADIO=0 | |
jobs: | |
buildLinux: | |
name: Build Linux | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
compiler: [gcc, clang] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install -qq gnuradio-dev libusb-1.0-0-dev libwxbase3.0-dev libwxgtk3.0-gtk3-dev | |
- name: Configure CMake (GCC) | |
if: matrix.compiler == 'gcc' | |
run: cmake -B ${{github.workspace}}/build_${{ matrix.compiler }} -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_INSTALL_PREFIX=${{env.INSTALL_PREFIX}} ${{env.CMAKE_OPTIONS}} | |
- name: Configure CMake (Clang) | |
if: matrix.compiler == 'clang' | |
run: cmake -B ${{github.workspace}}/build_${{ matrix.compiler }} -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_INSTALL_PREFIX=${{env.INSTALL_PREFIX}} ${{env.CMAKE_OPTIONS}} | |
- name: Build | |
run: cmake --build ${{github.workspace}}/build_${{ matrix.compiler }} --config ${{env.BUILD_TYPE}} --parallel ${{env.CMAKE_BUILD_PARALLEL_LEVEL}} | |
buildWindows: | |
name: Build Windows | |
runs-on: windows-latest | |
strategy: | |
matrix: | |
arch: [x64, Win32] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download dependencies | |
run: | | |
mkdir ${{github.workspace}}/deps | |
curl -o ${{github.workspace}}/deps/FX3SDK.zip -L https://downloads.myriadrf.org/project/limesuite/appveyor/FX3SDK.zip | |
7z x ${{github.workspace}}/deps/FX3SDK.zip -o${{github.workspace}}/deps/FX3SDK | |
curl -o ${{github.workspace}}/deps/wxWidgets-headers.7z -L https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.4/wxWidgets-3.2.4-headers.7z | |
7z x ${{github.workspace}}/deps/wxWidgets-headers.7z -o${{github.workspace}}/deps/wxWidgets | |
- name: Download dependencies (64-bit wxWidgets) | |
if: matrix.arch == 'x64' | |
run: | | |
curl -o ${{github.workspace}}/deps/wxWidgets.7z -L https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.4/wxMSW-3.2.4_vc14x_x64_Dev.7z | |
7z x ${{github.workspace}}/deps/wxWidgets.7z -o${{github.workspace}}/deps/wxWidgets | |
- name: Download dependencies (32-bit wxWidgets) | |
if: matrix.arch == 'Win32' | |
run: | | |
curl -o ${{github.workspace}}/deps/wxWidgets.7z -L https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.4/wxMSW-3.2.4_vc14x_Dev.7z | |
7z x ${{github.workspace}}/deps/wxWidgets.7z -o${{github.workspace}}/deps/wxWidgets | |
- name: Configure CMake | |
run: cmake -B ${{github.workspace}}/build -A${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_INSTALL_PREFIX=${{env.INSTALL_PREFIX}} ${{env.CMAKE_OPTIONS}} -DwxWidgets_ROOT_DIR=${{github.workspace}}/deps/wxWidgets -DFX3_SDK_RELATIVE_PATH=deps/FX3SDK | |
- name: Build | |
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} --parallel ${{env.CMAKE_BUILD_PARALLEL_LEVEL}} | |
buildOSX: | |
name: Build MacOS | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install dependencies | |
run: brew install wxwidgets | |
# castxml gnuradio pybind11 | |
- name: Configure CMake | |
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_INSTALL_PREFIX=${{env.INSTALL_PREFIX}} ${{env.CMAKE_OPTIONS}} | |
- name: Build | |
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} --parallel ${{env.CMAKE_BUILD_PARALLEL_LEVEL}} |