1platform: x64
2
3environment:
4  matrix:
5    - compiler: msvc
6      generator: Visual Studio 14
7      platform: Win32
8      configuration: Debug
9      triplet: x86-windows
10    - compiler: msvc
11      generator: Visual Studio 14 Win64
12      platform: x64
13      configuration: Debug
14      triplet: x64-windows
15
16    - compiler: msvc
17      generator: Visual Studio 14 ARM
18      platform: ARM
19      configuration: Debug
20
21
22    - compiler: msys2
23      MINGW_PREFIX: /mingw64
24      MINGW_CHOST: x86_64-w64-mingw32
25      MSYS2_ARCH: x86_64
26    - compiler: msys2
27      MINGW_PREFIX: /mingw32
28      MINGW_CHOST: i686-w64-mingw32
29      MSYS2_ARCH: i686
30
31
32install:
33# - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "pacman --noconfirm --force -Sy && pacman --noconfirm --force -S pacman-mirrors && pacman --force -Syu --noconfirm"'
34  - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "pacman --noconfirm --force -S --needed mingw-w64-$MSYS2_ARCH-{gcc,freetype,cairo,icu,gettext,gobject-introspection,gcc,gcc-libs,glib2,graphite2,pkg-config,python2}"'
35  - C:\msys64\usr\bin\bash -lc "pacman --noconfirm -S mingw-w64-x86_64-ragel"
36  - set PATH=%PATH%;C:\msys64\mingw64\bin # msys2 is added just for having "ragel" on PATH
37  - 'if "%compiler%"=="cygwin" %CYGWIN_PREFIX%\setup-%CYGWIN_ARCH%.exe -g -q -P cygwin-devel,libfreetype-devel,libcairo-devel,libicu-devel,gcc,gcc-g++,gobject-introspection,libglib2.0-devel,libgraphite2-devel,pkg-config,python2'
38  - 'if "%compiler%"=="msvc" if not "%platform%"=="ARM" vcpkg install glib:%triplet% freetype:%triplet% cairo:%triplet%'
39
40build_script:
41  - 'if "%compiler%"=="msvc" md build'
42  - 'if "%compiler%"=="msvc" cd build'
43  - 'if "%compiler%"=="msvc" set PATH=%PATH%;C:\Program Files (x86)\MSBuild\14.0\Bin'
44
45  - 'if "%compiler%"=="msvc" if "%platform%"=="ARM" cmake -DHB_HAVE_UNISCRIBE=ON -DHB_HAVE_DIRECTWRITE=ON -G "%generator%" ../'
46  - 'if "%compiler%"=="msvc" if not "%platform%"=="ARM" cmake -DHB_HAVE_UNISCRIBE=ON -DHB_HAVE_DIRECTWRITE=ON -DHB_HAVE_GLIB=ON -DHB_HAVE_FREETYPE=ON -DHB_BUILD_UTILS=ON -G "%generator%" -DCMAKE_TOOLCHAIN_FILE=c:/tools/vcpkg/scripts/buildsystems/vcpkg.cmake ../'
47
48  - 'if "%compiler%"=="msvc" msbuild harfbuzz.sln /p:Configuration=%configuration% /p:Platform=%platform%'
49  - 'if "%compiler%"=="msvc" if not "%platform%"=="ARM" ctest --output-on-failure -C %configuration%'
50
51  - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "curl https://raw.githubusercontent.com/mirror/mingw-w64/023eb04c396d4e8d8fcf604cfababc53dae13398/mingw-w64-headers/include/dwrite_1.h > %MINGW_PREFIX%/%MINGW_CHOST%/include/dwrite_1.h"'
52  - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "cd $APPVEYOR_BUILD_FOLDER; PATH=$PATH:/mingw64/bin:/mingw32/bin; ./autogen.sh --with-uniscribe --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2 --with-directwrite --build=%MINGW_CHOST% --host=%MINGW_CHOST% --prefix=%MINGW_PREFIX%; make -j3 check || .ci/fail.sh"'
53
54cache:
55  - c:\tools\vcpkg\installed\
56  - '%CYGWIN_PREFIX%\var\cache\setup'
57
58notifications:
59  - provider: Email
60    to:
61      - harfbuzz-bots-chatter@googlegroups.com
62    on_build_success: false
63    on_build_failure: true
64    on_build_status_changed: true
65
66# Do not build feature branch with open Pull Requests
67skip_branch_with_pr: true
68
69# disable automatic tests
70test: off
71