diff --git a/.github/workflows/build_latest.yml b/.github/workflows/build_latest.yml index 176070441..c56e61cc2 100644 --- a/.github/workflows/build_latest.yml +++ b/.github/workflows/build_latest.yml @@ -1,9 +1,9 @@ -name: Qt5 check generated_cpp +name: Check generated_cpp on: push: branches: - - master + # - master pull_request: defaults: @@ -15,17 +15,25 @@ jobs: strategy: fail-fast: false matrix: + os: ['ubuntu', 'windows'] qt-version: [ '5.12.*', '5.15.*', '6.5.*' ] python-version: [ '3.12' ] - runs-on: ubuntu-latest + runs-on: ${{ matrix.os }}-latest steps: + - name: Install MSVC + if: ${{ matrix.os == 'windows' }} + uses: ilammy/msvc-dev-cmd@v1 + with: + arch: amd64 + - name: Install Qt ${{matrix.qt-version}} uses: jurplel/install-qt-action@v3 with: version: ${{ matrix.qt-version }} modules: ${{startsWith(matrix.qt-version, '6') && 'qt5compat' || '' }} - archives: 'qtmultimedia qtlinuxextras qtbase qttools icu qtwayland' + arch: ${{ matrix.os == 'windows' && 'win64_msvc2019_64' || 'gcc_64' }} + archives: "qtmultimedia qtbase qttools ${{ matrix.os == 'windows' && 'qtwinextras' || 'qtlinuxextras qtwayland icu' }}" - name: Setup Python ${{ matrix.python-version }} uses: actions/setup-python@v4 @@ -64,10 +72,11 @@ jobs: - name: Upload Wrappers uses: actions/upload-artifact@v3 with: - name: wrappers_ubuntu_${{ steps.setenv.outputs.QT_VERSION_SHORT }} + name: wrappers_${{ matrix.os }}_${{ steps.setenv.outputs.QT_VERSION_SHORT }} path: generated_cpp - - name: Build PythonQt + - name: Build PythonQt Ubuntu + if: ${{ matrix.os == 'ubuntu' }} run: | echo ======= SYSTEM INFO ======== uname -a; gcc --version | grep "gcc"; python3 --version; qmake --version @@ -79,3 +88,18 @@ jobs: make -j $(nproc) UBSAN_OPTIONS="halt_on_error=1" ASAN_OPTIONS="detect_leaks=0:detect_stack_use_after_return=1:fast_unwind_on_malloc=0" \ make check TESTARGS="-platform offscreen" + + - name: Build PythonQt Windows + shell: cmd + if: ${{ matrix.os == 'windows' }} + run: | + qmake -query + python --version + qmake CONFIG+=release CONFIG-=debug_and_release CONFIG-=debug_and_release_target ^ + "PYTHONQTALL_CONFIG=${{ matrix.pythonqtall-config }}" ^ + "PYTHON_PATH=%pythonLocation%" ^ + "PYTHON_VERSION=${{ steps.versions.outputs.PYTHON_VERSION_SHORT }}" ^ + PythonQt.pro + mingw32-make -j 2 && mingw32-make check "TESTARGS=-platform offscreen" ^ + || nmake && nmake check "TESTARGS=-platform offscreen" +