diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6ad5ef60e9..8052a6427a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -8,6 +8,7 @@ on: paths-ignore: - '.github/workflows/ci_mac_selfhosted.yml' - '.github/workflows/ci_cmake.yml' + - '.github/workflows/ci_msw.yml' - '.github/workflows/ci_msw_cross.yml' - 'build/tools/appveyor*.bat' - 'distrib/**' @@ -26,6 +27,7 @@ on: paths-ignore: - '.github/workflows/ci_mac_selfhosted.yml' - '.github/workflows/ci_cmake.yml' + - '.github/workflows/ci_msw.yml' - '.github/workflows/ci_msw_cross.yml' - 'build/tools/appveyor*.bat' - 'distrib/**' diff --git a/.github/workflows/ci_cmake.yml b/.github/workflows/ci_cmake.yml index 2a5e599db7..4309ec34b5 100644 --- a/.github/workflows/ci_cmake.yml +++ b/.github/workflows/ci_cmake.yml @@ -8,6 +8,7 @@ on: paths-ignore: - '.github/workflows/ci.yml' - '.github/workflows/ci_mac_selfhosted.yml' + - '.github/workflows/ci_msw.yml' - '.github/workflows/ci_msw_cross.yml' - 'build/tools/appveyor*.bat' - 'distrib/**' @@ -26,6 +27,7 @@ on: paths-ignore: - '.github/workflows/ci.yml' - '.github/workflows/ci_mac_selfhosted.yml' + - '.github/workflows/ci_msw.yml' - '.github/workflows/ci_msw_cross.yml' - 'build/tools/appveyor*.bat' - 'distrib/**' diff --git a/.github/workflows/ci_mac_selfhosted.yml b/.github/workflows/ci_mac_selfhosted.yml index 96dcc3ee54..f62e9f4c0f 100644 --- a/.github/workflows/ci_mac_selfhosted.yml +++ b/.github/workflows/ci_mac_selfhosted.yml @@ -7,6 +7,7 @@ on: paths-ignore: - '.github/workflows/ci.yml' - '.github/workflows/ci_cmake.yml' + - '.github/workflows/ci_msw.yml' - '.github/workflows/ci_msw_cross.yml' - 'build/tools/appveyor*.bat' - 'distrib/**' @@ -34,6 +35,7 @@ on: paths-ignore: - '.github/workflows/ci.yml' - '.github/workflows/ci_cmake.yml' + - '.github/workflows/ci_msw.yml' - '.github/workflows/ci_msw_cross.yml' - 'build/tools/appveyor*.bat' - 'distrib/**' diff --git a/.github/workflows/ci_msw.yml b/.github/workflows/ci_msw.yml new file mode 100644 index 0000000000..e0ed0653bb --- /dev/null +++ b/.github/workflows/ci_msw.yml @@ -0,0 +1,90 @@ +# CI workflow building wxMSW under Windows. +name: MSW builds + +on: + push: + branches: + - master + paths-ignore: + - '.github/workflows/ci.yml' + - '.github/workflows/ci_cmake.yml' + - '.github/workflows/ci_mac_selfhosted.yml' + - '.github/workflows/ci_msw_cross.yml' + - 'build/tools/appveyor*.bat' + - 'distrib/**' + - 'docs/**' + - 'interface/**' + - 'include/wx/gtk/**' + - 'include/wx/osx/**' + - 'locale/**' + - 'src/gtk/**' + - 'src/osx/**' + - '*.md' + - '*.yml' + pull_request: + branches: + - master + paths-ignore: + - '.github/workflows/ci.yml' + - '.github/workflows/ci_cmake.yml' + - '.github/workflows/ci_mac_selfhosted.yml' + - '.github/workflows/ci_msw_cross.yml' + - 'build/tools/appveyor*.bat' + - 'distrib/**' + - 'docs/**' + - 'interface/**' + - 'include/wx/gtk/**' + - 'include/wx/osx/**' + - 'locale/**' + - 'src/gtk/**' + - 'src/osx/**' + - '*.md' + - '*.yml' + +jobs: + msw-vs2019: + runs-on: windows-2019 + name: wxMSW ${{ matrix.configuration }}/${{ matrix.platform }} MSVS 2019 + strategy: + fail-fast: false + matrix: + include: + - configuration: 'Debug' + platform: 'Win32' + - configuration: '"DLL Release"' + platform: 'x64' + + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + submodules: 'recursive' + + - name: Add MSBuild to PATH + uses: microsoft/setup-msbuild@v1.0.2 + + - name: Build + run: | + msbuild /noLogo /m /p:Configuration=${{ matrix.configuration }} /p:Platform=${{ matrix.platform }} build\msw\wx_vc16.sln + + - name: Build minimal sample + run: | + msbuild /noLogo /m /p:Configuration=${{ matrix.configuration }} /p:Platform=${{ matrix.platform }} samples\minimal\minimal_vc16.sln + + - name: Build tests + run: | + msbuild /noLogo /m /p:Configuration=${{ matrix.configuration }} /p:Platform=${{ matrix.platform }} tests\test_vc16.sln + + - name: Run tests + working-directory: tests + run: | + .\vc*msw*\test.exe + + - name: Build GUI tests + run: | + msbuild /noLogo /m /p:Configuration=${{ matrix.configuration }} /p:Platform=${{ matrix.platform }} tests\test_gui_vc16.sln + + - name: Run GUI tests + working-directory: tests + run: | + .\vc*msw*\test_gui.exe diff --git a/.github/workflows/ci_msw_cross.yml b/.github/workflows/ci_msw_cross.yml index ed8e9fb824..993d8f7696 100644 --- a/.github/workflows/ci_msw_cross.yml +++ b/.github/workflows/ci_msw_cross.yml @@ -9,6 +9,7 @@ on: - '.github/workflows/ci.yml' - '.github/workflows/ci_cmake.yml' - '.github/workflows/ci_mac_selfhosted.yml' + - '.github/workflows/ci_msw.yml' - 'build/tools/appveyor*.bat' - 'distrib/**' - 'docs/**' @@ -29,6 +30,7 @@ on: - '.github/workflows/ci.yml' - '.github/workflows/ci_cmake.yml' - '.github/workflows/ci_mac_selfhosted.yml' + - '.github/workflows/ci_msw.yml' - 'build/tools/appveyor*.bat' - 'distrib/**' - 'docs/**'