language: cpp cache: directories: - ~/arduino_ide - ~/.arduino15/packages/ git: depth: false quiet: true matrix: include: - os: linux addons: apt: sources: - ubuntu-toolchain-r-test packages: - g++-7 env: - MATRIX_EVAL="CC=gcc-7 && CXX=g++-7" - MODE=LINUX - os: linux env: - MODE=ARDUINO - BOARD=arduino:samd:arduino_zero_native before_install: - downloadArduinoLib() { wget -O $1.zip $2; unzip -o $1.zip -d $HOME/arduino_ide/libraries; } - if [ "$MODE" = "LINUX" ]; then eval "${MATRIX_EVAL}"; fi - if [ "$MODE" = "ARDUINO" ]; then source <(curl -SLs "https://raw.githubusercontent.com/adafruit/travis-ci-arduino/master/install.sh"); fi - if [ "$MODE" = "ARDUINO" ]; then downloadArduinoLib FlashStorage "https://github.com/thelsing/FlashStorage/archive/master.zip"; fi - if [ "$MODE" = "ARDUINO" ]; then downloadArduinoLib BSEC "https://github.com/BoschSensortec/BSEC-Arduino-library/archive/master.zip"; fi - if [ "$MODE" = "ARDUINO" ]; then sed -i 's#compiler.warning_level=all#compiler.warning_level=default#' ~/.arduino15/preferences.txt; fi - if [ "$MODE" = "ARDUINO" ]; then sed -ri 's#^recipe.c.combine.pattern=([^$]*)\{archive_file\}" -Wl,--end-group#recipe.c.combine.pattern=\1\{archive_file\}" {compiler.libraries.ldflags} -Wl,--end-group#' ~/.arduino15/packages/arduino/hardware/samd/1.6.21/platform.txt; fi # the HDC100X lib is not properly set up in githup so move things around a bit - if [ "$MODE" = "ARDUINO" ]; then rm -rf $HOME/arduino_ide/libraries/HDC100X_Arduino_Library-master; fi - if [ "$MODE" = "ARDUINO" ]; then downloadArduinoLib HDC100X "https://github.com/RFgermany/HDC100X_Arduino_Library/archive/master.zip"; fi - if [ "$MODE" = "ARDUINO" ]; then mv $HOME/arduino_ide/libraries/HDC100X_Arduino_Library-master/HDC100X/* $HOME/arduino_ide/libraries/HDC100X_Arduino_Library-master; fi - buildExampleSketch() { arduino --verify --board $BOARD $PWD/examples/$1/$1.ino; } install: - if [ "$MODE" = "ARDUINO" ]; then arduino --install-library "WiFiManager"; fi script: - if [ "$MODE" = "LINUX" ]; then cd knx-linux; fi - if [ "$MODE" = "LINUX" ]; then mkdir -p build; fi - if [ "$MODE" = "LINUX" ]; then cd build; fi - if [ "$MODE" = "LINUX" ]; then cmake ..; fi - if [ "$MODE" = "LINUX" ]; then make; fi - if [ "$MODE" = "ARDUINO" ]; then buildExampleSketch knx-demo; fi - if [ "$MODE" = "ARDUINO" ]; then buildExampleSketch knx-sonoffS20; fi #- if [ "$MODE" = "ARDUINO" ]; then buildExampleSketch knx-bme680; fi - if [ "$MODE" = "ARDUINO" ]; then buildExampleSketch knx-hdc1008; fi notifications: email: on_success: change on_failure: change