Skip to content

Test Windows build

Test Windows build #36

Workflow file for this run

name: Test
on: [push, pull_request]
jobs:
windows-build:
runs-on: windows-latest
name: Windows
defaults:
run:
shell: msys2 {0}
steps:
- name: Setup MSYS2
uses: msys2/setup-msys2@v2
with:
msystem: MINGW64
update: true
install: >-
git
make
pacboy: >-
toolchain:p
cmake:p
ninja:p
libusb:p
boost:p
qt6-base:p
qt6-svg:p
spdlog:p
volk:p
libsndfile:p
soapysdr:p
fftw:p
- name: Clone and build GNU Radio
working-directory: ${{ runner.temp }}
run: |
git clone --depth 1 https://github.com/gnuradio/gnuradio.git
cd gnuradio
cmake -S . -B build \
-DCMAKE_INSTALL_PREFIX=${RUNNER_TEMP}/msys64/mingw64 \
-DENABLE_DEFAULT=OFF \
-DENABLE_COMMON_PCH=ON \
-DENABLE_GNURADIO_RUNTIME=ON \
-DENABLE_GR_ANALOG=ON \
-DENABLE_GR_AUDIO=ON \
-DENABLE_GR_BLOCKS=ON \
-DENABLE_GR_DIGITAL=ON \
-DENABLE_GR_FFT=ON \
-DENABLE_GR_FILTER=ON \
-DENABLE_GR_NETWORK=ON
cmake --build build
cmake --install build
- name: Clone and build rtl-sdr
working-directory: ${{ runner.temp }}
run: |
git clone https://gitea.osmocom.org/sdr/rtl-sdr.git
cd rtl-sdr
cmake -S . -B build \
-DCMAKE_INSTALL_PREFIX=${RUNNER_TEMP}/msys64/mingw64 \
-DDETACH_KERNEL_DRIVER=OFF \
-DENABLE_ZEROCOPY=OFF \
-DINSTALL_UDEV_RULES=OFF
cmake --build build
cmake --install build
- name: Clone and build gr-osmosdr
working-directory: ${{ runner.temp }}
run: |
git clone https://gitea.osmocom.org/sdr/gr-osmosdr.git
cd gr-osmosdr
cmake -S . -B build \
-DCMAKE_INSTALL_PREFIX=${RUNNER_TEMP}/msys64/mingw64 \
-DENABLE_DEFAULT=OFF \
-DENABLE_FILE=ON \
-DENABLE_RTL=ON \
-DENABLE_SOAPY=ON
cmake --build build
cmake --install build
- name: Checkout code
uses: actions/checkout@v3
- name: Configure, compile & install
run: |
cmake -S . -B build \
-DCMAKE_INSTALL_PREFIX=C:/gqrx
cmake --build build
cmake --install build
- name: Deploy Qt application
run: |
cd ${RUNNER_TEMP}/msys64/mingw64/bin
windeployqt6.exe C:/gqrx/bin/gqrx.exe
cp \
ibb2-1.dll \
ibboost_program_options-mt.dll \
ibboost_thread-mt.dll \
ibbrotlicommon.dll \
ibbrotlidec.dll \
ibbz2-1.dll \
ibdouble-conversion.dll \
ibfftw3f-3.dll \
ibfftw3f_threads-3.dll \
ibFLAC.dll \
ibfmt.dll \
ibfreetype-6.dll \
ibgcc_s_seh-1.dll \
ibglib-2.0-0.dll \
ibgmp-10.dll \
ibgnuradio-*.dll \
ibgraphite2.dll \
ibharfbuzz-0.dll \
ibiconv-2.dll \
ibicudt74.dll \
ibicuin74.dll \
ibicuuc74.dll \
ibintl-8.dll \
ibmd4c.dll \
ibmp3lame-0.dll \
ibmpg123-0.dll \
ibogg-0.dll \
ibopus-0.dll \
iborc-0.4-0.dll \
ibpcre2-16-0.dll \
ibpcre2-8-0.dll \
ibpng16-16.dll \
ibrtlsdr.dll \
ibsndfile-1.dll \
ibSoapySDR.dll \
ibspdlog.dll \
ibstdc++-6.dll \
ibusb-1.0.dll \
ibvolk.dll \
ibvorbis-0.dll \
ibvorbisenc-2.dll \
ibwinpthread-1.dll \
ibzstd.dll \
zlib1.dll \
C:/gqrx/bin/
- name: Save artifact
uses: actions/upload-artifact@v3
with:
name: gqrx-windows-${{ github.run_id }}
path: C:/gqrx/bin