Files
edgetx-gx12/.github/workflows/win-cpn-32.yml
T
Peter FeerickandGitHub d266689d25 chore(github): Build win32 companion on push to main
It's enough to build the win64 companion on PRs for testing, and this keeps the win32 builds from going stale, and may also keep it's build cache form from being cleared.
2022-07-22 11:02:57 +10:00

99 lines
3.3 KiB
YAML

name: Windows Companion 32-bit
on:
push:
branches:
- 'main'
tags:
- v*
paths:
- '.github/workflows/win_cpn-32.yml'
- 'companion/**'
- 'tools/build-companion.sh'
workflow_dispatch:
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release
CMAKE_GENERATOR: "MSYS Makefiles"
QT_VERSION: "5.12.9"
MINGW_VERSION: "win32_mingw73"
MINGW_PATH: "mingw73_32"
jobs:
build:
# The CMake configure and build commands are platform agnostic and should work equally
# well on Windows or Mac. You can convert this to a matrix build if you need
# cross-platform coverage.
# See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
runs-on: windows-latest
defaults:
run:
shell: msys2 {0}
steps:
- uses: msys2/setup-msys2@v2
with:
msystem: MINGW32
update: true
install: git make mingw-w64-i686-toolchain
- name: Install Dependencies
run: |
pacman -S --noconfirm mingw-w64-i686-cmake \
mingw-w64-i686-python-pip \
mingw-w64-i686-python-pillow \
mingw-w64-i686-python-lz4 \
mingw-w64-i686-arm-none-eabi-gcc \
mingw-w64-i686-libjpeg-turbo \
mingw-w64-i686-zlib \
mingw-w64-i686-libtiff \
mingw-w64-i686-freetype \
mingw-w64-i686-lcms2 \
mingw-w64-i686-libwebp \
mingw-w64-i686-openjpeg2 \
mingw-w64-i686-libimagequant \
mingw-w64-i686-libraqm \
mingw-w64-i686-SDL \
mingw-w64-i686-clang \
mingw-w64-i686-nsis
python -m pip install clang
- name: Cache Qt
id: cache-qt
uses: actions/cache@v1 # not v2!
with:
path: ../Qt
key: win32-QtCache
- name: Install Qt
uses: jurplel/install-qt-action@v2
with:
cached: ${{ steps.cache-qt.outputs.cache-hit }}
version: ${{ env.QT_VERSION }}
arch: ${{ env.MINGW_VERSION }}
- name: Check out the repo
uses: actions/checkout@v2
with:
submodules: recursive
- name: Build
working-directory: ${{github.workspace}}
# Execute the build. You can specify a specific target with "--target <NAME>"
run: |
mkdir output && \
CMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt/$QT_VERSION/$MINGW_PATH \
tools/build-companion.sh "$(pwd)" "$(pwd)/output/"
- name: Compose release filename
# https://stackoverflow.com/questions/58033366/how-to-get-current-branch-within-github-actions
run: echo "artifact_name=edgetx-cpn-win32-${GITHUB_REF##*/}" >> $GITHUB_ENV
- name: Archive production artifacts
uses: actions/upload-artifact@v2
with:
name: "${{ env.artifact_name }}"
path: ${{github.workspace}}/output
retention-days: 15