1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87
|
version: 2.43.{build}
#version: 2.42.1
clone_depth: 25
image: Visual Studio 2015
environment:
CTEST_OUTPUT_ON_FAILURE: TRUE
graphviz_install_dir: C:\Graphviz
matrix:
- build_system: cmake
generator: "Visual Studio 14 2015"
- build_system: cmake
generator: "Visual Studio 14 2015 Win64"
- build_system: msbuild
configuration:
- Debug
- Release
install:
# Retrieve submodules, dependencies are stored there.
- git submodule update --init
before_build:
# This file is deleted to reduce noise in the build output. Otherwise several
# "target does not exist and will be ignored" messages are printed.
- del "C:\Program Files (x86)\MSBuild\14.0\Microsoft.Common.targets\ImportAfter\Xamarin.Common.targets"
build_script:
- cd %APPVEYOR_BUILD_FOLDER%
- set PATH=%PATH%;%APPVEYOR_BUILD_FOLDER%\windows\dependencies\graphviz-build-utilities
# Build
- ps: >-
if($env:build_system -eq "cmake") {
mkdir build;
cd build;
cmake -G "$env:generator" ..;
cmake --build . --config $env:configuration;
}
elseif($env:build_system -eq "msbuild") {
msbuild /p:Configuration=$env:configuration
}
# Package
- ps: >-
if($env:configuration -eq "Release") {
if($env:build_system -eq "cmake") {
cpack
}
elseif($env:build_system -eq "msbuild") {
rm Release\Graphviz\bin\*.lastcodeanalysissucceeded;
rm Release\Graphviz\bin\*.iobj;
rm Release\Graphviz\bin\*.ipdb;
rm Release\Graphviz\bin\*.ilk;
}
}
# Test
- ps: >-
if($env:build_system -eq "cmake" -and $env:configuration -eq "Release") {
mv Graphviz-*.exe Graphviz-install.exe;
# Install using installer and add bin directory to path.
# Piping the output of the installer to Out-Null, makes the script wait
# for the .exe to exit, instead continuing to the next command (which
# will then fail because the install hasn't finished)
./Graphviz-install.exe /S /D=$env:graphviz_install_dir | Out-Null;
$env:Path += ";" + $env:graphviz_install_dir + "\bin"
dot -c;
ctest -C $env:configuration;
}
elseif($env:build_system -eq "msbuild") {
# Append build destination to the PATH, configure dot and execute regression tests
$env:Path += ";" + $env:APPVEYOR_BUILD_FOLDER + "\" + $env:configuration + "\Graphviz\bin";
dot -c;
cd tests\regression_tests;
./regression_tests.bat;
}
artifacts:
- path: Release
name: graphviz-windows
- path: Debug
name: graphviz-windows-debug
- path: build/Graphviz-install.exe
name: Graphviz-Windows-install
|