Build All #23
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: CMake Build | ||
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=1 | ||
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 liboctave-dev | ||
- name: Configure CMake | ||
if: matrix.compiler == 'gcc' | ||
run: cmake -B ${{github.workspace}}/build_${{ matrix.compiler }} -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc -DCMAKE_BUILD_TYPE=${{BUILD_TYPE}} -DCMAKE_INSTALL_PREFIX=${{INSTALL_PREFIX}} ${{env.CMAKE_OPTIONS}} | ||
Check failure on line 34 in .github/workflows/cmake.yml GitHub Actions / CMake BuildInvalid workflow file
|
||
- 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=${{BUILD_TYPE}} -DCMAKE_INSTALL_PREFIX=${{INSTALL_PREFIX}} ${{env.CMAKE_OPTIONS}} | ||
- name: Build | ||
run: cmake --build ${{github.workspace}}/build_${{ matrix.compiler }} --config ${{env.BUILD_TYPE}} --j ${{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 | ||
if: matrix.os == 'windows-latest' | ||
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.os == 'windows-latest' && 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=${{BUILD_TYPE}} -DCMAKE_INSTALL_PREFIX=${{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}} --j ${{env.CMAKE_BUILD_PARALLEL_LEVEL}} | ||
buildOSX: | ||
name: Build MacOS | ||
runs-on: macos-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Install dependencies | ||
run: brew install castxml gnuradio pybind11 wxwidgets | ||
- name: Configure CMake | ||
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{BUILD_TYPE}} -DCMAKE_INSTALL_PREFIX=${{INSTALL_PREFIX}} ${{env.CMAKE_OPTIONS}} | ||
- name: Build | ||
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} --j ${{env.CMAKE_BUILD_PARALLEL_LEVEL}} |