language: python
python:
    - "2.7"

# Cache PlatformIO packages using Travis CI container-based infrastructure
sudo: false
cache:
    directories:
        - "~/.platformio"

env:
    - PLATFORMIO_CI_SRC=examples/MemoryAndCpuUsage
    - PLATFORMIO_CI_SRC=examples/Recorder
    - PLATFORMIO_CI_SRC=examples/SamplePlayer
    - PLATFORMIO_CI_SRC=examples/WavFilePlayer
    - PLATFORMIO_CI_SRC=examples/Analysis/DialTone_7segment
    - PLATFORMIO_CI_SRC=examples/Analysis/DialTone_Serial
    - PLATFORMIO_CI_SRC=examples/Analysis/FFT
    - PLATFORMIO_CI_SRC=examples/Analysis/PeakMeterMono
    - PLATFORMIO_CI_SRC=examples/Analysis/PeakMeterStereo
    - PLATFORMIO_CI_SRC=examples/Analysis/SpectrumAnalyzerBasic
    - PLATFORMIO_CI_SRC=examples/Effects/Bitcrusher
    - PLATFORMIO_CI_SRC=examples/Effects/Chorus
    - PLATFORMIO_CI_SRC=examples/Effects/Delay
    - PLATFORMIO_CI_SRC=examples/Effects/Filter
    - PLATFORMIO_CI_SRC=examples/Effects/Filter_FIR
    - PLATFORMIO_CI_SRC=examples/Effects/Flange
    - PLATFORMIO_CI_SRC=examples/HardwareTesting/PassThroughMono
    - PLATFORMIO_CI_SRC=examples/HardwareTesting/PassThroughStereo
    - PLATFORMIO_CI_SRC=examples/HardwareTesting/SdCardTest
    - PLATFORMIO_CI_SRC=examples/HardwareTesting/ToneSweep
    - PLATFORMIO_CI_SRC=examples/HardwareTesting/WM8731MikroSine
    - PLATFORMIO_CI_SRC=examples/Synthesis/PlaySynthMusic
    - PLATFORMIO_CI_SRC=examples/Synthesis/pulseWidth
    - PLATFORMIO_CI_SRC=examples/Tutorial/Part_1_02_Hardware_Test
    - PLATFORMIO_CI_SRC=examples/Tutorial/Part_1_03_Playing_Music
    - PLATFORMIO_CI_SRC=examples/Tutorial/Part_1_04_Blink_While_Playing
    - PLATFORMIO_CI_SRC=examples/Tutorial/Part_1_05_Do_More_While_Playing

install:
    - pip install -U platformio

    # install dependent libraries
    # http://platformio.org/#!/lib/show/539/SerialFlash
    - platformio lib install 539
    
    - export PLATFORMIO_BUILD_FLAGS=-larm_cortexM4l_math

    # remove unused items
    - rm -r extras

script:
    - platformio ci --lib=. --board=teensy31