mirror of
https://github.com/thelsing/knx.git
synced 2024-12-18 19:08:18 +01:00
110 lines
4.6 KiB
YAML
110 lines
4.6 KiB
YAML
matrix:
|
|
include:
|
|
# Test build for Linux platform
|
|
- language: cpp
|
|
os: linux
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- g++-7
|
|
env:
|
|
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7"
|
|
cache:
|
|
directories:
|
|
git:
|
|
depth: false
|
|
quiet: true
|
|
|
|
before_install:
|
|
- eval "${MATRIX_EVAL}"
|
|
|
|
install:
|
|
|
|
script:
|
|
- echo "building knx-linux"
|
|
- cd examples/knx-linux
|
|
- mkdir -p build
|
|
- cd build
|
|
- cmake ..
|
|
- make
|
|
|
|
# Test build for Arduino platform
|
|
- language: cpp
|
|
os: linux
|
|
env:
|
|
- ARDUINO_IDE_VERSION="1.8.11"
|
|
cache:
|
|
directories:
|
|
- ~/arduino_ide
|
|
- ~/.arduino15/packages/
|
|
git:
|
|
depth: false
|
|
quiet: true
|
|
before_install:
|
|
- downloadArduinoLib() { wget -O $1.zip $2; unzip -o $1.zip -d $HOME/arduino_ide/libraries; }
|
|
- source <(curl -SLs "https://raw.githubusercontent.com/adafruit/travis-ci-arduino/master/install.sh")
|
|
- downloadArduinoLib FlashStorage "https://github.com/thelsing/FlashStorage/archive/master.zip"
|
|
- downloadArduinoLib BSEC "https://github.com/BoschSensortec/BSEC-Arduino-library/archive/master.zip"
|
|
# only default warning level
|
|
- sed -i 's#compiler.warning_level=all#compiler.warning_level=default#' ~/.arduino15/preferences.txt
|
|
# changes for bsec lib
|
|
# samd
|
|
- ls -l ~/.arduino15/packages/arduino/hardware/samd
|
|
- sed -ri 's#(recipe.c.combine.pattern=[^$]*\{archive_file\}")( -Wl,--end-group)#\1 {compiler.libraries.ldflags}\2#' ~/.arduino15/packages/arduino/hardware/samd/1.8.6/platform.txt
|
|
- sed -i 's#compiler.elf2hex.extra_flags=#compiler.elf2hex.extra_flags=\ncompiler.libraries.ldflags=#' ~/.arduino15/packages/arduino/hardware/samd/1.8.6/platform.txt
|
|
# esp8266
|
|
- ls -l ~/.arduino15/packages/esp8266/hardware/esp8266
|
|
- sed -ri 's#(recipe.c.combine.pattern=[^$]*\{compiler.c.elf.libs\})( -Wl,--end-group "-L\{build.path\}")#\1 {compiler.libraries.ldflags}\2#' ~/.arduino15/packages/esp8266/hardware/esp8266/2.7.1/platform.txt
|
|
- sed -i 's#compiler.elf2hex.extra_flags=#compiler.elf2hex.extra_flags=\ncompiler.libraries.ldflags=#' ~/.arduino15/packages/esp8266/hardware/esp8266/2.7.1/platform.txt
|
|
- sed -i '/^.*libalgobsec.*$/d' ~/.arduino15/packages/esp8266/hardware/esp8266/2.7.1/tools/sdk/ld/eagle.app.v6.common.ld.h
|
|
- sed -ri 's#(\*libwps\.a:\(\.literal\.\* \.text\.\*\))#\1\n *libalgobsec.a:(.literal.* .text.*)#' ~/.arduino15/packages/esp8266/hardware/esp8266/2.7.1/tools/sdk/ld/eagle.app.v6.common.ld.h
|
|
|
|
# the HDC100X lib is not properly set up in githup so move things around a bit
|
|
- rm -rf $HOME/arduino_ide/libraries/HDC100X_Arduino_Library-master
|
|
- downloadArduinoLib HDC100X "https://github.com/RFgermany/HDC100X_Arduino_Library/archive/master.zip"
|
|
- mv $HOME/arduino_ide/libraries/HDC100X_Arduino_Library-master/HDC100X/* $HOME/arduino_ide/libraries/HDC100X_Arduino_Library-master
|
|
#- buildExampleSketch() { arduino --verify --board $BOARD $PWD/examples/$1/$1.ino; }
|
|
|
|
install:
|
|
- arduino --install-library "WiFiManager"
|
|
script:
|
|
# - buildExampleSketch knx-demo
|
|
# - buildExampleSketch knx-sonoffS20
|
|
# - buildExampleSketch knx-bme680
|
|
# - buildExampleSketch knx-hdc1008
|
|
- build_platform zero
|
|
- build_platform esp8266
|
|
|
|
# Test build for PlatformIO based projects
|
|
- language: python
|
|
python:
|
|
- "3.8"
|
|
cache:
|
|
directories:
|
|
- "~/.platformio"
|
|
env:
|
|
- PLATFORMIO_EXTRA_SCRIPTS=pre:/tmp/scripts/custom_hwids.py
|
|
install:
|
|
- pip install -U platformio
|
|
- platformio update
|
|
script:
|
|
# PRE scripts have to be copied manually as "platformio ci does not care about it"
|
|
- mkdir -p /tmp/scripts
|
|
- cp examples/knx-usb/custom_hwids.py /tmp/scripts
|
|
|
|
# Enable verbose output of platformio
|
|
#- platformio settings set force_verbose yes
|
|
|
|
- echo "-------";echo "Compiling example knx-usb";echo "--------";
|
|
- platformio ci --lib="." --project-conf=examples/knx-usb/platformio-ci.ini examples/knx-usb/src/main.cpp
|
|
|
|
- echo "-------";echo "Compiling example knx-demo";echo "--------";
|
|
- platformio ci --lib="." --project-conf=examples/knx-demo/platformio-ci.ini examples/knx-demo/knx-demo.ino
|
|
|
|
notifications:
|
|
email:
|
|
on_success: change
|
|
on_failure: change
|