Reorder and slightly change AppVeyor build tasks.
[cppcodec.git] / appveyor.yml
1 version: '{build}'
2
3 branches:
4   only:
5   - master
6
7 clone_depth: 1
8
9 # Build configurations, for MSBuild as well as ctest.
10 configuration:
11   - Release
12   - MinSizeRel
13   - Debug
14
15 os:
16   - Visual Studio 2015
17   - Visual Studio 2017
18
19 # Win32 and x64 are CMake-compatible solution platform names.
20 # This allows us to pass %PLATFORM% to cmake -A.
21 platform:
22   - x64
23   - Win32
24
25 matrix:
26   exclude:
27   - os: Visual Studio 2015
28     platform: x64
29     configuration: MinSizeRel
30   - os: Visual Studio 2015
31     platform: Win32
32     configuration: Debug
33   - os: Visual Studio 2017
34     platform: Win32
35     configuration: Release
36   - os: Visual Studio 2017
37     platform: Win32
38     configuration: MinSizeRel
39   - os: Visual Studio 2017
40     platform: x64
41     configuration: Debug
42
43 install:
44   - set SRC_DIR=%CD%
45   - cmake --version
46   - git submodule sync --recursive
47   - git submodule update --init --recursive
48   - md build
49   - cd build
50   - set BUILD_DIR=%CD%
51
52 before_build:
53   - cd %BUILD_DIR%
54   - cmake -A%PLATFORM% %SRC_DIR%
55
56 # build with MSBuild
57 build:
58   project: build/cppcodec.sln
59   parallel: true
60   verbosity: normal
61
62 test_script:
63   - cd %BUILD_DIR%
64   - set CTEST_OUTPUT_ON_FAILURE=1
65   - ctest -C %CONFIGURATION% -VV
66   - test\%CONFIGURATION%\benchmark_cppcodec.exe