aboutsummaryrefslogtreecommitdiffstats
path: root/.travis.yml
blob: 819196df2c9a74656fa9957c678b0cc63c1f8a47 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
dist: trusty
sudo: required

language: cpp

services:
  - docker

before_install:
  - sudo rm /usr/local/bin/docker-compose
  - curl -L https://github.com/docker/compose/releases/download/1.9.0/docker-compose-`uname -s`-`uname -m` > docker-compose
  - chmod +x docker-compose
  - sudo mv docker-compose /usr/local/bin

jobs:
  fast_finish: true
  include:
    - &run-with-clang-minimal
      stage: Clang 3.8 - minimal mock platform
      env: TARGET=minimal
      before_script: docker-compose pull ${TARGET}
      script:
        - export CC=clang-3.8 CXX=clang++-3.8
        - BUILDARCH=MOCK docker-compose run ${TARGET}
    - &run-with-clang
      stage: Clang 3.8
      env: TARGET=python3
      before_script: docker-compose pull ${TARGET}
      script:
        - export CC=clang-3.8 CXX=clang++-3.8
        - docker-compose run ${TARGET}
        - BUILDARCH=MOCK docker-compose run ${TARGET}
        - if [[ ${TARGET} != *"node"* ]]; then JSONPLAT=ON docker-compose run ${TARGET}; fi
    - <<: *run-with-clang
      env: TARGET=node6
    - <<: *run-with-clang
      env: TARGET=java
    - &run-with-gcc-5
      stage: Gcc 5
      env: TARGET=python3
      before_script: docker-compose pull ${TARGET}
      script:
        - export CC=gcc-5 CXX=g++-5
        - docker-compose run ${TARGET}
        - BUILDARCH=MOCK docker-compose run ${TARGET}
        - if [[ ${TARGET} != *"node"* ]]; then JSONPLAT=ON docker-compose run ${TARGET}; fi
    - <<: *run-with-gcc-5
      env: TARGET=node6
    - <<: *run-with-gcc-5
      env: TARGET=java
    - &run-with-gcc-6
      stage: Gcc 6
      env: TARGET=python3
      before_script: docker-compose pull ${TARGET}
      script:
        - export CC=gcc-6 CXX=g++-6
        - docker-compose run ${TARGET}
        - BUILDARCH=MOCK docker-compose run ${TARGET}
        - if [[ ${TARGET} != *"node"* ]]; then JSONPLAT=ON docker-compose run ${TARGET}; fi
    - <<: *run-with-gcc-6
      env: TARGET=node6
    - <<: *run-with-gcc-6
      env: TARGET=java
    - &run-additional-jobs
      stage: Additional Jobs
      env: TARGET=doc
      before_script: docker-compose pull ${TARGET}
      script:
        - export CC=clang-3.8 CXX=clang++-3.8
        - docker-compose run ${TARGET}
    - <<: *run-additional-jobs
      env: TARGET=android
    - <<: *run-additional-jobs
      env: TARGET=examples
    - <<: *run-additional-jobs
      env: TARGET=usbplat
    - <<: *run-additional-jobs
      env: TARGET=firmata
    - <<: *run-additional-jobs
      env: TARGET=imraa
    - <<: *run-additional-jobs
      env: TARGET=ftdi4442
    - <<: *run-additional-jobs
      env: TARGET=sonar-scan