#***************************************************************************
#                                  _   _ ____  _
#  Project                     ___| | | |  _ \| |
#                             / __| | | | |_) | |
#                            | (__| |_| |  _ <| |___
#                             \___|\___/|_| \_\_____|
#
# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
#
# This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution. The terms
# are also available at https://curl.se/docs/copyright.html.
#
# You may opt to use, copy, modify, merge, publish, distribute and/or sell
# copies of the Software, and permit persons to whom the Software is
# furnished to do so, under the terms of the COPYING file.
#
# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
# KIND, either express or implied.
#
# SPDX-License-Identifier: curl
#
###########################################################################

# https://ci.appveyor.com/project/curlorg/curl/history
# AppVeyor configuration:
#   https://www.appveyor.com/docs/appveyor-yml/
# AppVeyor worker images:
#   https://www.appveyor.com/docs/windows-images-software/

version: 7.50.0.{build}

environment:
  UNITY: 'ON'
  OPENSSL: 'OFF'
  DEBUG: 'ON'
  SHARED: 'OFF'
  matrix:
    # generated CMake-based Visual Studio Release builds
    - job_name: 'CMake, VS2008, Release, x86, Schannel, Build-only'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
      BUILD_SYSTEM: CMake
      PRJ_GEN: 'Visual Studio 9 2008'
      PRJ_CFG: Release
      SCHANNEL: 'ON'
      ENABLE_UNICODE: 'OFF'
      HTTP_ONLY: 'OFF'
      SHARED: 'ON'
      TESTING: 'OFF'
      DISABLED_TESTS: ''
    - job_name: 'CMake, VS2008, Debug, x86, Schannel, Build-only'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
      BUILD_SYSTEM: CMake
      PRJ_GEN: 'Visual Studio 9 2008'
      PRJ_CFG: Debug
      SCHANNEL: 'ON'
      ENABLE_UNICODE: 'OFF'
      HTTP_ONLY: 'OFF'
      SHARED: 'ON'
      TESTING: 'OFF'
      DISABLED_TESTS: ''
    - job_name: 'CMake, VS2022, Release, x64, OpenSSL 3.2, WebSockets, Build-only'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
      BUILD_SYSTEM: CMake
      PRJ_GEN: 'Visual Studio 17 2022'
      TARGET: '-A x64'
      PRJ_CFG: Release
      OPENSSL: 'ON'
      SCHANNEL: 'OFF'
      ENABLE_UNICODE: 'OFF'
      HTTP_ONLY: 'OFF'
      SHARED: 'ON'
      TESTING: 'OFF'
      DISABLED_TESTS: ''
      WEBSOCKETS: 'ON'
    - job_name: 'CMake, VS2022, Release, arm64, Schannel, Static, Build-only'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
      BUILD_SYSTEM: CMake
      PRJ_GEN: 'Visual Studio 17 2022'
      TARGET: '-A ARM64'
      PRJ_CFG: Release
      SCHANNEL: 'ON'
      ENABLE_UNICODE: 'OFF'
      HTTP_ONLY: 'OFF'
      TESTING: 'OFF'
      DISABLED_TESTS: ''
    # generated CMake-based Visual Studio Debug builds
    - job_name: 'CMake, VS2010, Debug, x64, Schannel, Static, Build-only'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
      BUILD_SYSTEM: CMake
      PRJ_GEN: 'Visual Studio 10 2010 Win64'
      PRJ_CFG: Debug
      SCHANNEL: 'ON'
      ENABLE_UNICODE: 'OFF'
      HTTP_ONLY: 'OFF'
      TESTING: 'OFF'
      DISABLED_TESTS: ''
    - job_name: 'CMake, VS2022, Debug, x64, Schannel, Static, Unicode'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
      BUILD_SYSTEM: CMake
      PRJ_GEN: 'Visual Studio 17 2022'
      TARGET: '-A x64'
      PRJ_CFG: Debug
      SCHANNEL: 'ON'
      ENABLE_UNICODE: 'ON'
      HTTP_ONLY: 'OFF'
      TESTING: 'ON'
      DISABLED_TESTS: '!1139 !1501 !1177 !1477'
    - job_name: 'CMake, VS2022, Debug, x64, no SSL, Static'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
      BUILD_SYSTEM: CMake
      PRJ_GEN: 'Visual Studio 17 2022'
      TARGET: '-A x64'
      PRJ_CFG: Debug
      SCHANNEL: 'OFF'
      ENABLE_UNICODE: 'OFF'
      HTTP_ONLY: 'OFF'
      TESTING: 'ON'
      DISABLED_TESTS: '!1139 !1501 !1177 !1477'
    - job_name: 'CMake, VS2022, Debug, x64, no SSL, Static, HTTP only'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022'
      BUILD_SYSTEM: CMake
      PRJ_GEN: 'Visual Studio 17 2022'
      TARGET: '-A x64'
      PRJ_CFG: Debug
      SCHANNEL: 'OFF'
      ENABLE_UNICODE: 'OFF'
      HTTP_ONLY: 'ON'
      TESTING: 'ON'
      DISABLED_TESTS: '!1139 !1501 !1177 !1477'

    # generated CMake-based MSYS Makefiles builds (mingw cross-compiling)

    - job_name: 'CMake, mingw-w64, gcc 7, Debug, x64, Schannel, Static, Unicode'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
      BUILD_SYSTEM: CMake
      PRJ_GEN: 'MSYS Makefiles'
      PRJ_CFG: Debug
      SCHANNEL: 'ON'
      ENABLE_UNICODE: 'ON'
      HTTP_ONLY: 'OFF'
      TESTING: 'ON'
      # test 286 disabled due to https://github.com/curl/curl/issues/12040
      DISABLED_TESTS: '~286 !1086 !1139 !1451 !1501 !1177 !1477'
      ADD_PATH: 'C:/mingw-w64/x86_64-7.2.0-posix-seh-rt_v5-rev1/mingw64/bin'
      MSYS2_ARG_CONV_EXCL: '/*'
      BUILD_OPT: -k
    - job_name: 'CMake, mingw-w64, gcc 9, Debug, x64, Schannel, Static'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
      BUILD_SYSTEM: CMake
      PRJ_GEN: 'MSYS Makefiles'
      PRJ_CFG: Debug
      SCHANNEL: 'ON'
      ENABLE_UNICODE: 'OFF'
      HTTP_ONLY: 'OFF'
      TESTING: 'ON'
      # test 286 disabled due to https://github.com/curl/curl/issues/12040
      DISABLED_TESTS: '~286 !1086 !1139 !1451 !1501 !1177 !1477'
      ADD_PATH: 'C:/msys64/mingw64/bin'
      MSYS2_ARG_CONV_EXCL: '/*'
      BUILD_OPT: -k
    - job_name: 'CMake, mingw-w64, gcc 6, Debug, x86, Schannel, Static, no-unity'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
      BUILD_SYSTEM: CMake
      PRJ_GEN: 'MSYS Makefiles'
      PRJ_CFG: Debug
      SCHANNEL: 'ON'
      ENABLE_UNICODE: 'OFF'
      HTTP_ONLY: 'OFF'
      TESTING: 'OFF'
      DISABLED_TESTS: ''
      ADD_PATH: 'C:/mingw-w64/i686-6.3.0-posix-dwarf-rt_v5-rev1/mingw32/bin'
      MSYS2_ARG_CONV_EXCL: '/*'
      BUILD_OPT: -k
      UNITY: 'OFF'

    # winbuild-based builds

    - job_name: 'winbuild, VS2015, Debug, x64, OpenSSL 1.1.1, Build-only'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
      BUILD_SYSTEM: winbuild_vs2015
      DEBUG: 'yes'
      PATHPART: debug
      TESTING: 'OFF'
      ENABLE_UNICODE: 'no'
    - job_name: 'winbuild, VS2015, Release, x64, OpenSSL 1.1.1, Build-only'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
      BUILD_SYSTEM: winbuild_vs2015
      DEBUG: 'no'
      PATHPART: release
      TESTING: 'OFF'
      ENABLE_UNICODE: 'no'
    - job_name: 'winbuild, VS2017, Debug, x64, OpenSSL 1.1.1, Build-only'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
      BUILD_SYSTEM: winbuild_vs2017
      DEBUG: 'yes'
      PATHPART: debug
      TESTING: 'OFF'
      ENABLE_UNICODE: 'no'
    - job_name: 'winbuild, VS2017, Release, x64, OpenSSL 1.1.1, Build-only'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
      BUILD_SYSTEM: winbuild_vs2017
      DEBUG: 'no'
      PATHPART: release
      TESTING: 'OFF'
      ENABLE_UNICODE: 'no'
    - job_name: 'winbuild, VS2015, Debug, x64, OpenSSL 1.1.1, Unicode, Build-only'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
      BUILD_SYSTEM: winbuild_vs2015
      DEBUG: 'yes'
      PATHPART: debug
      TESTING: 'OFF'
      ENABLE_UNICODE: 'yes'
    - job_name: 'winbuild, VS2015, Release, x64, OpenSSL 1.1.1, Unicode, Build-only'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
      BUILD_SYSTEM: winbuild_vs2015
      DEBUG: 'no'
      PATHPART: release
      TESTING: 'OFF'
      ENABLE_UNICODE: 'yes'
    - job_name: 'winbuild, VS2017, Debug, x64, OpenSSL 1.1.1, Unicode, Build-only'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
      BUILD_SYSTEM: winbuild_vs2017
      DEBUG: 'yes'
      PATHPART: debug
      TESTING: 'OFF'
      ENABLE_UNICODE: 'yes'
    - job_name: 'winbuild, VS2017, Release, x64, OpenSSL 1.1.1, Unicode, Build-only'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017'
      BUILD_SYSTEM: winbuild_vs2017
      DEBUG: 'no'
      PATHPART: release
      TESTING: 'OFF'
      ENABLE_UNICODE: 'yes'

    # generated VisualStudioSolution-based builds

    - job_name: 'VisualStudioSolution, VS2013, Debug, x86, Schannel, Build-only'
      APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015'
      BUILD_SYSTEM: VisualStudioSolution
      PRJ_CFG: 'DLL Debug - DLL Windows SSPI - DLL WinIDN'
      TESTING: 'OFF'
      VC_VERSION: VC12

install:
  - ps: |
      if($env:ADD_SHELL -ne $null) {
        $env:PATH = "$env:ADD_SHELL;$env:PATH"
      }
      else {
        $env:PATH = "C:/msys64/usr/bin;$env:PATH"
      }
      if($env:ADD_PATH -ne $null) {
        $env:PATH = "$env:ADD_PATH;$env:PATH"
      }

build_script:
  - cmd: sh -c ./appveyor.sh

clone_depth: 10

# select branches to avoid testing feature branches twice (as branch and as pull request)
branches:
  only:
    - master
    - /\/ci$/

skip_commits:
  files:
    - '.azure-pipelines.yml'
    - '.circleci/*'
    - '.cirrus.yml'
    - '.github/**/*'
    - 'packages/**/*'
    - 'plan9/**/*'

artifacts:
  - path: '**/curl.exe'
    name: curl
  - path: '**/*curl*.dll'
    name: libcurl dll
