diff --git a/win-cpn-32.yml b/win-cpn-32.yml new file mode 100644 index 000000000..bde343bdc --- /dev/null +++ b/win-cpn-32.yml @@ -0,0 +1,96 @@ +name: Windows Companion 32-bit + +on: + push: + branches: + - 'win-cpn-32' + tags: + - v* + paths: + - '.github/workflows/win_cpn-32.yml' + - 'companion/**' + - 'tools/build-companion-nightly.sh' + + pull_request: + branches: + - 'win-cpn-32' + paths: + - '.github/workflows/win_cpn-32.yml' + - 'companion/**' + - 'tools/build-companion-nightly.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-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 + pip install Pillow clang + + - name: Install Qt + uses: jurplel/install-qt-action@v2 + with: + 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-nightly.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-win-32-${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