Tom Rini | 10e4779 | 2018-05-06 17:58:06 -0400 | [diff] [blame] | 1 | # SPDX-License-Identifier: GPL-2.0+ |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 2 | # Copyright Roger Meier <r.meier@siemens.com> |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 3 | |
| 4 | # build U-Boot on Travis CI - https://travis-ci.org/ |
| 5 | |
Tom Rini | 9569d66 | 2016-10-20 11:03:19 -0400 | [diff] [blame] | 6 | sudo: required |
| 7 | dist: trusty |
Stephen Warren | a427efc | 2016-02-03 10:41:34 -0700 | [diff] [blame] | 8 | |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 9 | language: c |
| 10 | |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 11 | addons: |
| 12 | apt: |
Tom Rini | 89d8880 | 2018-10-07 14:20:30 -0400 | [diff] [blame] | 13 | sources: |
| 14 | - ubuntu-toolchain-r-test |
| 15 | - llvm-toolchain-trusty-7 |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 16 | packages: |
| 17 | - cppcheck |
| 18 | - sloccount |
| 19 | - sparse |
| 20 | - bc |
| 21 | - build-essential |
| 22 | - libsdl1.2-dev |
Stephen Warren | ef52e41 | 2016-02-08 18:23:35 -0700 | [diff] [blame] | 23 | - python |
| 24 | - python-virtualenv |
Tom Rini | 89d191f | 2017-01-23 17:40:22 -0500 | [diff] [blame] | 25 | - swig |
| 26 | - libpython-dev |
Tom Rini | e1776a8 | 2016-10-20 11:08:26 -0400 | [diff] [blame] | 27 | - iasl |
Alexander Graf | d558629 | 2016-11-18 13:18:00 +0100 | [diff] [blame] | 28 | - grub-efi-ia32-bin |
Bin Meng | 51c8711 | 2018-10-13 20:52:12 -0700 | [diff] [blame] | 29 | - grub-efi-amd64-bin |
Alexander Graf | d558629 | 2016-11-18 13:18:00 +0100 | [diff] [blame] | 30 | - rpm2cpio |
| 31 | - wget |
Tom Rini | 61d0fac | 2017-09-23 13:00:57 -0400 | [diff] [blame] | 32 | - device-tree-compiler |
Tom Rini | 2ad6990 | 2018-03-14 14:02:49 -0400 | [diff] [blame] | 33 | - lzop |
Simon Glass | 7ba3359 | 2018-09-14 04:57:26 -0600 | [diff] [blame] | 34 | - liblz4-tool |
Tom Rini | 89d8880 | 2018-10-07 14:20:30 -0400 | [diff] [blame] | 35 | - libisl15 |
| 36 | - clang-7 |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 37 | |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 38 | install: |
Tom Rini | 719ad57 | 2016-10-20 11:26:40 -0400 | [diff] [blame] | 39 | # Clone uboot-test-hooks |
| 40 | - git clone --depth=1 git://github.com/swarren/uboot-test-hooks.git /tmp/uboot-test-hooks |
| 41 | - ln -s travis-ci /tmp/uboot-test-hooks/bin/`hostname` |
| 42 | - ln -s travis-ci /tmp/uboot-test-hooks/py/`hostname` |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 43 | # prepare buildman environment |
Stephen Warren | 05bc432 | 2016-10-26 11:05:31 -0600 | [diff] [blame] | 44 | - echo -e "[toolchain]\nroot = /usr" > ~/.buildman |
Alexey Brodkin | ed37920 | 2018-03-30 16:34:55 +0300 | [diff] [blame] | 45 | - echo -e "arc = /tmp/arc_gnu_2017.09_prebuilt_uclibc_le_archs_linux_install" >> ~/.buildman |
Tom Rini | 9662fa2 | 2018-05-10 07:15:54 -0400 | [diff] [blame] | 46 | - echo -e "\n[toolchain-alias]\nsh = sh2\n" >> ~/.buildman |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 47 | - cat ~/.buildman |
Stephen Warren | ef52e41 | 2016-02-08 18:23:35 -0700 | [diff] [blame] | 48 | - virtualenv /tmp/venv |
| 49 | - . /tmp/venv/bin/activate |
| 50 | - pip install pytest |
Simon Glass | 7057d02 | 2018-10-01 21:12:47 -0600 | [diff] [blame] | 51 | - pip install python-subunit |
Alexander Graf | d558629 | 2016-11-18 13:18:00 +0100 | [diff] [blame] | 52 | - grub-mkimage -o ~/grub_x86.efi -O i386-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd |
Bin Meng | 51c8711 | 2018-10-13 20:52:12 -0700 | [diff] [blame] | 53 | - grub-mkimage -o ~/grub_x64.efi -O x86_64-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd |
Alexander Graf | d558629 | 2016-11-18 13:18:00 +0100 | [diff] [blame] | 54 | - mkdir ~/grub2-arm |
| 55 | - ( 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 ) |
Tuomas Tynkkynen | 5fd4740 | 2018-01-11 16:11:25 +0200 | [diff] [blame] | 56 | - mkdir ~/grub2-arm64 |
| 57 | - ( 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 ) |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 58 | |
| 59 | env: |
| 60 | global: |
Tom Rini | 61d0fac | 2017-09-23 13:00:57 -0400 | [diff] [blame] | 61 | - PATH=/tmp/qemu-install/bin:/tmp/uboot-test-hooks/bin:/usr/bin:/bin |
Alexander Graf | c4d32e2 | 2016-11-17 18:31:04 +0100 | [diff] [blame] | 62 | - PYTHONPATH=/tmp/uboot-test-hooks/py/travis-ci |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 63 | - BUILD_DIR=build |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 64 | - HOSTCC="cc" |
| 65 | - HOSTCXX="c++" |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 66 | |
| 67 | before_script: |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 68 | # install toolchains based on TOOLCHAIN} variable |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 69 | - if [[ "${TOOLCHAIN}" == *m68k* ]]; then ./tools/buildman/buildman --fetch-arch m68k ; fi |
Tom Rini | e1776a8 | 2016-10-20 11:08:26 -0400 | [diff] [blame] | 70 | - if [[ "${TOOLCHAIN}" == *microblaze* ]]; then ./tools/buildman/buildman --fetch-arch microblaze ; fi |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 71 | - if [[ "${TOOLCHAIN}" == *mips* ]]; then ./tools/buildman/buildman --fetch-arch mips ; fi |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 72 | - if [[ "${TOOLCHAIN}" == *sh* ]]; then ./tools/buildman/buildman --fetch-arch sh2 ; fi |
Bin Meng | a2086a8 | 2018-10-08 16:53:54 -0700 | [diff] [blame] | 73 | - if [[ "${TOOLCHAIN}" == *i386* ]]; then |
| 74 | ./tools/buildman/buildman --fetch-arch i386; |
| 75 | echo -e "\n[toolchain-alias]\nx86 = i386" >> ~/.buildman; |
Stephen Warren | 7cb9402 | 2016-10-26 11:05:33 -0600 | [diff] [blame] | 76 | fi |
Alexey Brodkin | 8bfb9f1 | 2017-04-21 13:35:43 +0300 | [diff] [blame] | 77 | - if [[ "${TOOLCHAIN}" == arc ]]; then |
Alexey Brodkin | ed37920 | 2018-03-30 16:34:55 +0300 | [diff] [blame] | 78 | wget https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/download/arc-2017.09-release/arc_gnu_2017.09_prebuilt_uclibc_le_archs_linux_install.tar.gz && |
| 79 | tar -C /tmp -xf arc_gnu_2017.09_prebuilt_uclibc_le_archs_linux_install.tar.gz; |
Alexey Brodkin | 8bfb9f1 | 2017-04-21 13:35:43 +0300 | [diff] [blame] | 80 | fi |
Max Filippov | 8cb1584 | 2018-02-07 15:30:01 -0800 | [diff] [blame] | 81 | - if [[ "${TOOLCHAIN}" == *xtensa* ]]; then |
| 82 | wget https://github.com/foss-xtensa/toolchain/releases/download/2018.02/x86_64-2018.02-${TOOLCHAIN}.tar.gz && |
| 83 | tar -C /tmp -xf x86_64-2018.02-${TOOLCHAIN}.tar.gz && |
| 84 | echo -e "\n[toolchain-prefix]\nxtensa = /tmp/2018.02/${TOOLCHAIN}/bin/${TOOLCHAIN}-" >> ~/.buildman; |
| 85 | fi |
Tom Rini | b060eb0 | 2017-04-14 19:47:51 -0400 | [diff] [blame] | 86 | # If TOOLCHAIN is unset, we're on some flavour of ARM. |
| 87 | - if [[ "${TOOLCHAIN}" == "" ]]; then |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 88 | ./tools/buildman/buildman --fetch-arch arm && |
| 89 | ./tools/buildman/buildman --fetch-arch aarch64; |
Tom Rini | b060eb0 | 2017-04-14 19:47:51 -0400 | [diff] [blame] | 90 | fi |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 91 | - if [[ "${TOOLCHAIN}" == "powerpc" ]]; then ./tools/buildman/buildman --fetch-arch powerpc; fi |
Rick Chen | 626605d | 2018-01-12 14:57:09 +0800 | [diff] [blame] | 92 | - if [[ "${TOOLCHAIN}" == "riscv" ]]; then |
Bin Meng | b14d508 | 2018-08-30 06:17:06 -0700 | [diff] [blame] | 93 | ./tools/buildman/buildman --fetch-arch riscv64; |
| 94 | echo -e "\n[toolchain-alias]\nriscv = riscv64" >> ~/.buildman; |
Rick Chen | 626605d | 2018-01-12 14:57:09 +0800 | [diff] [blame] | 95 | fi |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 96 | - if [[ "${QEMU_TARGET}" != "" ]]; then |
| 97 | git clone git://git.qemu.org/qemu.git /tmp/qemu; |
| 98 | pushd /tmp/qemu; |
| 99 | git submodule update --init dtc && |
Bin Meng | 950cbba | 2018-10-13 20:52:13 -0700 | [diff] [blame^] | 100 | git checkout v3.0.0 && |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 101 | ./configure --prefix=/tmp/qemu-install --target-list=${QEMU_TARGET} && |
| 102 | make -j4 all install; |
| 103 | popd; |
| 104 | fi |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 105 | |
| 106 | script: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 107 | # Comments must be outside the command strings below, or the Travis parser |
| 108 | # will get confused. |
| 109 | # |
Tom Rini | 89d8880 | 2018-10-07 14:20:30 -0400 | [diff] [blame] | 110 | # From buildman, exit code 129 means warnings only. If we've been asked to |
| 111 | # use clang only do one configuration. |
| 112 | - if [[ "${TOOLCHAIN}" == "clang" ]]; then |
| 113 | ret=0; |
| 114 | make O=../.bm-work/${TEST_PY_BD} HOSTCC=clang-7 CC=clang-7 -j$(nproc) |
| 115 | KCFLAGS=-Werror sandbox_config all || ret=$?; |
| 116 | if [[ $ret -ne 0 ]]; then |
| 117 | exit $ret; |
| 118 | fi; |
| 119 | elif [[ "${BUILDMAN}" != "" ]]; then |
Daniel Schwierzeck | d31451a | 2018-01-26 16:31:06 +0100 | [diff] [blame] | 120 | ret=0; |
Daniel Schwierzeck | 5cd6f92 | 2018-01-26 16:31:07 +0100 | [diff] [blame] | 121 | tools/buildman/buildman -P -E ${BUILDMAN} || ret=$?; |
Stephen Warren | cf1cebf | 2016-10-26 11:05:35 -0600 | [diff] [blame] | 122 | if [[ $ret -ne 0 && $ret -ne 129 ]]; then |
Tom Rini | d30ec58 | 2016-11-05 19:34:49 -0400 | [diff] [blame] | 123 | tools/buildman/buildman -sdeP ${BUILDMAN}; |
Stephen Warren | a0d0c22 | 2016-10-26 11:05:32 -0600 | [diff] [blame] | 124 | exit $ret; |
| 125 | fi; |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 126 | fi |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 127 | # "not a_test_which_does_not_exist" is a dummy -k parameter which will |
| 128 | # never prevent any test from running. That way, we can always pass |
| 129 | # "-k something" even when $TEST_PY_TEST_SPEC doesnt need a custom |
| 130 | # value. |
Alexander Graf | 3ec0a41 | 2016-11-17 18:31:03 +0100 | [diff] [blame] | 131 | - export UBOOT_TRAVIS_BUILD_DIR=`cd .. && pwd`/.bm-work/${TEST_PY_BD}; |
Alexander Graf | d558629 | 2016-11-18 13:18:00 +0100 | [diff] [blame] | 132 | cp ~/grub_x86.efi $UBOOT_TRAVIS_BUILD_DIR/; |
Bin Meng | 51c8711 | 2018-10-13 20:52:12 -0700 | [diff] [blame] | 133 | cp ~/grub_x64.efi $UBOOT_TRAVIS_BUILD_DIR/; |
Alexander Graf | d558629 | 2016-11-18 13:18:00 +0100 | [diff] [blame] | 134 | cp ~/grub2-arm/usr/lib/grub2/arm-efi/grub.efi $UBOOT_TRAVIS_BUILD_DIR/grub_arm.efi; |
Tuomas Tynkkynen | 5fd4740 | 2018-01-11 16:11:25 +0200 | [diff] [blame] | 135 | cp ~/grub2-arm64/usr/lib/grub2/arm64-efi/grub.efi $UBOOT_TRAVIS_BUILD_DIR/grub_arm64.efi; |
Alexander Graf | 3ec0a41 | 2016-11-17 18:31:03 +0100 | [diff] [blame] | 136 | if [[ "${TEST_PY_BD}" != "" ]]; then |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 137 | ./test/py/test.py --bd ${TEST_PY_BD} ${TEST_PY_ID} |
| 138 | -k "${TEST_PY_TEST_SPEC:-not a_test_which_does_not_exist}" |
Alexander Graf | 3ec0a41 | 2016-11-17 18:31:03 +0100 | [diff] [blame] | 139 | --build-dir "$UBOOT_TRAVIS_BUILD_DIR"; |
Simon Glass | 23f4d6a | 2017-11-26 20:26:00 -0700 | [diff] [blame] | 140 | ret=$?; |
| 141 | if [[ $ret -ne 0 ]]; then |
| 142 | exit $ret; |
| 143 | fi; |
| 144 | fi; |
| 145 | if [[ -n "${TEST_PY_TOOLS}" ]]; then |
| 146 | PYTHONPATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc/pylibfdt" |
| 147 | PATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc:${PATH}" |
| 148 | ./tools/binman/binman -t && |
| 149 | ./tools/patman/patman --test && |
| 150 | ./tools/buildman/buildman -t && |
| 151 | PYTHONPATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc/pylibfdt" |
| 152 | PATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc:${PATH}" |
| 153 | ./tools/dtoc/dtoc -t; |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 154 | fi |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 155 | |
| 156 | matrix: |
| 157 | include: |
| 158 | # we need to build by vendor due to 50min time limit for builds |
| 159 | # each env setting here is a dedicated build |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 160 | - name: "buildman arc" |
| 161 | env: |
Alexey Brodkin | 8bfb9f1 | 2017-04-21 13:35:43 +0300 | [diff] [blame] | 162 | - BUILDMAN="arc" |
| 163 | TOOLCHAIN="arc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 164 | - name: "buildman arm11 arm7 arm920t arm946es" |
| 165 | env: |
Tom Rini | 9662fa2 | 2018-05-10 07:15:54 -0400 | [diff] [blame] | 166 | - BUILDMAN="arm11 arm7 arm920t arm946es" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 167 | - name: "buildman arm926ejs (non-mx,siemens,atmel,kirkwood)" |
| 168 | env: |
Tom Rini | d30ec58 | 2016-11-05 19:34:49 -0400 | [diff] [blame] | 169 | - JOB="arm926ejs" |
Tom Rini | 578a5eb | 2018-07-31 14:48:42 -0400 | [diff] [blame] | 170 | BUILDMAN="arm926ejs -x mx,siemens,atmel,kirkwood" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 171 | - name: "buildman atmel" |
| 172 | env: |
Andy Shevchenko | 8cb5cdd | 2017-07-05 16:25:22 +0300 | [diff] [blame] | 173 | - BUILDMAN="atmel" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 174 | - name: "buildman boundary engicam toradex" |
| 175 | env: |
| 176 | - BUILDMAN="boundary engicam toradex" |
| 177 | - name: "buildman Freescale ARM32" |
| 178 | env: |
| 179 | - BUILDMAN="freescale -x powerpc,m68k,aarch64" |
| 180 | - name: "buildman Freescale AArch64" |
| 181 | env: |
| 182 | - BUILDMAN="freescale&aarch64" |
| 183 | - name: "buildman i.MX6 (non-Freescale)" |
| 184 | env: |
| 185 | - BUILDMAN="mx6 -x freescale,toradex,boundary,engicam" |
| 186 | - name: "buildman i.MX (non-Freescale,i.MX6,toradex)" |
| 187 | env: |
| 188 | - BUILDMAN="mx -x freescale,mx6,toradex" |
| 189 | - name: "buildman k2" |
| 190 | env: |
Tom Rini | b715542 | 2017-10-06 16:37:06 -0400 | [diff] [blame] | 191 | - BUILDMAN="k2" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 192 | - name: "buildman samsung socfpga" |
| 193 | env: |
Tom Rini | 9662fa2 | 2018-05-10 07:15:54 -0400 | [diff] [blame] | 194 | - BUILDMAN="samsung socfpga" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 195 | - name: "buildman sun4i" |
| 196 | env: |
Tom Rini | d30ec58 | 2016-11-05 19:34:49 -0400 | [diff] [blame] | 197 | - BUILDMAN="sun4i" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 198 | - name: "buildman sun5i" |
| 199 | env: |
Tom Rini | d30ec58 | 2016-11-05 19:34:49 -0400 | [diff] [blame] | 200 | - BUILDMAN="sun5i" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 201 | - name: "buildman sun6i" |
| 202 | env: |
Tom Rini | d30ec58 | 2016-11-05 19:34:49 -0400 | [diff] [blame] | 203 | - BUILDMAN="sun6i" |
Tuomas Tynkkynen | ba67d03 | 2018-09-08 00:53:18 +0300 | [diff] [blame] | 204 | - name: "buildman sun7i" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 205 | env: |
Tom Rini | d30ec58 | 2016-11-05 19:34:49 -0400 | [diff] [blame] | 206 | - BUILDMAN="sun7i" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 207 | - name: "buildman sun8i" |
| 208 | env: |
Tom Rini | b060eb0 | 2017-04-14 19:47:51 -0400 | [diff] [blame] | 209 | - BUILDMAN="sun8i" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 210 | - name: "buildman sun9i" |
| 211 | env: |
Tom Rini | d30ec58 | 2016-11-05 19:34:49 -0400 | [diff] [blame] | 212 | - BUILDMAN="sun9i" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 213 | - name: "buildman sun50i" |
| 214 | env: |
Tom Rini | d30ec58 | 2016-11-05 19:34:49 -0400 | [diff] [blame] | 215 | - BUILDMAN="sun50i" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 216 | - name: "buildman catch-all ARM" |
| 217 | env: |
| 218 | - BUILDMAN="arm -x arm11,arm7,arm9,aarch64,atmel,freescale,kirkwood,mvebu,siemens,tegra,uniphier,mx,samsung,sunxi,am33xx,omap,pxa,rockchip,toradex,socfpga,k2,xilinx" |
| 219 | - name: "buildman sandbox x86" |
| 220 | env: |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 221 | - BUILDMAN="sandbox x86" |
Bin Meng | a2086a8 | 2018-10-08 16:53:54 -0700 | [diff] [blame] | 222 | TOOLCHAIN="i386" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 223 | - name: "buildman kirkwood (excluding openrd)" |
| 224 | env: |
Tom Rini | f24177d | 2018-07-31 14:49:34 -0400 | [diff] [blame] | 225 | - BUILDMAN="kirkwood -x openrd" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 226 | - name: "buildman mvebu" |
| 227 | env: |
Stefan Roese | 2670ab0 | 2016-12-01 13:52:08 +0100 | [diff] [blame] | 228 | - BUILDMAN="mvebu" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 229 | - name: "buildman PXA (non-toradex)" |
| 230 | env: |
Tom Rini | a49f5d9 | 2017-10-06 11:19:12 -0400 | [diff] [blame] | 231 | - BUILDMAN="pxa -x toradex" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 232 | - name: "buildman m68k" |
| 233 | env: |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 234 | - BUILDMAN="m68k" |
| 235 | TOOLCHAIN="m68k" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 236 | - name: "buildman microblaze" |
| 237 | env: |
Tom Rini | 1d54325 | 2017-10-07 15:54:18 -0400 | [diff] [blame] | 238 | - BUILDMAN="microblaze" |
Tom Rini | 31fedfe | 2016-10-20 11:23:15 -0400 | [diff] [blame] | 239 | TOOLCHAIN="microblaze" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 240 | - name: "buildman mips" |
| 241 | env: |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 242 | - BUILDMAN="mips" |
| 243 | TOOLCHAIN="mips" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 244 | - name: "buildman non-Freescale PowerPC" |
| 245 | env: |
| 246 | - BUILDMAN="powerpc -x freescale" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 247 | TOOLCHAIN="powerpc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 248 | - name: "buildman mpc85xx&freescale (excluding many)" |
| 249 | env: |
Tom Rini | 9662fa2 | 2018-05-10 07:15:54 -0400 | [diff] [blame] | 250 | - BUILDMAN="mpc85xx&freescale -x t208xrdb -x t4qds -x t102* -x p1_p2_rdb_pc -x p1010rdb -x corenet_ds -x b4860qds -x bsc91*" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 251 | TOOLCHAIN="powerpc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 252 | - name: "buildman t208xrdb corenet_ds" |
| 253 | env: |
Tom Rini | 9662fa2 | 2018-05-10 07:15:54 -0400 | [diff] [blame] | 254 | - BUILDMAN="t208xrdb corenet_ds" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 255 | TOOLCHAIN="powerpc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 256 | - name: "buildman Freescale PowerPC" |
| 257 | env: |
Tom Rini | 9662fa2 | 2018-05-10 07:15:54 -0400 | [diff] [blame] | 258 | - BUILDMAN="t4qds b4860qds mpc83xx&freescale mpc86xx&freescale" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 259 | TOOLCHAIN="powerpc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 260 | - name: "buildman t102*" |
| 261 | env: |
Philipp Tomsich | b0bfa76 | 2017-12-20 11:06:31 +0100 | [diff] [blame] | 262 | - BUILDMAN="t102*" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 263 | TOOLCHAIN="powerpc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 264 | - name: "buildman p1_p2_rdb_pc" |
| 265 | env: |
Tom Rini | 180af9f | 2017-01-21 17:58:08 -0500 | [diff] [blame] | 266 | - BUILDMAN="p1_p2_rdb_pc" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 267 | TOOLCHAIN="powerpc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 268 | - name: "buildman p1010rdb bsc91" |
| 269 | env: |
Tom Rini | 9662fa2 | 2018-05-10 07:15:54 -0400 | [diff] [blame] | 270 | - BUILDMAN="p1010rdb bsc91" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 271 | TOOLCHAIN="powerpc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 272 | - name: "buildman siemens" |
| 273 | env: |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 274 | - BUILDMAN="siemens" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 275 | - name: "buildman tegra" |
| 276 | env: |
| 277 | - BUILDMAN="tegra -x toradex" |
| 278 | - name: "buildman am33xx (no siemens)" |
| 279 | env: |
| 280 | - BUILDMAN="am33xx -x siemens" |
| 281 | - name: "buildman omap" |
| 282 | env: |
Tom Rini | 9662fa2 | 2018-05-10 07:15:54 -0400 | [diff] [blame] | 283 | - BUILDMAN="omap" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 284 | - name: "buildman uniphier" |
| 285 | env: |
Tom Rini | c0d6eb1 | 2016-10-29 17:11:17 -0400 | [diff] [blame] | 286 | - BUILDMAN="uniphier" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 287 | - name: "buildman catch-all AArch64" |
| 288 | env: |
| 289 | - BUILDMAN="aarch64 -x tegra,freescale,mvebu,uniphier,sunxi,samsung,rockchip,xilinx" |
| 290 | - name: "buildman rockchip" |
| 291 | env: |
Tom Rini | 8d24f80 | 2016-11-29 12:41:19 -0500 | [diff] [blame] | 292 | - BUILDMAN="rockchip" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 293 | - name: "buildman sh" |
| 294 | env: |
| 295 | - BUILDMAN="sh -x arm" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 296 | TOOLCHAIN="sh" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 297 | - name: "buildman Xilinx (ARM)" |
| 298 | env: |
| 299 | - BUILDMAN="xilinx -x microblaze" |
| 300 | - name: "buildman xtensa" |
| 301 | env: |
Tom Rini | 31fedfe | 2016-10-20 11:23:15 -0400 | [diff] [blame] | 302 | - BUILDMAN="xtensa" |
Max Filippov | 8cb1584 | 2018-02-07 15:30:01 -0800 | [diff] [blame] | 303 | TOOLCHAIN="xtensa-dc233c-elf" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 304 | - name: "buildman riscv" |
| 305 | env: |
Rick Chen | 626605d | 2018-01-12 14:57:09 +0800 | [diff] [blame] | 306 | - BUILDMAN="riscv" |
| 307 | TOOLCHAIN="riscv" |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 308 | |
| 309 | # QA jobs for code analytics |
| 310 | # static code analysis with cppcheck (we can add --enable=all later) |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 311 | - name: "cppcheck" |
Stephen Warren | 1c4c3d6 | 2016-10-24 16:41:48 -0600 | [diff] [blame] | 312 | script: |
Tom Rini | 5770a14 | 2016-10-20 11:24:52 -0400 | [diff] [blame] | 313 | - cppcheck --force --quiet --inline-suppr . |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 314 | # search for TODO within source tree |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 315 | - name: "grep TODO" |
Stephen Warren | 1c4c3d6 | 2016-10-24 16:41:48 -0600 | [diff] [blame] | 316 | script: |
Tom Rini | 5770a14 | 2016-10-20 11:24:52 -0400 | [diff] [blame] | 317 | - grep -r TODO . |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 318 | # search for FIXME within source tree |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 319 | - name: "grep FIXME HACK" |
Stephen Warren | 1c4c3d6 | 2016-10-24 16:41:48 -0600 | [diff] [blame] | 320 | script: |
Tom Rini | 5770a14 | 2016-10-20 11:24:52 -0400 | [diff] [blame] | 321 | - grep -r FIXME . |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 322 | # search for HACK within source tree and ignore HACKKIT board |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 323 | script: |
| 324 | - grep -r HACK . | grep -v HACKKIT |
| 325 | # some statistics about the code base |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 326 | - name: "sloccount" |
Stephen Warren | 1c4c3d6 | 2016-10-24 16:41:48 -0600 | [diff] [blame] | 327 | script: |
Tom Rini | 5770a14 | 2016-10-20 11:24:52 -0400 | [diff] [blame] | 328 | - sloccount . |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 329 | |
Stephen Warren | ef52e41 | 2016-02-08 18:23:35 -0700 | [diff] [blame] | 330 | # test/py |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 331 | - name: "test/py sandbox" |
| 332 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 333 | - TEST_PY_BD="sandbox" |
| 334 | BUILDMAN="^sandbox$" |
Bin Meng | a2086a8 | 2018-10-08 16:53:54 -0700 | [diff] [blame] | 335 | TOOLCHAIN="i386" |
Tom Rini | 89d8880 | 2018-10-07 14:20:30 -0400 | [diff] [blame] | 336 | - name: "test/py sandbox with clang" |
| 337 | env: |
| 338 | - TEST_PY_BD="sandbox" |
| 339 | BUILDMAN="^sandbox$" |
| 340 | TOOLCHAIN="clang" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 341 | - name: "test/py sandbox_spl" |
| 342 | env: |
Tom Rini | fe9ef11 | 2017-08-07 15:24:50 -0400 | [diff] [blame] | 343 | - TEST_PY_BD="sandbox_spl" |
| 344 | TEST_PY_TEST_SPEC="test_ofplatdata" |
| 345 | BUILDMAN="^sandbox$" |
Bin Meng | a2086a8 | 2018-10-08 16:53:54 -0700 | [diff] [blame] | 346 | TOOLCHAIN="i386" |
Simon Glass | 23f4d6a | 2017-11-26 20:26:00 -0700 | [diff] [blame] | 347 | TEST_PY_TOOLS="yes" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 348 | - name: "test/py sandbox_flattree" |
| 349 | env: |
Tom Rini | fe9ef11 | 2017-08-07 15:24:50 -0400 | [diff] [blame] | 350 | - TEST_PY_BD="sandbox_flattree" |
| 351 | BUILDMAN="^sandbox_flattree$" |
Bin Meng | a2086a8 | 2018-10-08 16:53:54 -0700 | [diff] [blame] | 352 | TOOLCHAIN="i386" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 353 | - name: "test/py vexpress_ca15_tc2" |
| 354 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 355 | - TEST_PY_BD="vexpress_ca15_tc2" |
| 356 | TEST_PY_ID="--id qemu" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 357 | QEMU_TARGET="arm-softmmu" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 358 | BUILDMAN="^vexpress_ca15_tc2$" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 359 | - name: "test/py vexpress_ca9x4" |
| 360 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 361 | - TEST_PY_BD="vexpress_ca9x4" |
| 362 | TEST_PY_ID="--id qemu" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 363 | QEMU_TARGET="arm-softmmu" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 364 | BUILDMAN="^vexpress_ca9x4$" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 365 | - name: "test/py integratorcp_cm926ejs" |
| 366 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 367 | - TEST_PY_BD="integratorcp_cm926ejs" |
Alexander Graf | f97f532 | 2016-11-17 18:31:07 +0100 | [diff] [blame] | 368 | TEST_PY_TEST_SPEC="not sleep" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 369 | TEST_PY_ID="--id qemu" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 370 | QEMU_TARGET="arm-softmmu" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 371 | BUILDMAN="^integratorcp_cm926ejs$" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 372 | - name: "test/py qemu_arm" |
| 373 | env: |
Tuomas Tynkkynen | 5ed6846 | 2017-09-19 23:18:08 +0300 | [diff] [blame] | 374 | - TEST_PY_BD="qemu_arm" |
| 375 | TEST_PY_TEST_SPEC="not sleep" |
| 376 | QEMU_TARGET="arm-softmmu" |
| 377 | BUILDMAN="^qemu_arm$" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 378 | - name: "test/py qemu_arm64" |
| 379 | env: |
Tuomas Tynkkynen | 01588ff | 2018-01-11 16:11:26 +0200 | [diff] [blame] | 380 | - TEST_PY_BD="qemu_arm64" |
| 381 | TEST_PY_TEST_SPEC="not sleep" |
| 382 | QEMU_TARGET="aarch64-softmmu" |
| 383 | BUILDMAN="^qemu_arm64$" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 384 | - name: "test/py qemu_mips" |
| 385 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 386 | - TEST_PY_BD="qemu_mips" |
| 387 | TEST_PY_TEST_SPEC="not sleep" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 388 | QEMU_TARGET="mips-softmmu" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 389 | BUILDMAN="^qemu_mips$" |
| 390 | TOOLCHAIN="mips" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 391 | - name: "test/py qemu_mipsel" |
| 392 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 393 | - TEST_PY_BD="qemu_mipsel" |
| 394 | TEST_PY_TEST_SPEC="not sleep" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 395 | QEMU_TARGET="mipsel-softmmu" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 396 | BUILDMAN="^qemu_mipsel$" |
| 397 | TOOLCHAIN="mips" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 398 | - name: "test/py qemu_mips64" |
| 399 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 400 | - TEST_PY_BD="qemu_mips64" |
| 401 | TEST_PY_TEST_SPEC="not sleep" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 402 | QEMU_TARGET="mips64-softmmu" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 403 | BUILDMAN="^qemu_mips64$" |
| 404 | TOOLCHAIN="mips" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 405 | - name: "test/py qemu_mips64el" |
| 406 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 407 | - TEST_PY_BD="qemu_mips64el" |
| 408 | TEST_PY_TEST_SPEC="not sleep" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 409 | QEMU_TARGET="mips64el-softmmu" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 410 | BUILDMAN="^qemu_mips64el$" |
| 411 | TOOLCHAIN="mips" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 412 | - name: "test/py qemu-ppce500" |
| 413 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 414 | - TEST_PY_BD="qemu-ppce500" |
| 415 | TEST_PY_TEST_SPEC="not sleep" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 416 | QEMU_TARGET="ppc-softmmu" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 417 | BUILDMAN="^qemu-ppce500$" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 418 | TOOLCHAIN="powerpc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 419 | - name: "test/py qemu-x86" |
| 420 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 421 | - TEST_PY_BD="qemu-x86" |
| 422 | TEST_PY_TEST_SPEC="not sleep" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 423 | QEMU_TARGET="i386-softmmu" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 424 | BUILDMAN="^qemu-x86$" |
Bin Meng | a2086a8 | 2018-10-08 16:53:54 -0700 | [diff] [blame] | 425 | TOOLCHAIN="i386" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 426 | BUILD_ROM="yes" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 427 | - name: "test/py zynq_zc702" |
| 428 | env: |
Michal Simek | 64a885e | 2016-12-14 09:47:23 +0100 | [diff] [blame] | 429 | - TEST_PY_BD="zynq_zc702" |
| 430 | TEST_PY_TEST_SPEC="not sleep" |
| 431 | QEMU_TARGET="arm-softmmu" |
| 432 | TEST_PY_ID="--id qemu" |
| 433 | BUILDMAN="^zynq_zc702$" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 434 | - name: "test/py xtfpga" |
| 435 | env: |
Max Filippov | 76f0bc2 | 2018-02-07 15:30:03 -0800 | [diff] [blame] | 436 | - TEST_PY_BD="xtfpga" |
| 437 | TEST_PY_TEST_SPEC="not sleep" |
| 438 | QEMU_TARGET="xtensa-softmmu" |
| 439 | TEST_PY_ID="--id qemu" |
| 440 | BUILDMAN="^xtfpga$" |
| 441 | TOOLCHAIN="xtensa-dc233c-elf" |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 442 | |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 443 | # TODO make it perfect ;-r |