Try to fix OS version number #388
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
# https://stackoverflow.com/questions/69126323/github-actions-creating-releases-for-multiple-branches-in-a-single-workflow | |
# https://gist.github.com/NickNaso/0d478f1481686d5bcc868cac06620a60 | |
name: SDRangel CI/CD | |
on: | |
push: | |
branches: | |
- master | |
- mac_ci | |
tags: | |
- 'v*' | |
pull_request: | |
jobs: | |
build: | |
name: ${{ matrix.config.name }} | |
runs-on: ${{ matrix.config.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- { | |
name: "Windows-x64", | |
WIN_ARCH: "x64", | |
os: windows-latest, | |
QT_INST_DIR: "C:/", | |
QTDIR: "C:/Qt/5.15.2/msvc2019_64", | |
QT_ARCH: win64_msvc2019_64, | |
boost_dl: "${{ github.workspace }}\\downloads\\boost", | |
lib_dir: "C:\\Libraries", | |
generators: Ninja | |
} | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: true | |
fetch-depth: 0 | |
- name: Print env | |
run: | | |
echo github.event.action: ${{ github.event.action }} | |
echo github.event_name: ${{ github.event_name }} | |
echo github.ref: ${{ github.ref }} | |
echo github.workspace: ${{ github.workspace }} | |
- name: Get version | |
id: get_version | |
run: echo "version=$(git describe --tags | cut -c2-)" >> $env:GITHUB_OUTPUT | |
- name: Install basic dependencies on Windows | |
if: startsWith(matrix.config.os, 'windows') | |
run: | | |
choco install ninja cmake | |
ninja --version | |
cmake --version | |
- name: Install MSVC on Windows | |
if: startsWith(matrix.config.os, 'windows') | |
uses: ilammy/msvc-dev-cmd@v1 | |
with: | |
arch: x64 | |
- name: Install Boost | |
env: | |
BOOST_ROOT: ${{ matrix.config.boost_dl }} | |
BOOST_DEST: ${{ matrix.config.lib_dir }} | |
BOOST_URL: https://boostorg.jfrog.io/artifactory/main/release/1.73.0/source/boost_1_73_0.tar.bz2 | |
run: | | |
mkdir -p $BOOST_ROOT | |
mkdir -p $BOOST_DEST | |
curl --progress-bar --location --output $BOOST_ROOT/download.tar.bz2 $BOOST_URL | |
7z -o$BOOST_ROOT x $BOOST_ROOT/download.tar.bz2 -y -bd | |
7z -o$BOOST_ROOT x $BOOST_ROOT/download.tar -y -bd | |
cd $BOOST_ROOT && cp -r boost_* $BOOST_DEST | |
ls -l $BOOST_DEST | |
ls -l "C:\\" | |
rm -rf boost_*/* download.tar.bz2 download.tar | |
shell: bash | |
- name: Install Qt | |
uses: jurplel/install-qt-action@v3 | |
with: | |
dir: ${{matrix.config.QT_INST_DIR}} | |
arch: ${{matrix.config.QT_ARCH}} | |
setup-python: false | |
modules: 'qtcharts qtwebengine' | |
- name: build sdrangel on Windows | |
if: startsWith(matrix.config.os, 'windows') | |
run: | | |
cmd "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
choco install patch | |
mkdir build && cd build | |
cmake .. -G "${{ matrix.config.generators }}" -DCMAKE_BUILD_TYPE=Release -DARCH_OPT=SSE4_2 -DDEBUG_OUTPUT=ON -DENABLE_MIRISDR=OFF -DBUILD_SERVER=OFF -DCMAKE_PREFIX_PATH="C:\Qt\5.15.2\msvc2019_64;C:\Libraries\boost_1_73_0" | |
cmake --build . --config Release --target package | |
- name: Upload artifact | |
uses: actions/upload-artifact@v3 | |
with: | |
name: sdrangel-${{ steps.get_version.outputs.version }}-win64.exe | |
path: ${{ github.workspace }}/build/sdrangel-${{ steps.get_version.outputs.version }}-win64.exe | |
- name: Upload release | |
if: startsWith(github.ref, 'refs/tags/') | |
uses: softprops/[email protected] | |
with: | |
files: ${{ github.workspace }}/build/sdrangel-${{ steps.get_version.outputs.version }}-win64.exe | |
build_mac: | |
runs-on: macos-11 | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: true | |
fetch-depth: 0 | |
# Need with clause so git describe --tags works? | |
- name: Get version | |
id: get_version | |
run: echo "version=$(git describe --tags | cut -c2-)" >> $GITHUB_OUTPUT | |
# Requires git fetch --tags upstream to have been run! | |
- name: Get version 3 | |
id: get_version3 | |
run: echo "version=${GITHUB_REF#refs/*/}" >> $GITHUB_OUTPUT | |
# This just gives branch name | |
- name: Get OS version | |
id: get_os_version | |
run: | | |
sw_vers -productVersion | |
echo "os_version=$(sw_vers -productVersion)" >> $GITHUB_OUTPUT | |
- name: Diplay version | |
run: | | |
echo ${{ steps.get_version.outputs.version }} | |
echo ${{ steps.get_version3.outputs.version }} | |
echo ${{ steps.get_os_version.outputs.os_version }} | |
- name: Update brew | |
run: brew update | |
- name: Install brew packages | |
run: brew install nasm boost hidapi libusb fftw ffmpeg faad2 opencv zlib airspy airspyhf hackrf rtl-sdr libbladerf uhd soapysdr | |
- name: Build sdrangel on Mac | |
run: | | |
mkdir build && cd build | |
cmake .. -DCMAKE_VERBOSE_MAKEFILE=ON -DENABLE_QT6=ON -DCMAKE_BUILD_TYPE=Release -DARCH_OPT=nehalem -DDEBUG_OUTPUT=ON -DENABLE_MIRISDR=OFF -DBUILD_SERVER=OFF -DENABLE_EXTERNAL_LIBRARIES=AUTO -DBUNDLE=ON -DPKG_CONFIG_USE_CMAKE_PREFIX_PATH=TRUE | |
make package -j4 | |
- name: Upload artifact | |
uses: actions/upload-artifact@v3 | |
with: | |
name: sdrangel-${{ steps.get_version.outputs.version }}_${{ steps.get_os_version.outputs.os_version }}_x86_64.dmg | |
path: ${{ github.workspace }}/build/sdrangel-${{ steps.get_version.outputs.version }}_${{ steps.get_os_version.outputs.os_version }}_x86_64.dmg |