8f1e277833
Unfortunately they will still run once when this commit is done, but at least they won't run in the future when templates are modified.
115 lines
3.3 KiB
YAML
115 lines
3.3 KiB
YAML
# CI workflow building wxMSW under Windows.
|
|
name: MSW builds
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
paths-ignore:
|
|
- '.github/ISSUE_TEMPLATE/**'
|
|
- '.github/workflows/ci.yml'
|
|
- '.github/workflows/ci_cmake.yml'
|
|
- '.github/workflows/ci_mac.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/ISSUE_TEMPLATE/**'
|
|
- '.github/workflows/ci.yml'
|
|
- '.github/workflows/ci_cmake.yml'
|
|
- '.github/workflows/ci_mac.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-msvs:
|
|
runs-on: windows-${{ matrix.vsversion }}
|
|
name: wxMSW vs${{ matrix.vsversion }} ${{ matrix.configuration }} ${{ matrix.platform }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- configuration: 'DLL Debug'
|
|
platform: 'x64'
|
|
vsversion: 2022
|
|
- configuration: 'Debug'
|
|
platform: 'Win32'
|
|
vsversion: 2019
|
|
- configuration: 'DLL Release'
|
|
platform: 'x64'
|
|
vsversion: 2019
|
|
use_stl: true
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
with:
|
|
submodules: 'recursive'
|
|
|
|
- name: Configure to use STL
|
|
if: matrix.use_stl
|
|
working-directory: include/wx/msw
|
|
run: |
|
|
$txt = Get-Content setup.h
|
|
Write-Output $txt |
|
|
%{$_ -replace "define wxUSE_STL 0", "define wxUSE_STL 1"} |
|
|
Set-Content setup.h
|
|
|
|
- name: Add MSBuild to PATH
|
|
uses: microsoft/setup-msbuild@v1.0.3
|
|
with:
|
|
vs-prerelease: true
|
|
|
|
- name: Build
|
|
run: |
|
|
msbuild /noLogo /m '/p:Configuration=${{ matrix.configuration }}' /p:Platform=${{ matrix.platform }} build\msw\wx_vc16.sln
|
|
if ( '${{ matrix.configuration }}'.IndexOf('DLL') -ne -1 ) {
|
|
$dlldir = Join-Path (Get-Location) 'lib\vc_${{ matrix.platform }}_dll'
|
|
Write-Output "Adding $dlldir to the PATH"
|
|
$dlldir | Out-File -Append $env:GITHUB_PATH
|
|
}
|
|
|
|
- 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
|