#---------------------------------#
#      general configuration      #
#---------------------------------#

# version format
version: 1.0.{build}-{branch}

# branches to build
branches:
  except:
    - gh-pages
    - wip/v2
    - master

# Do not build on tags (GitHub and BitBucket)
skip_tags: false

#---------------------------------#
#    environment configuration    #
#---------------------------------#

# Build worker image
image:
  - Ubuntu2004
  - macos
  - Visual Studio 2019

# scripts that are called at very beginning, before repo cloning
init:
  - git config --global core.autocrlf input

#---------------------------------#
#       build configuration       #
#---------------------------------#

# build platform, i.e. x86, x64, Any CPU. This setting is optional.
platform:
  - x64

# build Configuration, i.e. Debug, Release, etc.
configuration:
  - Release
  - Debug

environment:
  matrix:
    - useqt6: False
    - useqt6: True

install:
  - sh: if [ "`uname -s`" = "Darwin" ]; then brew install ninja; else sudo apt-get -y update; sudo apt-get -y install mesa-common-dev libglu1-mesa-dev libxkbcommon-dev libxkbcommon-x11-dev; fi

before_build:
  - cmd: call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"
  - cmd: set PATH=C:\Qt\6.2\msvc2019_64\bin;C:\Qt\5.15\msvc2019_64\bin;%PATH%
  - sh: if [ "`uname -s`" = "Darwin" ]; then export PATH=$HOME/Qt/6.2/macos/bin:$HOME/Qt/5.15/clang_64/bin:$PATH; else export PATH=$HOME/Qt/6.2/gcc_64/bin:$HOME/Qt/5.15/gcc_64/bin:$PATH; fi

build_script:
  - mkdir build
  - cd build
  - cmd: cmake -G Ninja -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DKDDockWidgets_QT6=%useqt6% -DKDDockWidgets_TESTS=True -DKDDockWidgets_EXAMPLES=True -DKDDockWidgets_DEVELOPER_MODE=True ..
  - sh: cmake -G Ninja -DCMAKE_BUILD_TYPE=$CONFIGURATION -DKDDockWidgets_QT6=$useqt6 -DKDDockWidgets_TESTS=True -DKDDockWidgets_EXAMPLES=True -DKDDockWidgets_DEVELOPER_MODE=True ..
  - cmake --build .
  - cmd: cmake --build . --target install
  - sh: sudo cmake --build . --target install
  - cmd: set PATH=.\bin;%PATH%
  - ctest --test-dir .

# to disable automatic builds
#build: off

#---------------------------------#
#       tests configuration       #
#---------------------------------#

# to disable automatic tests
test: off


#---------------------------------#
#     deployment configuration    #
#---------------------------------#

deploy: off

#---------------------------------#
#         notifications           #
#---------------------------------#
notifications:
  # Email
  - provider: Email
    to:
      - allen.winter@kdab.com
      - sergio.martins@kdab.com
    on_build_success: false
    on_build_failure: true
