# Azure Pipeline build definition
#
# Use RelWithDebInfo build configuration so that linking on Windows doesn't require the
# usually absent python debug dll.
#
# Set up the Windows python version to be the x86 (32 bit) version so that we can use the
# default cmake generator which uses the 32 bit compiler
#
variables:
  Config: 'RelWithDebInfo'
  PythonVersion: '3.9'
  PythonArch: 'x64'
  CmakeConfigExtraArgs: ''
  CmakeGenerator: '-G "Unix Makefiles"'
  StaticLibs: yes

jobs:
- job: Windows
  variables:
    CmakeConfigExtraArgs: '-A x64 -DCMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake'
    CmakeGenerator: '-G "Visual Studio 17 2022"'
    VCPKG_DEFAULT_TRIPLET: x64-windows
  pool:
    vmImage: 'windows-latest'
  steps:
  - script: |
      vcpkg install jsoncpp
      vcpkg integrate install
    name: InstallExtraStuff
  - template: steps.yml
- job: Ubuntu
  variables:
    PythonVersion: '3.8'
  pool:
    vmImage: 'ubuntu-latest'
  steps:
  - script: |
      sudo apt-get update
      sudo apt-get install -y swig libpython3-dev libsasl2-dev libjsoncpp-dev
    name: InstallExtraStuff
  - template: steps.yml
- job: MacOS
  variables:
    PKG_CONFIG_PATH: '/usr/local/opt/openssl@1.1/lib/pkgconfig'
    CmakeConfigExtraArgs: '-DBUILD_RUBY=no'
  pool:
    vmImage: 'macOS-latest'
  steps:
  - script: |
      brew update
      brew install libuv swig pkgconfig openssl@1.1 jsoncpp
    name: InstallExtraStuff
  - template: steps.yml
