#
# This file was auto-generated from extras/scripts/travis_yml_generator.py, DO NOT EDIT
#
branches:
  only:
  - master
dist: xenial
language: cpp
matrix:
  fast_finish: true
  include:
  - compiler: gcc
    env: COMPILER=gcc-9 UBUNTU=19.10 TEST=ReleasePlain
    install: export OS=linux; export COMPILER='gcc-9'; export UBUNTU='19.10'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='gcc-9'; export UBUNTU='19.10'; extras/scripts/postsubmit.sh
      ReleasePlain
  - compiler: gcc
    env: COMPILER=gcc-9 UBUNTU=19.10 TEST=DebugPlain
    install: export OS=linux; export COMPILER='gcc-9'; export UBUNTU='19.10'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='gcc-9'; export UBUNTU='19.10'; extras/scripts/postsubmit.sh
      DebugPlain
  - compiler: clang
    env: COMPILER=clang-6.0 STL=libstdc++ UBUNTU=19.10 TEST=ReleasePlain
    install: export OS=linux; export COMPILER='clang-6.0'; export STL='libstdc++';
      export UBUNTU='19.10'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='clang-6.0'; export STL='libstdc++';
      export UBUNTU='19.10'; extras/scripts/postsubmit.sh ReleasePlain
  - compiler: clang
    env: COMPILER=clang-6.0 STL=libstdc++ UBUNTU=19.10 TEST=DebugAsanUbsan
    install: export OS=linux; export COMPILER='clang-6.0'; export STL='libstdc++';
      export UBUNTU='19.10'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='clang-6.0'; export STL='libstdc++';
      export UBUNTU='19.10'; extras/scripts/postsubmit.sh DebugAsanUbsan
  - compiler: clang
    env: COMPILER=clang-6.0 STL=libstdc++ UBUNTU=19.10 TEST=DebugPlain
    install: export OS=linux; export COMPILER='clang-6.0'; export STL='libstdc++';
      export UBUNTU='19.10'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='clang-6.0'; export STL='libstdc++';
      export UBUNTU='19.10'; extras/scripts/postsubmit.sh DebugPlain
  - compiler: gcc
    env: COMPILER=bazel UBUNTU=18.04
    install: export OS=linux; export COMPILER='bazel'; export UBUNTU='18.04'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='bazel'; export UBUNTU='18.04'; extras/scripts/postsubmit.sh
      DebugPlain
  - compiler: gcc
    env: COMPILER=gcc-7 UBUNTU=19.10 TEST=ReleasePlain
    install: export OS=linux; export COMPILER='gcc-7'; export UBUNTU='19.10'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='gcc-7'; export UBUNTU='19.10'; extras/scripts/postsubmit.sh
      ReleasePlain
  - compiler: gcc
    env: COMPILER=gcc-7 UBUNTU=19.10 TEST=DebugPlain
    install: export OS=linux; export COMPILER='gcc-7'; export UBUNTU='19.10'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='gcc-7'; export UBUNTU='19.10'; extras/scripts/postsubmit.sh
      DebugPlain
  - compiler: clang
    env: COMPILER=clang-10.0 STL=libstdc++ UBUNTU=19.10 TEST=ReleasePlain
    install: export OS=linux; export COMPILER='clang-10.0'; export STL='libstdc++';
      export UBUNTU='19.10'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='clang-10.0'; export STL='libstdc++';
      export UBUNTU='19.10'; extras/scripts/postsubmit.sh ReleasePlain
  - compiler: clang
    env: COMPILER=clang-10.0 STL=libstdc++ UBUNTU=19.10 TEST=DebugAsanUbsan
    install: export OS=linux; export COMPILER='clang-10.0'; export STL='libstdc++';
      export UBUNTU='19.10'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='clang-10.0'; export STL='libstdc++';
      export UBUNTU='19.10'; extras/scripts/postsubmit.sh DebugAsanUbsan
  - compiler: clang
    env: COMPILER=clang-9.0 STL=libc++ UBUNTU=19.10 TEST=ReleasePlainNoPchNoClangTidy
    install: export OS=linux; export COMPILER='clang-9.0'; export STL='libc++'; export
      UBUNTU='19.10'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='clang-9.0'; export STL='libc++'; export
      UBUNTU='19.10'; extras/scripts/postsubmit.sh ReleasePlainNoPchNoClangTidy
  - compiler: clang
    env: COMPILER=clang-9.0 STL=libc++ UBUNTU=19.10 TEST=DebugAsanUbsanNoPchNoClangTidy
    install: export OS=linux; export COMPILER='clang-9.0'; export STL='libc++'; export
      UBUNTU='19.10'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='clang-9.0'; export STL='libc++'; export
      UBUNTU='19.10'; extras/scripts/postsubmit.sh DebugAsanUbsanNoPchNoClangTidy
  - compiler: gcc
    env: COMPILER=gcc-5 UBUNTU=18.04 TEST=ReleasePlain
    install: export OS=linux; export COMPILER='gcc-5'; export UBUNTU='18.04'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='gcc-5'; export UBUNTU='18.04'; extras/scripts/postsubmit.sh
      ReleasePlain
  - compiler: gcc
    env: COMPILER=gcc-5 UBUNTU=18.04 TEST=DebugPlain
    install: export OS=linux; export COMPILER='gcc-5'; export UBUNTU='18.04'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='gcc-5'; export UBUNTU='18.04'; extras/scripts/postsubmit.sh
      DebugPlain
  - compiler: gcc
    env: COMPILER=gcc-8 UBUNTU=18.04 TEST=ReleasePlain
    install: export OS=linux; export COMPILER='gcc-8'; export UBUNTU='18.04'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='gcc-8'; export UBUNTU='18.04'; extras/scripts/postsubmit.sh
      ReleasePlain
  - compiler: gcc
    env: COMPILER=gcc-8 UBUNTU=18.04 TEST=DebugPlain
    install: export OS=linux; export COMPILER='gcc-8'; export UBUNTU='18.04'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='gcc-8'; export UBUNTU='18.04'; extras/scripts/postsubmit.sh
      DebugPlain
  - compiler: clang
    env: COMPILER=clang-3.9 STL=libstdc++ UBUNTU=18.04 TEST=ReleasePlain
    install: export OS=linux; export COMPILER='clang-3.9'; export STL='libstdc++';
      export UBUNTU='18.04'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='clang-3.9'; export STL='libstdc++';
      export UBUNTU='18.04'; extras/scripts/postsubmit.sh ReleasePlain
  - compiler: clang
    env: COMPILER=clang-3.9 STL=libstdc++ UBUNTU=18.04 TEST=DebugAsanUbsan
    install: export OS=linux; export COMPILER='clang-3.9'; export STL='libstdc++';
      export UBUNTU='18.04'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='clang-3.9'; export STL='libstdc++';
      export UBUNTU='18.04'; extras/scripts/postsubmit.sh DebugAsanUbsan
  - compiler: clang
    env: COMPILER=clang-7.0 STL=libstdc++ UBUNTU=18.04 TEST=ReleasePlainNoPch
    install: export OS=linux; export COMPILER='clang-7.0'; export STL='libstdc++';
      export UBUNTU='18.04'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='clang-7.0'; export STL='libstdc++';
      export UBUNTU='18.04'; extras/scripts/postsubmit.sh ReleasePlainNoPch
  - compiler: clang
    env: COMPILER=clang-7.0 STL=libstdc++ UBUNTU=18.04 TEST=DebugAsanUbsanNoPch
    install: export OS=linux; export COMPILER='clang-7.0'; export STL='libstdc++';
      export UBUNTU='18.04'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='clang-7.0'; export STL='libstdc++';
      export UBUNTU='18.04'; extras/scripts/postsubmit.sh DebugAsanUbsanNoPch
  - compiler: gcc
    env: COMPILER=gcc-5 UBUNTU=16.04 TEST=ReleasePlain
    install: export OS=linux; export COMPILER='gcc-5'; export UBUNTU='16.04'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='gcc-5'; export UBUNTU='16.04'; extras/scripts/postsubmit.sh
      ReleasePlain
  - compiler: gcc
    env: COMPILER=gcc-5 UBUNTU=16.04 TEST=DebugPlain
    install: export OS=linux; export COMPILER='gcc-5'; export UBUNTU='16.04'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='gcc-5'; export UBUNTU='16.04'; extras/scripts/postsubmit.sh
      DebugPlain
  - compiler: clang
    env: COMPILER=clang-3.5 STL=libstdc++ UBUNTU=16.04 TEST=ReleasePlain
    install: export OS=linux; export COMPILER='clang-3.5'; export STL='libstdc++';
      export UBUNTU='16.04'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='clang-3.5'; export STL='libstdc++';
      export UBUNTU='16.04'; extras/scripts/postsubmit.sh ReleasePlain
  - compiler: clang
    env: COMPILER=clang-3.5 STL=libstdc++ UBUNTU=16.04 TEST=DebugPlain
    install: export OS=linux; export COMPILER='clang-3.5'; export STL='libstdc++';
      export UBUNTU='16.04'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='clang-3.5'; export STL='libstdc++';
      export UBUNTU='16.04'; extras/scripts/postsubmit.sh DebugPlain
  - compiler: clang
    env: COMPILER=clang-3.9 STL=libstdc++ UBUNTU=16.04 TEST=ReleasePlain
    install: export OS=linux; export COMPILER='clang-3.9'; export STL='libstdc++';
      export UBUNTU='16.04'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='clang-3.9'; export STL='libstdc++';
      export UBUNTU='16.04'; extras/scripts/postsubmit.sh ReleasePlain
  - compiler: clang
    env: COMPILER=clang-3.9 STL=libstdc++ UBUNTU=16.04 TEST=DebugPlain
    install: export OS=linux; export COMPILER='clang-3.9'; export STL='libstdc++';
      export UBUNTU='16.04'; extras/scripts/travis_ci_install_linux.sh
    os: linux
    script: export OS=linux; export COMPILER='clang-3.9'; export STL='libstdc++';
      export UBUNTU='16.04'; extras/scripts/postsubmit.sh DebugPlain
  - compiler: gcc
    env: COMPILER=gcc-6 TEST=ReleasePlainNoClangTidy
    install: export OS=osx; export COMPILER='gcc-6'; travis_wait extras/scripts/travis_ci_install_osx.sh
    os: osx
    osx_image: xcode11.4
    script: export OS=osx; export COMPILER='gcc-6'; extras/scripts/postsubmit.sh ReleasePlainNoClangTidy
  - compiler: gcc
    env: COMPILER=gcc-6 TEST=DebugPlainNoClangTidy
    install: export OS=osx; export COMPILER='gcc-6'; travis_wait extras/scripts/travis_ci_install_osx.sh
    os: osx
    osx_image: xcode11.4
    script: export OS=osx; export COMPILER='gcc-6'; extras/scripts/postsubmit.sh DebugPlainNoClangTidy
  - compiler: gcc
    env: COMPILER=gcc-9 TEST=ReleasePlainNoPchNoClangTidy
    install: export OS=osx; export COMPILER='gcc-9'; travis_wait extras/scripts/travis_ci_install_osx.sh
    os: osx
    osx_image: xcode11.4
    script: export OS=osx; export COMPILER='gcc-9'; extras/scripts/postsubmit.sh ReleasePlainNoPchNoClangTidy
  - compiler: gcc
    env: COMPILER=gcc-9 TEST=DebugPlainNoPchNoClangTidy
    install: export OS=osx; export COMPILER='gcc-9'; travis_wait extras/scripts/travis_ci_install_osx.sh
    os: osx
    osx_image: xcode11.4
    script: export OS=osx; export COMPILER='gcc-9'; extras/scripts/postsubmit.sh DebugPlainNoPchNoClangTidy
  - compiler: clang
    env: COMPILER=clang-6.0 STL=libc++ TEST=ReleasePlainNoClangTidy
    install: export OS=osx; export COMPILER='clang-6.0'; export STL='libc++'; travis_wait
      extras/scripts/travis_ci_install_osx.sh
    os: osx
    osx_image: xcode11.4
    script: export OS=osx; export COMPILER='clang-6.0'; export STL='libc++'; extras/scripts/postsubmit.sh
      ReleasePlainNoClangTidy
  - compiler: clang
    env: COMPILER=clang-6.0 STL=libc++ TEST=DebugAsanUbsanNoClangTidy
    install: export OS=osx; export COMPILER='clang-6.0'; export STL='libc++'; travis_wait
      extras/scripts/travis_ci_install_osx.sh
    os: osx
    osx_image: xcode11.4
    script: export OS=osx; export COMPILER='clang-6.0'; export STL='libc++'; extras/scripts/postsubmit.sh
      DebugAsanUbsanNoClangTidy
  - compiler: clang
    env: COMPILER=clang-8.0 STL=libc++ TEST=ReleasePlainNoPchNoClangTidy
    install: export OS=osx; export COMPILER='clang-8.0'; export STL='libc++'; travis_wait
      extras/scripts/travis_ci_install_osx.sh
    os: osx
    osx_image: xcode11.4
    script: export OS=osx; export COMPILER='clang-8.0'; export STL='libc++'; extras/scripts/postsubmit.sh
      ReleasePlainNoPchNoClangTidy
  - compiler: clang
    env: COMPILER=clang-8.0 STL=libc++ TEST=DebugAsanUbsanNoPchNoClangTidy
    install: export OS=osx; export COMPILER='clang-8.0'; export STL='libc++'; travis_wait
      extras/scripts/travis_ci_install_osx.sh
    os: osx
    osx_image: xcode11.4
    script: export OS=osx; export COMPILER='clang-8.0'; export STL='libc++'; extras/scripts/postsubmit.sh
      DebugAsanUbsanNoPchNoClangTidy
  - compiler: clang
    env: COMPILER=clang-8.0 STL=libc++ TEST=DebugPlainNoPchNoClangTidy
    install: export OS=osx; export COMPILER='clang-8.0'; export STL='libc++'; travis_wait
      extras/scripts/travis_ci_install_osx.sh
    os: osx
    osx_image: xcode11.4
    script: export OS=osx; export COMPILER='clang-8.0'; export STL='libc++'; extras/scripts/postsubmit.sh
      DebugPlainNoPchNoClangTidy
  - compiler: clang
    env: COMPILER=clang-default STL=libc++ TEST=ReleasePlainNoClangTidy
    install: export OS=osx; export COMPILER='clang-default'; export STL='libc++';
      travis_wait extras/scripts/travis_ci_install_osx.sh
    os: osx
    osx_image: xcode9.4
    script: export OS=osx; export COMPILER='clang-default'; export STL='libc++'; extras/scripts/postsubmit.sh
      ReleasePlainNoClangTidy
  - compiler: clang
    env: COMPILER=clang-default STL=libc++ TEST=DebugAsanUbsanNoClangTidy
    install: export OS=osx; export COMPILER='clang-default'; export STL='libc++';
      travis_wait extras/scripts/travis_ci_install_osx.sh
    os: osx
    osx_image: xcode9.4
    script: export OS=osx; export COMPILER='clang-default'; export STL='libc++'; extras/scripts/postsubmit.sh
      DebugAsanUbsanNoClangTidy
  - compiler: clang
    env: COMPILER=clang-default STL=libc++ TEST=ReleasePlainNoClangTidy
    install: export OS=osx; export COMPILER='clang-default'; export STL='libc++';
      travis_wait extras/scripts/travis_ci_install_osx.sh
    os: osx
    osx_image: xcode11.4
    script: export OS=osx; export COMPILER='clang-default'; export STL='libc++'; extras/scripts/postsubmit.sh
      ReleasePlainNoClangTidy
  - compiler: clang
    env: COMPILER=clang-default STL=libc++ TEST=DebugAsanUbsanNoClangTidy
    install: export OS=osx; export COMPILER='clang-default'; export STL='libc++';
      travis_wait extras/scripts/travis_ci_install_osx.sh
    os: osx
    osx_image: xcode11.4
    script: export OS=osx; export COMPILER='clang-default'; export STL='libc++'; extras/scripts/postsubmit.sh
      DebugAsanUbsanNoClangTidy
  - compiler: clang
    env: COMPILER=clang-default STL=libc++ TEST=DebugPlainNoClangTidy
    install: export OS=osx; export COMPILER='clang-default'; export STL='libc++';
      travis_wait extras/scripts/travis_ci_install_osx.sh
    os: osx
    osx_image: xcode11.4
    script: export OS=osx; export COMPILER='clang-default'; export STL='libc++'; extras/scripts/postsubmit.sh
      DebugPlainNoClangTidy
services:
- docker
sudo: required

