Переглянути джерело

Travis: build with Arduino 1.5.8 and 1.6.7

Benoit Blanchon 10 роки тому
батько
коміт
b54f1ffc1d
4 змінених файлів з 45 додано та 22 видалено
  1. 7 22
      .travis.yml
  2. 15 0
      scripts/build-old-arduino-package.sh
  3. 10 0
      scripts/travis/clang.sh
  4. 13 0
      scripts/travis/gcc.sh

+ 7 - 22
.travis.yml

@@ -1,23 +1,8 @@
 sudo: false
-language: c++
-compiler:
-  - gcc
-  - clang
-before_install:
-  - pip install --user cpp-coveralls
-  - mkdir -p /tmp/cmake
-  - curl https://cmake.org/files/v3.4/cmake-3.4.0-Linux-x86_64.tar.gz | tar xz -C /tmp/cmake --strip 1
-  - export PATH=/tmp/cmake/bin:$PATH
-  - "/sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_1.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :1 -ac -screen 0 1280x1024x16"
-  - sleep 3
-  - export DISPLAY=:1.0
-  - mkdir -p /tmp/arduino
-  - curl http://downloads.arduino.cc/arduino-1.6.5-linux64.tar.xz | tar xJ -C /tmp/arduino --strip 1
-  - export PATH=$PATH:/tmp/arduino/
-  - ln -s $PWD /tmp/arduino/libraries/ArduinoJson
-script:
-  - cmake -DCOVERAGE=true . && make && make test
-  - arduino --verify --board arduino:avr:uno $PWD/examples/JsonParserExample/JsonParserExample.ino
-  - arduino --verify --board arduino:avr:uno $PWD/examples/JsonGeneratorExample/JsonGeneratorExample.ino
-after_success:
-    - if [ "$CC" = "gcc" ]; then coveralls --exclude third-party --gcov-options '\-lp'; fi
+language: cpp
+env:
+  - COMPILER=gcc
+  - COMPILER=clang
+  - COMPILER=arduino VERSION=1.5.8 BOARD=arduino:avr:uno
+  - COMPILER=arduino VERSION=1.6.7 BOARD=arduino:avr:uno
+script: scripts/travis/$COMPILER.sh

+ 15 - 0
scripts/build-old-arduino-package.sh

@@ -0,0 +1,15 @@
+#!/bin/sh -eux
+
+/sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_1.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :1 -ac -screen 0 1280x1024x16
+sleep 3
+export DISPLAY=:1.0
+
+mkdir -p /tmp/arduino
+curl -sS http://downloads.arduino.cc/arduino-$VERSION-linux64.tar.xz | tar xJ -C /tmp/arduino --strip 1 ||
+curl -sS http://downloads.arduino.cc/arduino-$VERSION-linux64.tgz | tar xz -C /tmp/arduino --strip 1 
+export PATH=$PATH:/tmp/arduino/
+  
+ln -s $PWD /tmp/arduino/libraries/ArduinoJson
+
+arduino --verify --board $BOARD $PWD/examples/JsonParserExample/JsonParserExample.ino
+arduino --verify --board $BOARD $PWD/examples/JsonGeneratorExample/JsonGeneratorExample.ino

+ 10 - 0
scripts/travis/clang.sh

@@ -0,0 +1,10 @@
+#!/bin/sh -eux
+
+export CC=clang
+export CXX=clang++
+
+curl -sS https://cmake.org/files/v3.4/cmake-3.4.0-Linux-x86_64.tar.gz | tar xz -C /tmp --strip 1
+
+/tmp/bin/cmake .
+make 
+make test

+ 13 - 0
scripts/travis/gcc.sh

@@ -0,0 +1,13 @@
+#!/bin/sh -eux
+
+export CC=gcc
+export CXX=g++
+
+curl https://cmake.org/files/v3.4/cmake-3.4.0-Linux-x86_64.tar.gz | tar xz -C /tmp --strip 1
+
+/tmp/bin/cmake -DCOVERAGE=true .
+make 
+make test
+
+pip install --user cpp-coveralls
+coveralls --exclude third-party --gcov-options '\-lp'; fi