language: minimal
env:
  global:
    - DEPS=$HOME/deps
    - PATH=$DEPS/bin:$PATH
jobs:
  include:
    - env: ENV=vim80-bionic
      dist: bionic
      stage: vim8
    - env: ENV=vim-nightly
      dist: trusty
      stage: vim8
    - env: ENV=neovim-stable
      dist: bionic
      addons: {apt: {packages: [neovim], sources: [{sourceline: 'ppa:neovim-ppa/stable'}]}}
      stage: neovim
    - env: ENV=neovim-nightly
      dist: bionic
      addons: {apt: {packages: [neovim], sources: [{sourceline: 'ppa:neovim-ppa/unstable'}]}}
      stage: neovim
    - env: ENV=vim74-trusty-python
      dist: trusty
      stage: vim74
    - env: ENV=vim74-xenial-python3
      dist: xenial
      stage: vim74
    - env: ENV=vim74-trusty-ruby
      dist: trusty
      addons: {apt: {packages: [vim-nox]}}
      stage: vim74
    - env: ENV=vim74-xenial-ruby
      dist: xenial
      addons: {apt: {packages: [vim-nox]}}
      stage: vim74
    - env: ENV=osx-highsierra
      os: osx
      osx_image: xcode9.4
      stage: vim8
install: |
  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

  C_OPTS="--prefix=$DEPS --with-features=huge --disable-gui "
  case "$ENV" in
    vim-*)
      ;;
    neovim-*)
      mkdir -p ${DEPS}/bin
      ln -s /usr/bin/nvim ${DEPS}/bin/vim
      export VADER_OUTPUT_FILE=/dev/stderr
      return
      ;;
    vim74-* | vim80-*)
      mkdir -p ${DEPS}/bin
      ln -s /usr/bin/vim.nox ${DEPS}/bin/vim
      return
      ;;
    *)
      return
      ;;
  esac

  git clone --depth 1 https://github.com/vim/vim
  cd vim
  export PATH=/usr/bin:$PATH
  ./configure $C_OPTS
  make
  make install
  cd -
script: test/run !