AppVeyor CI builds for Microsoft Windows only. Therefore, do not start builds for changes made only in dfb, gtk, gtk1, motif, unix, and x11 folders. Additionally, do not start the builds when only an *.md file in the root folder changes. Lastly, ignore all changes in the demos folder: Demos are not built by AppVeyor at all.
109 lines
2.9 KiB
YAML
109 lines
2.9 KiB
YAML
version: '{build}'
|
|
|
|
branches:
|
|
only:
|
|
- master
|
|
- WX_3_0_BRANCH
|
|
|
|
skip_commits:
|
|
files:
|
|
- demos/
|
|
- docs/
|
|
- interface/
|
|
- misc/
|
|
- include/wx/dfb/
|
|
- src/dfb/
|
|
- include/wx/gtk/
|
|
- src/gtk/
|
|
- include/wx/gtk1/
|
|
- src/gtk1/
|
|
- include/wx/motif/
|
|
- src/motif/
|
|
- include/wx/osx/
|
|
- src/osx/
|
|
- include/wx/unix/
|
|
- src/unix/
|
|
- include/wx/x11/
|
|
- src/x11/
|
|
- '*.md'
|
|
- .github/workflows/
|
|
- .travis.yml
|
|
- build/tools/travis-ci.sh
|
|
- build/tools/before_install.sh
|
|
|
|
environment:
|
|
matrix:
|
|
- TOOLSET: msbuild
|
|
CONFIGURATION: DLL Release
|
|
ARCH: x64
|
|
wxUSE_STL: 1
|
|
- TOOLSET: nmake
|
|
VS: '9.0'
|
|
BUILD: release
|
|
ARCH: x86
|
|
- TOOLSET: nmake
|
|
VS: '14.0'
|
|
BUILD: debug
|
|
ARCH: amd64
|
|
wxUSE_STL: 1
|
|
wxUSE_WEBVIEW_EDGE: 1
|
|
- TOOLSET: mingw
|
|
- TOOLSET: msys2
|
|
MSYSTEM: MINGW32
|
|
- TOOLSET: cygwin
|
|
- TOOLSET: cmake
|
|
GENERATOR: 'Visual Studio 12'
|
|
SHARED: ON
|
|
CONFIGURATION: Release
|
|
- TOOLSET: cmake_qt
|
|
GENERATOR: 'Visual Studio 14 2015 Win64'
|
|
SHARED: ON
|
|
CONFIGURATION: Release
|
|
|
|
clone_depth: 50
|
|
|
|
install: git submodule update --init
|
|
|
|
init:
|
|
- ps: |
|
|
if ($env:APPVEYOR_PULL_REQUEST_NUMBER -and $env:APPVEYOR_BUILD_NUMBER -ne ((Invoke-RestMethod `
|
|
https://ci.appveyor.com/api/projects/$env:APPVEYOR_ACCOUNT_NAME/$env:APPVEYOR_PROJECT_SLUG/history?recordsNumber=50).builds | `
|
|
Where-Object pullRequestId -eq $env:APPVEYOR_PULL_REQUEST_NUMBER)[0].buildNumber) { `
|
|
throw "There are newer queued builds for this pull request, failing early." }
|
|
|
|
before_build:
|
|
- ps: |
|
|
$env:PATH = $env:PATH -replace "C:\\Program Files\\Git\\usr\\bin",""
|
|
if (-not (Test-Path env:wxUSE_STL)) { $env:wxUSE_STL = '0' }
|
|
if (-not (Test-Path env:wxUSE_WEBVIEW_EDGE)) { $env:wxUSE_WEBVIEW_EDGE = '0' }
|
|
if (($env:TOOLSET -ne "msys2") -and ($env:TOOLSET -ne "cygwin")) {
|
|
$txt = gc include\wx\msw\setup.h
|
|
Write-Output $txt |
|
|
%{$_ -replace "define wxUSE_STL 0", "define wxUSE_STL $env:wxUSE_STL"} |
|
|
%{$_ -replace "define wxUSE_WEBVIEW_EDGE 0", "define wxUSE_WEBVIEW_EDGE $env:wxUSE_WEBVIEW_EDGE"} |
|
|
sc include\wx\msw\setup.h
|
|
}
|
|
|
|
build_script: c:\projects\wxwidgets\build\tools\appveyor.bat
|
|
|
|
before_test:
|
|
- ps: |
|
|
Write-Output "Getting and launching httpbin."
|
|
$env:PATH = "C:\Python35;C:\Python35\Scripts;" + $env:PATH
|
|
pip.exe --disable-pip-version-check install httpbin
|
|
Start-Job -Name wx_httpbin { python.exe -m httpbin.core 2>&1 > c:\projects\wxwidgets\httpbin.log }
|
|
Start-Sleep -Seconds 5
|
|
curl.exe -s http://127.0.0.1:5000/ip > $null
|
|
if ($lastExitCode -eq "0") {
|
|
$env:WX_TEST_WEBREQUEST_URL="http://127.0.0.1:5000"
|
|
}
|
|
else {
|
|
Write-Error "Disabling wxWebRequest tests as launching httpbin failed."
|
|
$env:WX_TEST_WEBREQUEST_URL="0"
|
|
}
|
|
|
|
test_script: c:\projects\wxwidgets\build\tools\appveyor-test.bat
|
|
|
|
after_test:
|
|
- ps: |
|
|
Stop-Job -Name wx_httpbin
|