sudo: required
dist: xenial
language: cpp
compiler: gcc

before_install:
  - sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
  - sudo add-apt-repository -y ppa:beineri/opt-qt563-xenial
  - sudo apt-get update -qq

install:
  - sudo apt-get install -qq gcc-4.9 g++-4.9
  - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 90
  - sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 90
  - sudo update-alternatives --install /usr/bin/gcov gcov /usr/bin/gcov-4.9 90
  - sudo apt-get install -qq qt56base
  - source /opt/qt56/bin/qt56-env.sh
  - wget http://archive.ubuntu.com/ubuntu/pool/universe/l/lcov/lcov_1.13.orig.tar.gz
  - tar xf lcov_1.13.orig.tar.gz
  - cd lcov-1.13/
  - sudo make install
  - cd ..

before_script:
  - cmake --version
  - qmake --version
  - gcc --version && g++ --version
  - lcov --version && gcov --version

script:
  - cmake -G "Unix Makefiles"
  - cmake --build . -- -j12
  - cmake --build . --target test
  - lcov -capture --directory . --o coverage.info
  - lcov -e coverage.info '**/src/**/*' -o coverage.info

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