version: '{build}'
branches:
  only:
  - master
environment:
  GITTEST_INVASIVE_FS_STRUCTURE: 1
  GITTEST_INVASIVE_FS_SIZE: 1

  matrix:
  - GENERATOR: "Visual Studio 11"
    ARCH: 32
  - GENERATOR: "Visual Studio 11 Win64"
    ARCH: 64
  - GENERATOR: "MSYS Makefiles"
    ARCH: 32
  - GENERATOR: "MSYS Makefiles"
    ARCH: i686 # this is for 32-bit MinGW-w64
  - GENERATOR: "MSYS Makefiles"
    ARCH: 64
matrix:
  allow_failures:
    - GENERATOR: "MSYS Makefiles"
      ARCH: 32
cache:
- i686-4.9.2-release-win32-sjlj-rt_v3-rev1.7z
- x86_64-4.9.2-release-win32-seh-rt_v3-rev1.7z
build_script:
- ps: |
    if ($env:APPVEYOR_PULL_REQUEST_NUMBER -and $env:APPVEYOR_BUILD_NUMBER -ne ((Invoke-RestMethod `
      https://ci.appveyor.com/api/projects/$env:APPVEYOR_ACCOUNT_NAME/$env:APPVEYOR_PROJECT_SLUG/history?recordsNumber=50).builds | `
      Where-Object pullRequestId -eq $env:APPVEYOR_PULL_REQUEST_NUMBER)[0].buildNumber) { `
      throw "There are newer queued builds for this pull request, failing early." }
    mkdir build
    cd build
    if ($env:GENERATOR -ne "MSYS Makefiles") {
      cmake -D ENABLE_TRACE=ON -D BUILD_CLAR=ON .. -G"$env:GENERATOR"
      cmake --build . --config RelWithDebInfo
    }
- cmd: |
    if "%GENERATOR%"=="MSYS Makefiles" (C:\MinGW\msys\1.0\bin\sh --login /c/projects/libgit2/script/appveyor-mingw.sh)
test_script:
- ps: ctest -V .