Blame view

.travis.yml 17.5 KB
83d290c56   Tom Rini   SPDX: Convert all...
1
  # SPDX-License-Identifier: GPL-2.0+
c7cb334d1   Meier, Roger   .travis.yml: buil...
2
  # Copyright Roger Meier <r.meier@siemens.com>
c7cb334d1   Meier, Roger   .travis.yml: buil...
3
4
  
  # build U-Boot on Travis CI - https://travis-ci.org/
2bb76f33e   Tom Rini   travis-ci: Switch...
5
  sudo: required
8b13e9bf1   Tom Rini   travis.yml: Switc...
6
  dist: bionic
e4c1b4d8c   Stephen Warren   .travis.yml: expl...
7

c7cb334d1   Meier, Roger   .travis.yml: buil...
8
  language: c
050c7569b   Roger Meier   .travis.yml: rewo...
9
10
  addons:
    apt:
4030f166f   Tom Rini   travis: Add sandb...
11
12
      sources:
      - ubuntu-toolchain-r-test
8b13e9bf1   Tom Rini   travis.yml: Switc...
13
      - llvm-toolchain-bionic-7
050c7569b   Roger Meier   .travis.yml: rewo...
14
15
16
17
18
19
      packages:
      - cppcheck
      - sloccount
      - sparse
      - bc
      - build-essential
96d0cd460   Simon Glass   sandbox: sdl: Mov...
20
      - libsdl2-dev
07bf2122d   Stephen Warren   Enable test/py fo...
21
      - python
085b8978b   Tom Rini   gitlab/travis: Re...
22
      - python-pyelftools
f36f15b64   Tom Rini   travis: Add pytho...
23
      - python3-sphinx
085b8978b   Tom Rini   gitlab/travis: Re...
24
25
      - python3-virtualenv
      - python3-pip
f2b0c007f   Tom Rini   travis-ci: Add sw...
26
27
      - swig
      - libpython-dev
cd402e015   Tom Rini   travis-ci: Update...
28
      - iasl
0e4e38ae3   Alexander Graf   travis: Add efi_l...
29
      - grub-efi-ia32-bin
66a3a9cfd   Bin Meng   travis: Generate ...
30
      - grub-efi-amd64-bin
0e4e38ae3   Alexander Graf   travis: Add efi_l...
31
32
      - rpm2cpio
      - wget
36dd5f1b8   Tom Rini   dtc: Switch to bu...
33
      - device-tree-compiler
706f07757   Tom Rini   .travis.yml: Add ...
34
      - lzop
83d73c2f7   Simon Glass   binman: Support c...
35
      - liblz4-tool
4997a7ed0   Simon Glass   binman: Add a uti...
36
      - lzma-alone
4030f166f   Tom Rini   travis: Add sandb...
37
38
      - libisl15
      - clang-7
aa2e9c9e8   Marek Vasut   travis: Add sreco...
39
      - srecord
bb9a76ea6   Heinrich Schuchardt   travis: build HTM...
40
      - graphviz
4c58d273e   Daniel Schwierzeck   buildman: support...
41

c7cb334d1   Meier, Roger   .travis.yml: buil...
42
  install:
5ac5861c4   Tom Rini   travis-ci: Add te...
43
44
45
46
   # Clone uboot-test-hooks
   - git clone --depth=1 git://github.com/swarren/uboot-test-hooks.git /tmp/uboot-test-hooks
   - ln -s travis-ci /tmp/uboot-test-hooks/bin/`hostname`
   - ln -s travis-ci /tmp/uboot-test-hooks/py/`hostname`
c7cb334d1   Meier, Roger   .travis.yml: buil...
47
   # prepare buildman environment
43a68e49e   Stephen Warren   travis-ci: Use = ...
48
49
   - echo -e "[toolchain]
  root = /usr" > ~/.buildman
f0d964f4d   Alexey Brodkin   travis: Bump ARC ...
50
   - echo -e "arc = /tmp/arc_gnu_2018.09_prebuilt_uclibc_le_archs_linux_install" >> ~/.buildman
14d39c9e1   Tom Rini   travis: Rework ho...
51
52
53
54
55
   - echo -e "
  [toolchain-alias]
  sh = sh2" >> ~/.buildman
   - echo -e "x86 = i386" >> ~/.buildman;
   - echo -e "riscv = riscv64" >> ~/.buildman;
c7cb334d1   Meier, Roger   .travis.yml: buil...
56
   - cat ~/.buildman
8b13e9bf1   Tom Rini   travis.yml: Switc...
57
58
   - grub-mkimage --prefix="" -o ~/grub_x86.efi -O i386-efi normal  echo lsefimmap lsefi lsefisystab efinet tftp minicmd
   - grub-mkimage --prefix="" -o ~/grub_x64.efi -O x86_64-efi normal  echo lsefimmap lsefi lsefisystab efinet tftp minicmd
0e4e38ae3   Alexander Graf   travis: Add efi_l...
59
60
   - mkdir ~/grub2-arm
   - ( cd ~/grub2-arm; wget -O - http://download.opensuse.org/ports/armv7hl/distribution/leap/42.2/repo/oss/suse/armv7hl/grub2-arm-efi-2.02~beta2-87.1.armv7hl.rpm | rpm2cpio | cpio -di )
1b012a3e7   Tuomas Tynkkynen   Travis-CI: Downlo...
61
62
   - mkdir ~/grub2-arm64
   - ( cd ~/grub2-arm64; wget -O - http://download.opensuse.org/ports/aarch64/distribution/leap/42.2/repo/oss/suse/aarch64/grub2-arm64-efi-2.02~beta2-87.1.aarch64.rpm | rpm2cpio | cpio -di )
8b13e9bf1   Tom Rini   travis.yml: Switc...
63
   - wget http://mirrors.kernel.org/ubuntu/pool/main/m/mpfr4/libmpfr4_3.1.4-1_amd64.deb && sudo dpkg -i libmpfr4_3.1.4-1_amd64.deb && rm libmpfr4_3.1.4-1_amd64.deb
c7cb334d1   Meier, Roger   .travis.yml: buil...
64
65
66
  
  env:
    global:
e327768c3   Ramon Fried   travis.yml: chang...
67
      - PATH=/tmp/qemu-install/bin:/tmp/uboot-test-hooks/bin:/usr/bin:/bin:/usr/local/bin
e019660a0   Alexander Graf   travis: Add pytho...
68
      - PYTHONPATH=/tmp/uboot-test-hooks/py/travis-ci
c7cb334d1   Meier, Roger   .travis.yml: buil...
69
      - BUILD_DIR=build
c7cb334d1   Meier, Roger   .travis.yml: buil...
70
71
      - HOSTCC="cc"
      - HOSTCXX="c++"
88366b96e   Tom Rini   travis: Switch to...
72
      - QEMU_VERSION="v4.2.0"
c7cb334d1   Meier, Roger   .travis.yml: buil...
73
74
  
  before_script:
050c7569b   Roger Meier   .travis.yml: rewo...
75
    # install toolchains based on TOOLCHAIN} variable
050c7569b   Roger Meier   .travis.yml: rewo...
76
    - if [[ "${TOOLCHAIN}" == *m68k* ]]; then ./tools/buildman/buildman --fetch-arch m68k ; fi
cd402e015   Tom Rini   travis-ci: Update...
77
    - if [[ "${TOOLCHAIN}" == *microblaze* ]]; then ./tools/buildman/buildman --fetch-arch microblaze ; fi
050c7569b   Roger Meier   .travis.yml: rewo...
78
    - if [[ "${TOOLCHAIN}" == *mips* ]]; then ./tools/buildman/buildman --fetch-arch mips ; fi
4c58d273e   Daniel Schwierzeck   buildman: support...
79
    - if [[ "${TOOLCHAIN}" == *sh* ]]; then ./tools/buildman/buildman --fetch-arch sh2 ; fi
0533fb8b3   Bin Meng   travis: Switch to...
80
81
    - if [[ "${TOOLCHAIN}" == *i386* ]]; then
        ./tools/buildman/buildman --fetch-arch i386;
2ded4bf9b   Stephen Warren   travis-ci: centra...
82
      fi
80e4bbfcd   Alexey Brodkin   travisci: Add sup...
83
    - if [[ "${TOOLCHAIN}" == arc ]]; then
f0d964f4d   Alexey Brodkin   travis: Bump ARC ...
84
85
         wget https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/download/arc-2018.09-release/arc_gnu_2018.09_prebuilt_uclibc_le_archs_linux_install.tar.gz &&
         tar -C /tmp -xf arc_gnu_2018.09_prebuilt_uclibc_le_archs_linux_install.tar.gz;
80e4bbfcd   Alexey Brodkin   travisci: Add sup...
86
      fi
f715ed459   Rick Chen   .travis.yml: Supp...
87
88
89
90
91
92
93
    - if [[ "${TOOLCHAIN}" == "nds32" ]]; then
         wget https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases/download/20180521/nds32le-linux-glibc-v3-upstream.tar.gz &&
         tar -C /tmp -xf nds32le-linux-glibc-v3-upstream.tar.gz &&
         echo -e "
  [toolchain-prefix]
  nds32 = /tmp/nds32le-linux-glibc-v3-upstream/bin/nds32le-linux-" >> ~/.buildman;
      fi
b6f3a12ef   Max Filippov   .travis.yml: down...
94
95
96
97
98
99
100
    - if [[ "${TOOLCHAIN}" == *xtensa* ]]; then
         wget https://github.com/foss-xtensa/toolchain/releases/download/2018.02/x86_64-2018.02-${TOOLCHAIN}.tar.gz &&
         tar -C /tmp -xf x86_64-2018.02-${TOOLCHAIN}.tar.gz &&
         echo -e "
  [toolchain-prefix]
  xtensa = /tmp/2018.02/${TOOLCHAIN}/bin/${TOOLCHAIN}-" >> ~/.buildman;
      fi
8399538cb   Tom Rini   travis-ci: Switch...
101
102
    # If TOOLCHAIN is unset, we're on some flavour of ARM.
    - if [[ "${TOOLCHAIN}" == "" ]]; then
4c58d273e   Daniel Schwierzeck   buildman: support...
103
104
         ./tools/buildman/buildman --fetch-arch arm &&
         ./tools/buildman/buildman --fetch-arch aarch64;
8399538cb   Tom Rini   travis-ci: Switch...
105
      fi
4c58d273e   Daniel Schwierzeck   buildman: support...
106
    - if [[ "${TOOLCHAIN}" == "powerpc" ]]; then ./tools/buildman/buildman --fetch-arch powerpc; fi
b6896fcbe   Rick Chen   travis.yml: Suppo...
107
    - if [[ "${TOOLCHAIN}" == "riscv" ]]; then
b5135e453   Bin Meng   travis: Use kerne...
108
         ./tools/buildman/buildman --fetch-arch riscv64;
b6896fcbe   Rick Chen   travis.yml: Suppo...
109
      fi
3c643fb01   Tom Rini   travis-ci: Switch...
110
111
112
113
    - if [[ "${QEMU_TARGET}" != "" ]]; then
         git clone git://git.qemu.org/qemu.git /tmp/qemu;
         pushd /tmp/qemu;
         git submodule update --init dtc &&
984a1feb7   Michal Simek   travis: Setup QEM...
114
         git checkout ${QEMU_VERSION} &&
3c643fb01   Tom Rini   travis-ci: Switch...
115
116
117
118
         ./configure --prefix=/tmp/qemu-install --target-list=${QEMU_TARGET} &&
         make -j4 all install;
         popd;
      fi
c7cb334d1   Meier, Roger   .travis.yml: buil...
119
120
  
  script:
8304f0538   Stephen Warren   travis-ci: compil...
121
122
123
   # Comments must be outside the command strings below, or the Travis parser
   # will get confused.
   #
4030f166f   Tom Rini   travis: Add sandb...
124
125
   # From buildman, exit code 129 means warnings only.  If we've been asked to
   # use clang only do one configuration.
e9500f49e   Simon Glass   travis: Use build...
126
   - if [[ "${BUILDMAN}" != "" ]]; then
4030f166f   Tom Rini   travis: Add sandb...
127
       ret=0;
e9500f49e   Simon Glass   travis: Use build...
128
       tools/buildman/buildman -P -E ${BUILDMAN} ${OVERRIDE}|| ret=$?;
bf1c08893   Stephen Warren   travis-ci: don't ...
129
       if [[ $ret -ne 0 && $ret -ne 129 ]]; then
baade496d   Tom Rini   travis-ci: Try ha...
130
         tools/buildman/buildman -sdeP ${BUILDMAN};
0c5145fc2   Stephen Warren   travis-ci: use co...
131
132
         exit $ret;
       fi;
050c7569b   Roger Meier   .travis.yml: rewo...
133
     fi
8304f0538   Stephen Warren   travis-ci: compil...
134
135
136
137
   # "not a_test_which_does_not_exist" is a dummy -k parameter which will
   # never prevent any test from running. That way, we can always pass
   # "-k something" even when $TEST_PY_TEST_SPEC doesnt need a custom
   # value.
faec290f7   Alexander Graf   Travis: Expose bu...
138
   - export UBOOT_TRAVIS_BUILD_DIR=`cd .. && pwd`/.bm-work/${TEST_PY_BD};
0e4e38ae3   Alexander Graf   travis: Add efi_l...
139
     cp ~/grub_x86.efi $UBOOT_TRAVIS_BUILD_DIR/;
66a3a9cfd   Bin Meng   travis: Generate ...
140
     cp ~/grub_x64.efi $UBOOT_TRAVIS_BUILD_DIR/;
0e4e38ae3   Alexander Graf   travis: Add efi_l...
141
     cp ~/grub2-arm/usr/lib/grub2/arm-efi/grub.efi $UBOOT_TRAVIS_BUILD_DIR/grub_arm.efi;
1b012a3e7   Tuomas Tynkkynen   Travis-CI: Downlo...
142
     cp ~/grub2-arm64/usr/lib/grub2/arm64-efi/grub.efi $UBOOT_TRAVIS_BUILD_DIR/grub_arm64.efi;
085b8978b   Tom Rini   gitlab/travis: Re...
143
144
145
146
147
148
149
150
151
152
153
     if [[ "${TEST_PY_BD}" != "" ]]; then
       virtualenv -p /usr/bin/python3 /tmp/venv;
       . /tmp/venv/bin/activate;
       pip install -r test/py/requirements.txt;
       ./test/py/test.py --bd ${TEST_PY_BD} ${TEST_PY_ID}
         -k "${TEST_PY_TEST_SPEC:-not a_test_which_does_not_exist}"
         --build-dir "$UBOOT_TRAVIS_BUILD_DIR";
       ret=$?;
       if [[ $ret -ne 0 ]]; then
         exit $ret;
       fi;
26a426a10   Tom Rini   travis/gitlab/azu...
154
155
156
157
158
159
160
161
       if [[ -n "${TEST_PY_TOOLS}" ]]; then
         export PYTHONPATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc/pylibfdt";
         export PATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc:${PATH}";
         ./tools/binman/binman --toolpath ${UBOOT_TRAVIS_BUILD_DIR}/tools test &&
         ./tools/patman/patman --test &&
         ./tools/buildman/buildman -t &&
         ./tools/dtoc/dtoc -t;
       fi;
8304f0538   Stephen Warren   travis-ci: compil...
162
     fi
c7cb334d1   Meier, Roger   .travis.yml: buil...
163
164
165
166
167
  
  matrix:
    include:
    # we need to build by vendor due to 50min time limit for builds
    # each env setting here is a dedicated build
a032e0a6a   Stephen Warren   travis: give ever...
168
169
      - name: "buildman arc"
        env:
80e4bbfcd   Alexey Brodkin   travisci: Add sup...
170
171
          - BUILDMAN="arc"
            TOOLCHAIN="arc"
a032e0a6a   Stephen Warren   travis: give ever...
172
173
      - name: "buildman arm11 arm7 arm920t arm946es"
        env:
dca268a8f   Tom Rini   .travis.yml: Furt...
174
          - BUILDMAN="arm11 arm7 arm920t arm946es"
725227497   Eugen Hristev   travis-ci: fix at...
175
      - name: "buildman arm926ejs (non-NXP,siemens,at91,kirkwood,spear)"
a032e0a6a   Stephen Warren   travis: give ever...
176
        env:
baade496d   Tom Rini   travis-ci: Try ha...
177
          - JOB="arm926ejs"
725227497   Eugen Hristev   travis-ci: fix at...
178
179
            BUILDMAN="arm926ejs -x freescale,siemens,at91,kirkwood,spear,omap"
      - name: "buildman at91 (non arm v7)"
a032e0a6a   Stephen Warren   travis: give ever...
180
        env:
725227497   Eugen Hristev   travis-ci: fix at...
181
182
183
184
          - BUILDMAN="at91 -x armv7"
      - name: "buildman at91 (non arm926ejs)"
        env:
          - BUILDMAN="at91 -x arm926ejs"
a032e0a6a   Stephen Warren   travis: give ever...
185
186
187
      - name: "buildman boundary engicam toradex"
        env:
          - BUILDMAN="boundary engicam toradex"
7a779ed17   Tom Rini   travis: Exclude M...
188
      - name: "buildman ARM bcm"
50aeb3aec   Tom Rini   travis: Split bcm...
189
        env:
7a779ed17   Tom Rini   travis: Exclude M...
190
          - BUILDMAN="bcm -x mips"
af7716250   Heiko Schocher   travis: rework NX...
191
      - name: "buildman NXP ARM32 (catch-all)"
a032e0a6a   Stephen Warren   travis: give ever...
192
        env:
af7716250   Heiko Schocher   travis: rework NX...
193
194
          - BUILDMAN="freescale -x powerpc,m68k,aarch64,ls101,ls102,ls104,ls108,ls20,lx216"
      - name: "buildman NXP LS101x"
a032e0a6a   Stephen Warren   travis: give ever...
195
        env:
af7716250   Heiko Schocher   travis: rework NX...
196
197
          - BUILDMAN="freescale&ls101"
      - name: "buildman NXP LS102x"
5845ac127   Prabhakar Kushwaha   travis.yml: Add b...
198
        env:
af7716250   Heiko Schocher   travis: rework NX...
199
200
          - BUILDMAN="freescale&ls102"
      - name: "buildman NXP LS104x"
818408e20   Tom Rini   travis: Rework Fr...
201
        env:
af7716250   Heiko Schocher   travis: rework NX...
202
203
          - BUILDMAN="freescale&ls104"
      - name: "buildman NXP LS108x"
aa1326121   Tom Rini   travis: Break up ...
204
        env:
af7716250   Heiko Schocher   travis: rework NX...
205
206
          - BUILDMAN="freescale&ls108"
      - name: "buildman NXP LS20xx"
aa1326121   Tom Rini   travis: Break up ...
207
        env:
af7716250   Heiko Schocher   travis: rework NX...
208
209
          - BUILDMAN="freescale&ls20"
      - name: "buildman NXP LX216x"
5845ac127   Prabhakar Kushwaha   travis.yml: Add b...
210
        env:
af7716250   Heiko Schocher   travis: rework NX...
211
          - BUILDMAN="freescale&lx216"
984c0051a   Tom Rini   travis: Split i.M...
212
      - name: "buildman i.MX6 tqc"
a032e0a6a   Stephen Warren   travis: give ever...
213
        env:
984c0051a   Tom Rini   travis: Split i.M...
214
215
          - BUILDMAN="mx6&tqc"
      - name: "buildman i.MX6 (catch-all)"
a032e0a6a   Stephen Warren   travis: give ever...
216
        env:
984c0051a   Tom Rini   travis: Split i.M...
217
218
219
220
          - BUILDMAN="mx6 -x boundary,engicam,freescale,technexion,toradex,tqc"
      - name: "buildman i.MX (non-i.MX6 catch-all)"
        env:
          - BUILDMAN="mx -x freescale,mx6,toradex,technexion"
548aefa5b   Tom Rini   travis: Move keys...
221
      - name: "buildman keystone 2/3"
a032e0a6a   Stephen Warren   travis: give ever...
222
        env:
548aefa5b   Tom Rini   travis: Move keys...
223
          - BUILDMAN="k2 k3"
a032e0a6a   Stephen Warren   travis: give ever...
224
225
      - name: "buildman samsung socfpga"
        env:
dca268a8f   Tom Rini   .travis.yml: Furt...
226
          - BUILDMAN="samsung socfpga"
818408e20   Tom Rini   travis: Rework Fr...
227
228
229
      - name: "buildman spear"
        env:
          - BUILDMAN="spear"
a032e0a6a   Stephen Warren   travis: give ever...
230
231
      - name: "buildman sun4i"
        env:
baade496d   Tom Rini   travis-ci: Try ha...
232
          - BUILDMAN="sun4i"
a032e0a6a   Stephen Warren   travis: give ever...
233
234
      - name: "buildman sun5i"
        env:
baade496d   Tom Rini   travis-ci: Try ha...
235
          - BUILDMAN="sun5i"
a032e0a6a   Stephen Warren   travis: give ever...
236
237
      - name: "buildman sun6i"
        env:
baade496d   Tom Rini   travis-ci: Try ha...
238
          - BUILDMAN="sun6i"
b5ddd0701   Tuomas Tynkkynen   .travis.yml: Fix ...
239
      - name: "buildman sun7i"
a032e0a6a   Stephen Warren   travis: give ever...
240
        env:
baade496d   Tom Rini   travis-ci: Try ha...
241
          - BUILDMAN="sun7i"
95b221543   Tom Rini   travis: Split sun...
242
      - name: "buildman 64bit sun8i"
a032e0a6a   Stephen Warren   travis: give ever...
243
        env:
56d35f2ed   Heiko Schocher   travis: move oran...
244
          - BUILDMAN="sun8i&aarch64 -x orangepi"
95b221543   Tom Rini   travis: Split sun...
245
246
      - name: "buildman 32bit sun8i"
        env:
56d35f2ed   Heiko Schocher   travis: move oran...
247
          - BUILDMAN="sun8i&armv7 -x orangepi"
a032e0a6a   Stephen Warren   travis: give ever...
248
249
      - name: "buildman sun9i"
        env:
baade496d   Tom Rini   travis-ci: Try ha...
250
          - BUILDMAN="sun9i"
a032e0a6a   Stephen Warren   travis: give ever...
251
252
      - name: "buildman sun50i"
        env:
56d35f2ed   Heiko Schocher   travis: move oran...
253
          - BUILDMAN="sun50i -x orangepi"
a032e0a6a   Stephen Warren   travis: give ever...
254
255
      - name: "buildman catch-all ARM"
        env:
2d4cd12dc   Tom Rini   Azure/Travis: Re-...
256
          - BUILDMAN="arm -x arm11,arm7,arm9,aarch64,at91,bcm,freescale,kirkwood,mvebu,siemens,tegra,uniphier,mx,samsung,sunxi,am33xx,omap,rk,toradex,socfpga,k2,k3,zynq"
a032e0a6a   Stephen Warren   travis: give ever...
257
258
      - name: "buildman sandbox x86"
        env:
050c7569b   Roger Meier   .travis.yml: rewo...
259
          - BUILDMAN="sandbox x86"
0533fb8b3   Bin Meng   travis: Switch to...
260
            TOOLCHAIN="i386"
984c0051a   Tom Rini   travis: Split i.M...
261
262
263
      - name: "buildman technexion"
        env:
          - BUILDMAN="technexion"
b684d4031   Stefan Roese   arm: kirkwood: op...
264
      - name: "buildman kirkwood"
a032e0a6a   Stephen Warren   travis: give ever...
265
        env:
b684d4031   Stefan Roese   arm: kirkwood: op...
266
          - BUILDMAN="kirkwood"
a032e0a6a   Stephen Warren   travis: give ever...
267
268
      - name: "buildman mvebu"
        env:
0bf1bc440   Stefan Roese   travis-ci: Build ...
269
          - BUILDMAN="mvebu"
a032e0a6a   Stephen Warren   travis: give ever...
270
271
      - name: "buildman m68k"
        env:
050c7569b   Roger Meier   .travis.yml: rewo...
272
273
          - BUILDMAN="m68k"
            TOOLCHAIN="m68k"
a032e0a6a   Stephen Warren   travis: give ever...
274
275
      - name: "buildman microblaze"
        env:
0d3aaa35b   Tom Rini   Travis-CI: Fix mi...
276
          - BUILDMAN="microblaze"
76761e7fb   Tom Rini   travis-ci: Add mo...
277
            TOOLCHAIN="microblaze"
a032e0a6a   Stephen Warren   travis: give ever...
278
279
      - name: "buildman mips"
        env:
050c7569b   Roger Meier   .travis.yml: rewo...
280
281
          - BUILDMAN="mips"
            TOOLCHAIN="mips"
a032e0a6a   Stephen Warren   travis: give ever...
282
283
284
      - name: "buildman non-Freescale PowerPC"
        env:
          - BUILDMAN="powerpc -x freescale"
4c58d273e   Daniel Schwierzeck   buildman: support...
285
            TOOLCHAIN="powerpc"
a032e0a6a   Stephen Warren   travis: give ever...
286
287
      - name: "buildman mpc85xx&freescale (excluding many)"
        env:
dca268a8f   Tom Rini   .travis.yml: Furt...
288
          - BUILDMAN="mpc85xx&freescale -x t208xrdb -x t4qds -x t102* -x p1_p2_rdb_pc -x p1010rdb -x corenet_ds -x b4860qds -x bsc91*"
4c58d273e   Daniel Schwierzeck   buildman: support...
289
            TOOLCHAIN="powerpc"
a032e0a6a   Stephen Warren   travis: give ever...
290
291
      - name: "buildman t208xrdb corenet_ds"
        env:
dca268a8f   Tom Rini   .travis.yml: Furt...
292
          - BUILDMAN="t208xrdb corenet_ds"
4c58d273e   Daniel Schwierzeck   buildman: support...
293
            TOOLCHAIN="powerpc"
a032e0a6a   Stephen Warren   travis: give ever...
294
295
      - name: "buildman Freescale PowerPC"
        env:
dca268a8f   Tom Rini   .travis.yml: Furt...
296
          - BUILDMAN="t4qds b4860qds mpc83xx&freescale mpc86xx&freescale"
4c58d273e   Daniel Schwierzeck   buildman: support...
297
            TOOLCHAIN="powerpc"
a032e0a6a   Stephen Warren   travis: give ever...
298
299
      - name: "buildman t102*"
        env:
9464dd56d   Philipp Tomsich   Travis-CI: Split ...
300
          - BUILDMAN="t102*"
4c58d273e   Daniel Schwierzeck   buildman: support...
301
            TOOLCHAIN="powerpc"
a032e0a6a   Stephen Warren   travis: give ever...
302
303
      - name: "buildman p1_p2_rdb_pc"
        env:
afdf09ac2   Tom Rini   travis-ci: Split ...
304
          - BUILDMAN="p1_p2_rdb_pc"
4c58d273e   Daniel Schwierzeck   buildman: support...
305
            TOOLCHAIN="powerpc"
a032e0a6a   Stephen Warren   travis: give ever...
306
307
      - name: "buildman p1010rdb bsc91"
        env:
dca268a8f   Tom Rini   .travis.yml: Furt...
308
          - BUILDMAN="p1010rdb bsc91"
4c58d273e   Daniel Schwierzeck   buildman: support...
309
            TOOLCHAIN="powerpc"
a032e0a6a   Stephen Warren   travis: give ever...
310
311
      - name: "buildman siemens"
        env:
050c7569b   Roger Meier   .travis.yml: rewo...
312
          - BUILDMAN="siemens"
a032e0a6a   Stephen Warren   travis: give ever...
313
314
315
316
317
318
319
320
      - name: "buildman tegra"
        env:
          - BUILDMAN="tegra -x toradex"
      - name: "buildman am33xx (no siemens)"
        env:
          - BUILDMAN="am33xx -x siemens"
      - name: "buildman omap"
        env:
dca268a8f   Tom Rini   .travis.yml: Furt...
321
          - BUILDMAN="omap"
56d35f2ed   Heiko Schocher   travis: move oran...
322
323
324
      - name: "buildman orangepi"
        env:
          - BUILDMAN="orangepi"
a032e0a6a   Stephen Warren   travis: give ever...
325
326
      - name: "buildman uniphier"
        env:
5eba31c38   Tom Rini   travis.yml: Add i...
327
          - BUILDMAN="uniphier"
a032e0a6a   Stephen Warren   travis: give ever...
328
329
      - name: "buildman catch-all AArch64"
        env:
2d4cd12dc   Tom Rini   Azure/Travis: Re-...
330
          - BUILDMAN="aarch64 -x bcm,k3,tegra,ls1,ls2,lx216,mvebu,uniphier,sunxi,samsung,socfpga,rk,versal,zynq"
a032e0a6a   Stephen Warren   travis: give ever...
331
332
      - name: "buildman rockchip"
        env:
2d4cd12dc   Tom Rini   Azure/Travis: Re-...
333
          - BUILDMAN="rk -x orangepi"
a032e0a6a   Stephen Warren   travis: give ever...
334
335
336
      - name: "buildman sh"
        env:
          - BUILDMAN="sh -x arm"
4c58d273e   Daniel Schwierzeck   buildman: support...
337
            TOOLCHAIN="sh"
568356d8d   Tom Rini   travis: Split and...
338
      - name: "buildman Zynq* (ARMv7)"
a032e0a6a   Stephen Warren   travis: give ever...
339
        env:
568356d8d   Tom Rini   travis: Split and...
340
341
342
343
          - BUILDMAN="zynq&armv7"
      - name: "buildman ZynqMP and Versal"
        env:
          - BUILDMAN="versal|zynqmp&aarch64"
a032e0a6a   Stephen Warren   travis: give ever...
344
345
      - name: "buildman xtensa"
        env:
76761e7fb   Tom Rini   travis-ci: Add mo...
346
          - BUILDMAN="xtensa"
b6f3a12ef   Max Filippov   .travis.yml: down...
347
            TOOLCHAIN="xtensa-dc233c-elf"
a032e0a6a   Stephen Warren   travis: give ever...
348
349
      - name: "buildman riscv"
        env:
b6896fcbe   Rick Chen   travis.yml: Suppo...
350
351
          - BUILDMAN="riscv"
            TOOLCHAIN="riscv"
f715ed459   Rick Chen   .travis.yml: Supp...
352
353
354
355
      - name: "buildman nds32"
        env:
          - BUILDMAN="nds32"
            TOOLCHAIN="nds32"
c7cb334d1   Meier, Roger   .travis.yml: buil...
356
357
358
  
      # QA jobs for code analytics
      # static code analysis with cppcheck (we can add --enable=all later)
a032e0a6a   Stephen Warren   travis: give ever...
359
      - name: "cppcheck"
d7882210d   Stephen Warren   travis-ci: set en...
360
        script:
c85b52e43   Tom Rini   travis-ci: Drop '...
361
          - cppcheck --force --quiet --inline-suppr .
bb9a76ea6   Heinrich Schuchardt   travis: build HTM...
362
363
364
365
      # build HTML documentation
      - name: "htmldocs"
        script:
          - make htmldocs
c7cb334d1   Meier, Roger   .travis.yml: buil...
366
      # search for TODO within source tree
a032e0a6a   Stephen Warren   travis: give ever...
367
      - name: "grep TODO"
d7882210d   Stephen Warren   travis-ci: set en...
368
        script:
c85b52e43   Tom Rini   travis-ci: Drop '...
369
          - grep -r TODO .
c7cb334d1   Meier, Roger   .travis.yml: buil...
370
      # search for FIXME within source tree
a032e0a6a   Stephen Warren   travis: give ever...
371
      - name: "grep FIXME HACK"
d7882210d   Stephen Warren   travis-ci: set en...
372
        script:
c85b52e43   Tom Rini   travis-ci: Drop '...
373
          - grep -r FIXME .
c7cb334d1   Meier, Roger   .travis.yml: buil...
374
      # search for HACK within source tree and ignore HACKKIT board
c7cb334d1   Meier, Roger   .travis.yml: buil...
375
376
377
        script:
          - grep -r HACK . | grep -v HACKKIT
      # some statistics about the code base
a032e0a6a   Stephen Warren   travis: give ever...
378
      - name: "sloccount"
d7882210d   Stephen Warren   travis-ci: set en...
379
        script:
c85b52e43   Tom Rini   travis-ci: Drop '...
380
          - sloccount .
ee168783a   Tom Rini   travis: Add check...
381
382
383
384
      # ensure all configs have MAINTAINERS entries
      - name: "Check for configs without MAINTAINERS entry"
        script:
          - if [ `./tools/genboardscfg.py -f 2>&1 | wc -l` -ne 0 ]; then exit 1; fi
80870e2a6   Otavio Salvador   tools: add a gene...
385
386
387
388
      # Ensure host tools build
      - name: "Build tools-only"
        script:
          - make tools-only_config tools-only -j$(nproc)
1f3910da6   Pierre-Jean Texier   ci: add envtools ...
389
390
391
392
      # Ensure env tools build
      - name: "Build envtools"
        script:
          - make tools-only_config envtools -j$(nproc)
8304f0538   Stephen Warren   travis-ci: compil...
393

07bf2122d   Stephen Warren   Enable test/py fo...
394
      # test/py
a032e0a6a   Stephen Warren   travis: give ever...
395
396
      - name: "test/py sandbox"
        env:
8304f0538   Stephen Warren   travis-ci: compil...
397
398
          - TEST_PY_BD="sandbox"
            BUILDMAN="^sandbox$"
0533fb8b3   Bin Meng   travis: Switch to...
399
            TOOLCHAIN="i386"
4030f166f   Tom Rini   travis: Add sandb...
400
401
402
403
      - name: "test/py sandbox with clang"
        env:
          - TEST_PY_BD="sandbox"
            BUILDMAN="^sandbox$"
626b0389e   Tom Rini   travis: Fix the c...
404
            OVERRIDE="-O clang-7"
a032e0a6a   Stephen Warren   travis: give ever...
405
406
      - name: "test/py sandbox_spl"
        env:
40c8d26a4   Tom Rini   travis-ci: Emulat...
407
408
409
          - TEST_PY_BD="sandbox_spl"
            TEST_PY_TEST_SPEC="test_ofplatdata"
            BUILDMAN="^sandbox$"
0533fb8b3   Bin Meng   travis: Switch to...
410
            TOOLCHAIN="i386"
f2d077888   Simon Glass   travis.yml: Run t...
411
            TEST_PY_TOOLS="yes"
a032e0a6a   Stephen Warren   travis: give ever...
412
413
      - name: "test/py sandbox_flattree"
        env:
40c8d26a4   Tom Rini   travis-ci: Emulat...
414
415
          - TEST_PY_BD="sandbox_flattree"
            BUILDMAN="^sandbox_flattree$"
0533fb8b3   Bin Meng   travis: Switch to...
416
            TOOLCHAIN="i386"
998dc83ad   Joel Stanley   travis: Add ASPEE...
417
418
419
420
421
      - name: "test/py evb-ast2500"
        env:
          - TEST_PY_BD="evb-ast2500"
            TEST_PY_ID="--id qemu"
            QEMU_TARGET="arm-softmmu"
998dc83ad   Joel Stanley   travis: Add ASPEE...
422
            BUILDMAN="^evb-ast2500$"
a032e0a6a   Stephen Warren   travis: give ever...
423
424
      - name: "test/py vexpress_ca15_tc2"
        env:
8304f0538   Stephen Warren   travis-ci: compil...
425
426
          - TEST_PY_BD="vexpress_ca15_tc2"
            TEST_PY_ID="--id qemu"
3c643fb01   Tom Rini   travis-ci: Switch...
427
            QEMU_TARGET="arm-softmmu"
8304f0538   Stephen Warren   travis-ci: compil...
428
            BUILDMAN="^vexpress_ca15_tc2$"
a032e0a6a   Stephen Warren   travis: give ever...
429
430
      - name: "test/py vexpress_ca9x4"
        env:
8304f0538   Stephen Warren   travis-ci: compil...
431
432
          - TEST_PY_BD="vexpress_ca9x4"
            TEST_PY_ID="--id qemu"
3c643fb01   Tom Rini   travis-ci: Switch...
433
            QEMU_TARGET="arm-softmmu"
8304f0538   Stephen Warren   travis-ci: compil...
434
            BUILDMAN="^vexpress_ca9x4$"
a032e0a6a   Stephen Warren   travis: give ever...
435
436
      - name: "test/py integratorcp_cm926ejs"
        env:
8304f0538   Stephen Warren   travis-ci: compil...
437
          - TEST_PY_BD="integratorcp_cm926ejs"
78992845a   Alexander Graf   Travis: Remove sl...
438
            TEST_PY_TEST_SPEC="not sleep"
8304f0538   Stephen Warren   travis-ci: compil...
439
            TEST_PY_ID="--id qemu"
3c643fb01   Tom Rini   travis-ci: Switch...
440
            QEMU_TARGET="arm-softmmu"
8304f0538   Stephen Warren   travis-ci: compil...
441
            BUILDMAN="^integratorcp_cm926ejs$"
a032e0a6a   Stephen Warren   travis: give ever...
442
443
      - name: "test/py qemu_arm"
        env:
7b09dffc3   Tuomas Tynkkynen   travis.yml: Add j...
444
445
446
447
          - TEST_PY_BD="qemu_arm"
            TEST_PY_TEST_SPEC="not sleep"
            QEMU_TARGET="arm-softmmu"
            BUILDMAN="^qemu_arm$"
a032e0a6a   Stephen Warren   travis: give ever...
448
449
      - name: "test/py qemu_arm64"
        env:
a5bee5072   Tuomas Tynkkynen   Travis-CI: Add jo...
450
451
452
453
          - TEST_PY_BD="qemu_arm64"
            TEST_PY_TEST_SPEC="not sleep"
            QEMU_TARGET="aarch64-softmmu"
            BUILDMAN="^qemu_arm64$"
a032e0a6a   Stephen Warren   travis: give ever...
454
455
      - name: "test/py qemu_mips"
        env:
8304f0538   Stephen Warren   travis-ci: compil...
456
457
          - TEST_PY_BD="qemu_mips"
            TEST_PY_TEST_SPEC="not sleep"
3c643fb01   Tom Rini   travis-ci: Switch...
458
            QEMU_TARGET="mips-softmmu"
8304f0538   Stephen Warren   travis-ci: compil...
459
460
            BUILDMAN="^qemu_mips$"
            TOOLCHAIN="mips"
a032e0a6a   Stephen Warren   travis: give ever...
461
462
      - name: "test/py qemu_mipsel"
        env:
8304f0538   Stephen Warren   travis-ci: compil...
463
464
          - TEST_PY_BD="qemu_mipsel"
            TEST_PY_TEST_SPEC="not sleep"
3c643fb01   Tom Rini   travis-ci: Switch...
465
            QEMU_TARGET="mipsel-softmmu"
8304f0538   Stephen Warren   travis-ci: compil...
466
467
            BUILDMAN="^qemu_mipsel$"
            TOOLCHAIN="mips"
a032e0a6a   Stephen Warren   travis: give ever...
468
469
      - name: "test/py qemu_mips64"
        env:
8304f0538   Stephen Warren   travis-ci: compil...
470
471
          - TEST_PY_BD="qemu_mips64"
            TEST_PY_TEST_SPEC="not sleep"
3c643fb01   Tom Rini   travis-ci: Switch...
472
            QEMU_TARGET="mips64-softmmu"
8304f0538   Stephen Warren   travis-ci: compil...
473
474
            BUILDMAN="^qemu_mips64$"
            TOOLCHAIN="mips"
a032e0a6a   Stephen Warren   travis: give ever...
475
476
      - name: "test/py qemu_mips64el"
        env:
8304f0538   Stephen Warren   travis-ci: compil...
477
478
          - TEST_PY_BD="qemu_mips64el"
            TEST_PY_TEST_SPEC="not sleep"
3c643fb01   Tom Rini   travis-ci: Switch...
479
            QEMU_TARGET="mips64el-softmmu"
8304f0538   Stephen Warren   travis-ci: compil...
480
481
            BUILDMAN="^qemu_mips64el$"
            TOOLCHAIN="mips"
a032e0a6a   Stephen Warren   travis: give ever...
482
483
      - name: "test/py qemu-ppce500"
        env:
8304f0538   Stephen Warren   travis-ci: compil...
484
485
          - TEST_PY_BD="qemu-ppce500"
            TEST_PY_TEST_SPEC="not sleep"
3c643fb01   Tom Rini   travis-ci: Switch...
486
            QEMU_TARGET="ppc-softmmu"
8304f0538   Stephen Warren   travis-ci: compil...
487
            BUILDMAN="^qemu-ppce500$"
4c58d273e   Daniel Schwierzeck   buildman: support...
488
            TOOLCHAIN="powerpc"
22c7b7d63   Heinrich Schuchardt   travis.yml: run P...
489
490
491
492
493
494
495
      - name: "test/py qemu-riscv64"
        env:
          - TEST_PY_BD="qemu-riscv64"
            TEST_PY_TEST_SPEC="not sleep"
            QEMU_TARGET="riscv64-softmmu"
            BUILDMAN="^qemu-riscv64$"
            TOOLCHAIN="riscv"
a032e0a6a   Stephen Warren   travis: give ever...
496
497
      - name: "test/py qemu-x86"
        env:
8304f0538   Stephen Warren   travis-ci: compil...
498
499
          - TEST_PY_BD="qemu-x86"
            TEST_PY_TEST_SPEC="not sleep"
3c643fb01   Tom Rini   travis-ci: Switch...
500
            QEMU_TARGET="i386-softmmu"
8304f0538   Stephen Warren   travis-ci: compil...
501
            BUILDMAN="^qemu-x86$"
0533fb8b3   Bin Meng   travis: Switch to...
502
            TOOLCHAIN="i386"
8304f0538   Stephen Warren   travis-ci: compil...
503
            BUILD_ROM="yes"
3fdfca7a7   Bin Meng   travis: Add qemu-...
504
505
506
507
508
509
510
511
      - name: "test/py qemu-x86_64"
        env:
          - TEST_PY_BD="qemu-x86_64"
            TEST_PY_TEST_SPEC="not sleep"
            QEMU_TARGET="x86_64-softmmu"
            BUILDMAN="^qemu-x86_64$"
            TOOLCHAIN="i386"
            BUILD_ROM="yes"
a032e0a6a   Stephen Warren   travis: give ever...
512
513
      - name: "test/py zynq_zc702"
        env:
41122d374   Michal Simek   travis-ci: Add zy...
514
515
516
517
518
          - TEST_PY_BD="zynq_zc702"
            TEST_PY_TEST_SPEC="not sleep"
            QEMU_TARGET="arm-softmmu"
            TEST_PY_ID="--id qemu"
            BUILDMAN="^zynq_zc702$"
d9eaae3ba   Michal Simek   travis: Wire Xili...
519
520
521
522
523
524
525
      - name: "test/py xilinx_versal_virt"
        env:
          - TEST_PY_BD="xilinx_versal_virt"
            TEST_PY_TEST_SPEC="not sleep"
            QEMU_TARGET="aarch64-softmmu"
            TEST_PY_ID="--id qemu"
            BUILDMAN="^xilinx_versal_virt$"
a032e0a6a   Stephen Warren   travis: give ever...
526
527
      - name: "test/py xtfpga"
        env:
4d6900946   Max Filippov   .travis.yml: test...
528
529
530
531
532
533
          - TEST_PY_BD="xtfpga"
            TEST_PY_TEST_SPEC="not sleep"
            QEMU_TARGET="xtensa-softmmu"
            TEST_PY_ID="--id qemu"
            BUILDMAN="^xtfpga$"
            TOOLCHAIN="xtensa-dc233c-elf"
c7cb334d1   Meier, Roger   .travis.yml: buil...
534

c7cb334d1   Meier, Roger   .travis.yml: buil...
535
  # TODO make it perfect ;-r