dist: focal arch: amd64 language: c os: - linux addons: apt: packages: - shellcheck - cmake - astyle env: global: - LC_ALL: C - CCACHE_WRAPPER_PATH: /tmp/kaleidoscope-ccache - ARDUINO_DOWNLOAD_URL: https://downloads.arduino.cc/arduino-1.8.13-linux64.tar.xz git: quiet: true depth: false before_install: - sh .travis/setup-ramdisk.sh - ccache --set-config=compiler_check=content -M 1G -F 0 install: - cd $TRAVIS_BUILD_DIR - make install-arduino-cli - make configure-arduino-cli - make install-arduino-core-avr - git clone --depth 1 --recurse-submodules=build-tools --recurse-submodules=toolchain --recurse-submodules=avr/libraries/ --jobs 16 --shallow-submodules git://github.com/keyboardio/Kaleidoscope-Bundle-Keyboardio ../hardware/keyboardio ## We delete the Bundle's version of Kaleidoscope, and symlink ourselves in. ## This makes sure we're using the current version of the library. - rm -rf ../hardware/keyboardio/avr/libraries/Kaleidoscope - ln -s $(pwd) ../hardware/keyboardio/avr/libraries/Kaleidoscope - export KALEIDOSCOPE_TEMP_PATH=$TRAVIS_BUILD_DIR/.kaleidoscope-build-cache - export BOARD_HARDWARE_PATH=$TRAVIS_BUILD_DIR/../hardware - export ARDUINO_PATH=$TRAVIS_BUILD_DIR/arduino-1.8.13 - make adjust-git-timestamps - wget --quiet $ARDUINO_DOWNLOAD_URL -O - | tar xJf - - make prepare-ccache jobs: include: - env: TEST_CMD="make -j 2 smoke-sketches" - env: TEST_CMD="CCACHE_NOT_SUPPORTED=1 make simulator-tests" - env: TEST_CMD="make cpplint" - env: TEST_CMD="make find-filename-conflicts" - env: TEST_CMD="make shellcheck" - env: TEST_CMD="make check-astyle" script: - unset CC - eval $TEST_CMD notifications: email: on_success: change on_failure: change cache: apt: true ccache: true directories: - .download-cache - .kaleidoscope-build-cache