#
#    Copyright 2018 Google LLC. All Rights Reserved.
#
#    Licensed under the Apache License, Version 2.0 (the "License");
#    you may not use this file except in compliance with the License.
#    You may obtain a copy of the License at
#
#    http://www.apache.org/licenses/LICENSE-2.0
#
#    Unless required by applicable law or agreed to in writing, software
#    distributed under the License is distributed on an "AS IS" BASIS,
#    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#    See the License for the specific language governing permissions and
#    limitations under the License.
#

#
#    Description:
#      This file is the Travis CI hosted, distributed continuous 
#      integration configuration file for the OpenWeave Core library.
#

language: generic

sudo: required

before_install:
  - .travis/before_install.sh

script:
  - .travis/script.sh

after_success:
  - bash <(curl -s https://codecov.io/bash)

matrix:
  include:
    - name: "Linux with Defaults against GCC Distribution Sanity Check"
      env: BUILD_TARGET="linux-auto-gcc-distcheck" CC="gcc"
      os: linux
      compiler: gcc
