diff options
-rw-r--r-- | appveyor.yml | 11 | ||||
-rw-r--r-- | scripts/nuget_build.ps1 | 44 | ||||
-rw-r--r-- | tests/autotest-appveyor.ps1 | 13 |
3 files changed, 35 insertions, 33 deletions
diff --git a/appveyor.yml b/appveyor.yml index a42990f..51adf2e 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,6 +1,6 @@ image: -- Visual Studio 2015 -- Visual Studio 2017 + - Visual Studio 2015 + - Visual Studio 2017 version: "{branch}-{build}" @@ -11,10 +11,11 @@ install: - ps: Import-Module CoApp build_script: - - ps: if ($env:APPVEYOR_BUILD_WORKER_IMAGE -eq "Visual Studio 2017"){.\scripts\nuget_build.ps1} + - ps: if ($env:APPVEYOR_BUILD_WORKER_IMAGE -eq "Visual Studio 2017") { .\scripts\nuget_build.ps1 } test_script: - - ps: if ($env:APPVEYOR_BUILD_WORKER_IMAGE -eq "Visual Studio 2015"){.\tests\autotest-appveyor.ps1} + - ps: if ($env:APPVEYOR_BUILD_WORKER_IMAGE -eq "Visual Studio 2015") { .\tests\autotest-appveyor.ps1 9 10 11 12 14 } + - ps: if ($env:APPVEYOR_BUILD_WORKER_IMAGE -eq "Visual Studio 2017") { .\tests\autotest-appveyor.ps1 15 } artifacts: - - path: .\scripts\*.nupkg
\ No newline at end of file + - path: .\scripts\*.nupkg diff --git a/scripts/nuget_build.ps1 b/scripts/nuget_build.ps1 index bcb774f..a8e3017 100644 --- a/scripts/nuget_build.ps1 +++ b/scripts/nuget_build.ps1 @@ -1,33 +1,25 @@ +function Run-Command +{ + Invoke-Expression $args[0] + if ($LastExitCode) { exit $LastExitCode } +} + Push-Location $scriptdir = Split-Path $MyInvocation.MyCommand.Path cd $scriptdir -"%VS141COMNTOOLS%\VsMSBuildCmd.bat" -msbuild pugixml_vs2013_static.vcxproj /t:Rebuild /p:Configuration=Debug /p:Platform=x86 /v:minimal /nologo -If(!$?){exit 1} -msbuild pugixml_vs2013_static.vcxproj /t:Rebuild /p:Configuration=Release /p:Platform=x86 /v:minimal /nologo -If(!$?){exit 1} -msbuild pugixml_vs2013_static.vcxproj /t:Rebuild /p:Configuration=Debug /p:Platform=x64 /v:minimal /nologo -If(!$?){exit 1} -msbuild pugixml_vs2013_static.vcxproj /t:Rebuild /p:Configuration=Release /p:Platform=x64 /v:minimal /nologo -If(!$?){exit 1} -msbuild pugixml_vs2015.vcxproj /t:Rebuild /p:Configuration=Debug /p:Platform=x86 /v:minimal /nologo -If(!$?){exit 1} -msbuild pugixml_vs2015.vcxproj /t:Rebuild /p:Configuration=Release /p:Platform=x86 /v:minimal /nologo -If(!$?){exit 1} -msbuild pugixml_vs2015.vcxproj /t:Rebuild /p:Configuration=Debug /p:Platform=x64 /v:minimal /nologo -If(!$?){exit 1} -msbuild pugixml_vs2015.vcxproj /t:Rebuild /p:Configuration=Release /p:Platform=x64 /v:minimal /nologo -If(!$?){exit 1} -msbuild pugixml_vs2017.vcxproj /t:Rebuild /p:Configuration=Debug /p:Platform=x86 /v:minimal /nologo -If(!$?){exit 1} -msbuild pugixml_vs2017.vcxproj /t:Rebuild /p:Configuration=Release /p:Platform=x86 /v:minimal /nologo -If(!$?){exit 1} -msbuild pugixml_vs2017.vcxproj /t:Rebuild /p:Configuration=Debug /p:Platform=x64 /v:minimal /nologo -If(!$?){exit 1} -msbuild pugixml_vs2017.vcxproj /t:Rebuild /p:Configuration=Release /p:Platform=x64 /v:minimal /nologo -If(!$?){exit 1} +Run-Command "msbuild pugixml_vs2013_static.vcxproj /t:Rebuild /p:Configuration=Debug /p:Platform=x86 /v:minimal /nologo" +Run-Command "msbuild pugixml_vs2013_static.vcxproj /t:Rebuild /p:Configuration=Release /p:Platform=x86 /v:minimal /nologo" +Run-Command "msbuild pugixml_vs2013_static.vcxproj /t:Rebuild /p:Configuration=Debug /p:Platform=x64 /v:minimal /nologo" +Run-Command "msbuild pugixml_vs2013_static.vcxproj /t:Rebuild /p:Configuration=Release /p:Platform=x64 /v:minimal /nologo" +Run-Command "msbuild pugixml_vs2015.vcxproj /t:Rebuild /p:Configuration=Debug /p:Platform=x86 /v:minimal /nologo" +Run-Command "msbuild pugixml_vs2015.vcxproj /t:Rebuild /p:Configuration=Release /p:Platform=x86 /v:minimal /nologo" +Run-Command "msbuild pugixml_vs2015.vcxproj /t:Rebuild /p:Configuration=Debug /p:Platform=x64 /v:minimal /nologo" +Run-Command "msbuild pugixml_vs2015.vcxproj /t:Rebuild /p:Configuration=Release /p:Platform=x64 /v:minimal /nologo" +Run-Command "msbuild pugixml_vs2017.vcxproj /t:Rebuild /p:Configuration=Debug /p:Platform=x86 /v:minimal /nologo" +Run-Command "msbuild pugixml_vs2017.vcxproj /t:Rebuild /p:Configuration=Release /p:Platform=x86 /v:minimal /nologo" +Run-Command "msbuild pugixml_vs2017.vcxproj /t:Rebuild /p:Configuration=Debug /p:Platform=x64 /v:minimal /nologo" +Run-Command "msbuild pugixml_vs2017.vcxproj /t:Rebuild /p:Configuration=Release /p:Platform=x64 /v:minimal /nologo" Write-NuGetPackage nuget.autopkg -If(!$?){exit 1} Pop-Location diff --git a/tests/autotest-appveyor.ps1 b/tests/autotest-appveyor.ps1 index 0b8717c..e3805c7 100644 --- a/tests/autotest-appveyor.ps1 +++ b/tests/autotest-appveyor.ps1 @@ -12,13 +12,22 @@ function Invoke-CmdScript($scriptName) $sources = @("src/pugixml.cpp") + (Get-ChildItem -Path "tests/*.cpp" -Exclude "fuzz_*.cpp") $failed = $FALSE -foreach ($vs in 9,10,11,12,14) +foreach ($vs in $args) { foreach ($arch in "x86","x64") { Write-Output "# Setting up VS$vs $arch" - Invoke-CmdScript "C:\Program Files (x86)\Microsoft Visual Studio $vs.0\VC\vcvarsall.bat" $arch + if ($vs -eq 15) + { + $vsdevcmdarch = if ($arch -eq "x64") { "amd64" } else { "x86" } + Invoke-CmdScript "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat" "-arch=$vsdevcmdarch" + } + else + { + Invoke-CmdScript "C:\Program Files (x86)\Microsoft Visual Studio $vs.0\VC\vcvarsall.bat" $arch + } + if (! $?) { throw "Error setting up VS$vs $arch" } foreach ($defines in "standard", "PUGIXML_WCHAR_MODE", "PUGIXML_COMPACT") |