version: "{build}"

os: Visual Studio 2017

shallow_clone: true


cache:
  - win_flex_bison


environment:
  matrix:
    # Visual Studio 2017 64bit
    - visualcpp: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat

    # Visual Studio 2017 32bit
    - visualcpp: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat
      machine: x86

    # Visual Studio 2015 64bit
    - visualcpp: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat
      machine: amd64

    # Visual Studio 2015 32bit
    - visualcpp: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat
      machine: x86

    # Visual Studio 2013 64bit
    - visualcpp: C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat
      machine: amd64


init:
  - call "%visualcpp%" %machine%
  # For using Rubyinstaller's Ruby 2.4 64bit
  - set PATH=C:\Ruby24-x64\bin;%PATH%
  - ruby --version


install:
  - if not exist win_flex_bison (
      appveyor DownloadFile "https://github.com/lexxmark/winflexbison/releases/download/v.2.5.10/win_flex_bison-2.5.10.zip" &
      7z x -y -owin_flex_bison win_flex_bison-2.5.10.zip
    )

build_script:
  - set YACC=.\win_flex_bison\win_bison.exe
  - set MRUBY_CONFIG=appveyor_config.rb
  - rake -E $stdout.sync=true test
