trigger:
- master
- Release_*
- dev/*

jobs:
- job: Ubuntu_x64_minimallib_build
  timeoutInMinutes: 120
  pool:
    vmImage: ubuntu-latest
  steps:
  - task: DockerCompose@1
    displayName: 'Build MinimalLib JS bindings'
    inputs:
      projectName: 'rdkit-minimallib-ci'
      action: 'Build services'
      dockerComposeFile: './Code/MinimalLib/docker/docker_compose_build_minimallib.yml'
      dockerComposeFileArgs: |
        GET_SRC=copy_from_local
        COMPOSE_BAKE=false
- job: Ubuntu_x64
  timeoutInMinutes: 120
  pool:
    vmImage: ubuntu-22.04
  variables:
    python: python=3.9
    boost_version: 1.82.0
    compiler: gxx_linux-64
    number_of_cores: nproc
    python_name: python39
    cc: gcc-11
    cxx: g++-11
  steps:
  - template: .azure-pipelines/linux_build.yml
- job: Ubuntu_x64_py312
  timeoutInMinutes: 120
  pool:
    vmImage: ubuntu-latest
  variables:
    python: python=3.12
    boost_version: 1.89.0
    compiler: gxx_linux-64
    cc: gcc-13
    cxx: g++-13
    number_of_cores: nproc
    python_name: python312
  steps:
  - template: .azure-pipelines/linux_build_py312.yml
- job: macOS_x64
  timeoutInMinutes: 120
  pool:
    vmImage: macos-14
  variables:
    compiler: clangxx_osx-64=18.1
    compiler_version: 16
    boost_version: 1.84
    number_of_cores: sysctl -n hw.ncpu
    target_platform: 14
    python: python=3.11
  steps:
  - template: .azure-pipelines/mac_build.yml
- job: macOS_x64_java
  timeoutInMinutes: 90
  pool:
    vmImage: macos-14
  variables:
    compiler: clangxx_osx-64=18.1
    compiler_version: 16
    boost_version: 1.84
    number_of_cores: sysctl -n hw.ncpu
    target_platform: 14
  steps:
  - template: .azure-pipelines/mac_build_java.yml
- job: Windows_VS2022_x64
  timeoutInMinutes: 150
  pool:
    vmImage: windows-2022
  variables:
    boost_version: 1.84.0
    number_of_cores: '%NUMBER_OF_PROCESSORS%'
    python: python=3.12
  steps:
  - template: .azure-pipelines/vs_build.yml
- job: Windows_VS2022_x64_dll
  timeoutInMinutes: 120
  pool:
    vmImage: windows-2022
  variables:
    boost_version: 1.84.0
    number_of_cores: '%NUMBER_OF_PROCESSORS%'
    python: python=3.12
  steps:
  - template: .azure-pipelines/vs_build_dll.yml
- job: Ubuntu_x64_cartridge
  timeoutInMinutes: 90
  pool:
    vmImage: ubuntu-22.04
  variables:
    boost_version: 1.82
    number_of_cores: nproc
    compiler: gxx_linux-64
    cc: gcc-11
    cxx: g++-11
  steps:
  - template: .azure-pipelines/linux_build_cartridge.yml
- job: Ubuntu_x64_limitexternaldependencies
  timeoutInMinutes: 90
  pool:
    vmImage: ubuntu-22.04
  variables:
    python: python=3.11
    boost_version: 1.82.0
    number_of_cores: nproc
    compiler: gxx_linux-64
    cc: gcc-11
    cxx: g++-11
  steps:
  - template: .azure-pipelines/linux_build_limitexternal.yml
- job: Ubuntu_x64_java
  timeoutInMinutes: 90
  pool:
    vmImage: ubuntu-22.04
  variables:
    boost_version: 1.84.0
    number_of_cores: nproc
    python_name: python39
    compiler: gxx_linux-64
    cc: gcc-10
    cxx: g++-10
  steps:
  - template: .azure-pipelines/linux_build_java.yml
- job: Windows_VS2022_x64_swig
  timeoutInMinutes: 90
  pool:
    vmImage: windows-2022
  variables:
    boost_version: 1.84.0
    number_of_cores: '%NUMBER_OF_PROCESSORS%'
    python_name: python39
  steps:
  - template: .azure-pipelines/vs_build_swig.yml

# - job: Ubuntu_18_04_x64_fuzzer
#  timeoutInMinutes: 90
#  pool:
#    vmImage: ubuntu-18.04
#  variables:
#    boost_version: 1.67.0
#    number_of_cores: nproc
#  steps:
#  - template: .azure-pipelines/linux_build_fuzzer.yml
