1init:
2  - echo %PYTHON%
3
4environment:
5  PYTHON: "C:/Python37-x64"
6
7  matrix:
8    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
9      CMAKE_GENERATOR: Ninja
10      INTEGRATION_TESTS: 1
11      VS_COMPILER_VERSION: 16
12      VCVARS: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat
13      ARCHITECTURE: x86_64
14      UNIT_TESTS: 1
15      WEBREADY: False
16      WARNINGS_AS_ERRORS: ON
17    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
18      CMAKE_GENERATOR: Ninja
19      INTEGRATION_TESTS: 1
20      VS_COMPILER_VERSION: 15
21      VCVARS: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat
22      ARCHITECTURE: x86_64
23      UNIT_TESTS: 1
24      WEBREADY: False
25      WARNINGS_AS_ERRORS: ON
26    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
27      CMAKE_GENERATOR: Ninja
28      INTEGRATION_TESTS: 1
29      VS_COMPILER_VERSION: 14
30      VCVARS: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat
31      ARCHITECTURE: x86_64
32      UNIT_TESTS: 1
33      WEBREADY: False
34      WARNINGS_AS_ERRORS: ON
35    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013
36      CMAKE_GENERATOR: Ninja
37      INTEGRATION_TESTS: 0
38      VS_COMPILER_VERSION: 12
39      VCVARS: C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat
40      ARCHITECTURE: x86_64
41      UNIT_TESTS: 0
42      WEBREADY: False
43      WARNINGS_AS_ERRORS: OFF
44
45shallow_clone: true
46
47install:
48    - set PATH=%PATH%;%PYTHON%/Scripts/
49    - echo %APPVEYOR_BUILD_FOLDER%
50    - mkdir C:\projects\deps
51    - cd C:\projects\deps
52    - appveyor DownloadFile https://github.com/ninja-build/ninja/releases/download/v1.10.0/ninja-win.zip -FileName ninja.zip
53    - 7z x ninja.zip -oC:\projects\deps\ninja > nul
54    - set PATH=C:\projects\deps\ninja;%PATH%
55    - ninja --version
56    - python -m pip install --upgrade pip
57    - pip3.exe install conan==1.30.2
58    - pip3.exe install lxml
59    - cd %APPVEYOR_BUILD_FOLDER%
60
61before_build:
62    - cmd: conan config install https://github.com/conan-io/conanclientcert.git
63    - cmd: conan remote list
64    - cmd: conan config set storage.path=c:\Users\appveyor\conanCache
65    - cmd: conan profile new --detect default
66    - cmd: conan profile update settings.compiler.version=%VS_COMPILER_VERSION% default
67    - cmd: conan profile update settings.arch=%ARCHITECTURE% default
68    - cmd: conan profile update settings.arch_build=%ARCHITECTURE% default
69    - cmd: cat c:\Users\appveyor\.conan\conan.conf
70
71build_script:
72    - cmd: md build
73    - cmd: cd build
74    - cmd: call "%VCVARS%" x86_amd64
75    - cmd: conan --version
76    - cmd: conan install .. -o webready=%WEBREADY% --build missing
77    - cmd: echo %CMAKE_GENERATOR%
78    - cmd: cmake -G "%CMAKE_GENERATOR%" -DEXIV2_TEAM_WARNINGS_AS_ERRORS=%WARNINGS_AS_ERRORS% -DCMAKE_BUILD_TYPE=Release -DEXIV2_ENABLE_NLS=OFF -DEXIV2_ENABLE_PNG=ON -DEXIV2_ENABLE_BMFF=ON -DEXIV2_ENABLE_WEBREADY=%WEBREADY% -DEXIV2_BUILD_UNIT_TESTS=%UNIT_TESTS% -DCMAKE_INSTALL_PREFIX=install ..
79    - cmd: cmake --build . --config Release
80    - cmd: cmake --build . --config Release --target install
81    - cmd: cd bin
82    - cmd: if %UNIT_TESTS% == 1 unit_tests.exe
83    - cmd: cd ../../tests/
84    - cmd: if %INTEGRATION_TESTS% == 1 %PYTHON%/python.exe runner.py -v
85    - cmd: cd ../build/bin
86    - cmd: exiv2 --version --verbose
87