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 " 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