sudo: false language: cpp matrix: include: - compiler: gcc addons: apt: sources: ['ubuntu-toolchain-r-test'] packages: ['g++-4.4'] env: SCRIPT=cmake GCC=4.4 - compiler: gcc addons: apt: sources: ['ubuntu-toolchain-r-test'] packages: ['g++-4.6'] env: SCRIPT=cmake GCC=4.6 - compiler: gcc addons: apt: sources: ['ubuntu-toolchain-r-test'] packages: ['g++-4.7'] env: SCRIPT=cmake GCC=4.7 - compiler: gcc addons: apt: sources: ['ubuntu-toolchain-r-test'] packages: ['g++-4.8'] env: SCRIPT=cmake GCC=4.8 SANITIZE=address - compiler: gcc addons: apt: sources: ['ubuntu-toolchain-r-test'] packages: ['g++-4.9'] env: SCRIPT=cmake GCC=4.9 SANITIZE=leak - compiler: gcc addons: apt: sources: ['ubuntu-toolchain-r-test'] packages: ['g++-5'] env: SCRIPT=cmake GCC=5 - compiler: gcc addons: apt: sources: ['ubuntu-toolchain-r-test'] packages: ['g++-6'] env: SCRIPT=cmake GCC=6 - compiler: gcc addons: apt: sources: ['ubuntu-toolchain-r-test'] packages: ['g++-7'] env: SCRIPT=cmake GCC=7 - compiler: clang env: SCRIPT=cmake - compiler: clang addons: apt: sources: ['ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5'] packages: ['clang-3.5'] env: SCRIPT=cmake CLANG=3.5 SANITIZE=address - compiler: clang addons: apt: sources: ['ubuntu-toolchain-r-test','llvm-toolchain-precise-3.6'] packages: ['clang-3.6'] env: SCRIPT=cmake CLANG=3.6 SANITIZE=leak - compiler: clang addons: apt: sources: ['ubuntu-toolchain-r-test','llvm-toolchain-precise-3.7'] packages: ['clang-3.7'] env: SCRIPT=cmake CLANG=3.7 - compiler: clang addons: apt: sources: ['ubuntu-toolchain-r-test','llvm-toolchain-precise-3.8'] packages: ['clang-3.8'] env: SCRIPT=cmake CLANG=3.8 SANITIZE=undefined - compiler: clang addons: apt: sources: ['ubuntu-toolchain-r-test','llvm-toolchain-trusty-3.9'] packages: ['clang-3.9'] env: SCRIPT=cmake CLANG=3.9 - compiler: clang addons: apt: sources: ['ubuntu-toolchain-r-test','llvm-toolchain-trusty-4.0'] packages: ['clang-4.0'] env: SCRIPT=cmake CLANG=4.0 - compiler: clang addons: apt: sources: ['ubuntu-toolchain-r-test','llvm-toolchain-trusty-5.0'] packages: ['clang-5.0'] env: SCRIPT=cmake CLANG=5.0 - compiler: clang addons: apt: sources: ['ubuntu-toolchain-r-test','llvm-toolchain-trusty-6.0'] packages: ['clang-6.0'] env: SCRIPT=cmake CLANG=6.0 - compiler: gcc env: SCRIPT=coverage - os: osx osx_image: xcode7.3 compiler: clang env: SCRIPT=cmake - os: osx osx_image: xcode8.3 compiler: clang env: SCRIPT=cmake - os: osx osx_image: xcode9.4 compiler: clang env: SCRIPT=cmake - os: osx osx_image: xcode10 compiler: clang env: SCRIPT=cmake SANITIZE=address - env: SCRIPT=arduino VERSION=1.6.7 BOARD=arduino:avr:uno - env: SCRIPT=arduino VERSION=1.8.2 BOARD=arduino:avr:uno - env: SCRIPT=platformio BOARD=uno - env: SCRIPT=platformio BOARD=esp01 - compiler: clang addons: apt: sources: ['ubuntu-toolchain-r-test','llvm-toolchain-trusty-6.0'] packages: ['clang-6.0','llvm-6.0'] env: SCRIPT=fuzz CLANG=6.0 cache: directories: - "~/.platformio" script: scripts/travis/$SCRIPT.sh