platform: x64

environment:
  matrix:
    - compiler: msvc
      generator: Visual Studio 14
      vcvarsallpath: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat
      arch: amd64

    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
      compiler: msvc
      generator: Visual Studio 15
      vcvarsallpath: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat
      arch: x86

    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
      compiler: msvc
      generator: Visual Studio 16
      vcvarsallpath: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat
      arch: amd64

    - compiler: msys2
      MINGW_PREFIX: /mingw64
      MINGW_CHOST: x86_64-w64-mingw32
      MSYS2_ARCH: x86_64
      MSYSTEM: MINGW64

    - compiler: msys2
      MINGW_PREFIX: /mingw32
      MINGW_CHOST: i686-w64-mingw32
      MSYS2_ARCH: i686
      MSYSTEM: MINGW32


install:
  - '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,python3,python3-pip,ragel,ninja}"'
  - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "pip install fonttools meson"'

build_script:
  - set "PYTHON_ROOT=C:\python37-x64"
  - set "PATH=%PYTHON_ROOT%;%PYTHON_ROOT%\Scripts;%PATH%"
  - pip install --upgrade meson
  - pip install fonttools
  - 'if "%compiler%"=="msvc" "%vcvarsallpath%" %arch% && meson setup build --buildtype=release -Dglib=enabled -Dfreetype=enabled -Dgdi=enabled -Ddirectwrite=enabled && meson test --print-errorlogs --suite=harfbuzz -Cbuild'

  - '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"'
  - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "cd $APPVEYOR_BUILD_FOLDER; meson build --wrap-mode=nofallback -Dfreetype=enabled -Dglib=enabled -Dcairo=enabled -Dgobject=enabled -Dgdi=enabled -Ddirectwrite=enabled -Dgraphite=enabled && meson test -Cbuild --print-errorlogs"'

cache:
  - c:\tools\vcpkg\installed\

notifications:
  - provider: Email
    to:
      - harfbuzz-bots-chatter@googlegroups.com
    on_build_success: false
    on_build_failure: true
    on_build_status_changed: true

# Do not build feature branch with open Pull Requests
skip_branch_with_pr: true

# disable automatic tests
test: off