123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134 |
- #!/bin/bash
- set -ex
- function build_sketches()
- {
- local arduino=$1
- local srcpath=$2
- local platform=$3
- local sketches=$(find $srcpath -name *.ino)
- for sketch in $sketches; do
- local sketchdir=$(dirname $sketch)
- if [[ -f "$sketchdir/.$platform.skip" ]]; then
- echo -e "\n\n ------------ Skipping $sketch ------------ \n\n";
- continue
- fi
- echo -e "\n\n ------------ Building $sketch ------------ \n\n";
- $arduino --verify $sketch;
- local result=$?
- if [ $result -ne 0 ]; then
- echo "Build failed ($sketch) build verbose..."
- $arduino --verify --verbose --preserve-temp-files $sketch
- result=$?
- fi
- if [ $result -ne 0 ]; then
- echo "Build failed ($1) $sketch"
- return $result
- fi
- done
- }
- function build_sketch()
- {
- local arduino=$1
- local sketch=$2
- $arduino --verify $sketch;
- local result=$?
- if [ $result -ne 0 ]; then
- echo "Build failed ($sketch) build verbose..."
- $arduino --verify --verbose --preserve-temp-files $sketch
- result=$?
- fi
- if [ $result -ne 0 ]; then
- echo "Build failed ($1) $sketch"
- return $result
- fi
- }
- function get_sketches_json()
- {
- local arduino=$1
- local srcpath=$2
- local platform=$3
- local sketches=($(find $srcpath -name *.ino))
- echo -en "["
- for sketch in "${sketches[@]}" ; do
- local sketchdir=$(dirname $sketch)
- if [[ -f "$sketchdir/.$platform.skip" ]]; then
- continue
- fi
- echo -en "\"$sketch\""
- if [[ $sketch != ${sketches[-1]} ]] ; then
- echo -en ","
- fi
- done
- echo -en "]"
- }
- function get_sketches_json_matrix()
- {
- local arduino=$1
- local srcpath=$2
- local platform=$3
- local ideversion=$4
- local board=$5
- local sketches=($(find $srcpath -name *.ino))
- for sketch in "${sketches[@]}" ; do
- local sketchdir=$(dirname $sketch)
- local sketchname=$(basename $sketch)
- if [[ -f "$sketchdir/.$platform.skip" ]]; then
- continue
- fi
- echo -en "{\"name\":\"$sketchname\",\"board\":\"$board\",\"ideversion\":\"$ideversion\",\"cpu\":\"$platform\",\"sketch\":\"$sketch\"}"
- if [[ $sketch != ${sketches[-1]} ]] ; then
- echo -en ","
- fi
- done
- }
- function get_core()
- {
- echo Setup core for $1
- cd $HOME/arduino_ide/hardware
- if [ "$1" = "esp8266" ] ; then
- mkdir esp8266com
- cd esp8266com
- git clone --depth 1 https://github.com/esp8266/Arduino.git esp8266
- cd esp8266/
- git submodule update --init
- rm -rf .git
- cd tools
- python get.py
- fi
- if [ "$1" = "esp32" ] ; then
- mkdir espressif
- cd espressif
- git clone --depth 1 https://github.com/espressif/arduino-esp32.git esp32
- cd esp32/
- rm -rf .git
- cd tools
- python get.py
- fi
- }
- function clone_library() {
- local url=$1
- echo clone $(basename $url)
- mkdir -p $HOME/Arduino/libraries
- cd $HOME/Arduino/libraries
- git clone --depth 1 $url
- rm -rf */.git
- rm -rf */.github
- rm -rf */examples
- }
- function hash_library_names() {
- cd $HOME/Arduino/libraries
- ls | sha1sum -z | cut -c1-5
- }
|