knx/.travis.yml
nanosonde 77a796a39c
Add coupler support (#79)
* save work.

* save work

* save work

* save work

* save work

* Remember which interface received the cemi frame

* save work

* save work

* save work

* Use default value from PID_ROUTING_COUNT

* Add simple alternative to std::function without smart pointers or move semantics

* Remove include

* Add more comments about cleanup

* save work

* Remove forgotten code.

* Move crc16Ccitt to bits.c as it also used for PID_MCB

* save work

* move comment

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* derive from TableObject instead of InterfaceObject

* save work

* save work

* Fix wrong pointer arithmetic in TableObject

* Filter table setting/clearing

* move comment

* save work

* save work

* save work

* handle SBC on closed media

* save work

* move coupler example to different dir

* Restore device example for linux

* save work

* Remove MEDIUM_TYPE and use MASK_VERSION

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* Replace MEDIUM_TYPE by MASK_VERSION

* Remove adafruit/travis-ci tests

* Disable travis ci cache for platformio

* Fix missing changes

* Fix cemi server and add missing MASK_VERSION definitions

* Enable platformio caching on travis ci again

* Handle device address update for routing decision

* source address is set in network layer and not in data link layer

* Add remaining APCI types that are used with system broadcast

* Add debug print for routing

* Remove simple_functional

* Fix CMakLists.txt

* Use MASK_VERSION to conditionally compile code.

* Remove fixed version reuqirement from platform esp8266

* Add demo-coupler for MCUs

* Remove simple_functional.h from demo knx-linux

* Enable CI for coupler demos

* Correct path for knx-linux-coupler

* Fix knx_facade.h

* Refactor NetworkLayer to use getInterface() for devices and getPrimaryInterface(), getSecondaryInterface() for couplers

* Add platformio configs for other currently possible mask/platform combinations

* Add class diagrams and remove obsolete includes

* Add some minimal docs
2020-09-06 21:41:34 +02:00

73 lines
2.0 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
- cd ../..
- echo "building knx-linux-coupler"
- cd knx-linux-coupler
- mkdir -p build
- cd build
- cmake ..
- make
# 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
- echo "-------";echo "Compiling example knx-demo-coupler";echo "--------";
- platformio ci --lib="." --project-conf=examples/knx-demo-coupler/platformio-ci.ini examples/knx-demo-coupler/knx-demo-coupler.ino
notifications:
email:
on_success: change
on_failure: change