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 |
Tom Rini | ff720fc | 2019-10-08 08:39:26 -0400 | [diff] [blame] | 7 | dist: bionic |
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 |
Tom Rini | ff720fc | 2019-10-08 08:39:26 -0400 | [diff] [blame] | 15 | - llvm-toolchain-bionic-7 |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 16 | packages: |
Bin Meng | 485a927 | 2020-03-28 07:25:25 -0700 | [diff] [blame] | 17 | - autopoint |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 18 | - cppcheck |
| 19 | - sloccount |
| 20 | - sparse |
| 21 | - bc |
| 22 | - build-essential |
Simon Glass | b6f4c1c | 2020-02-03 07:36:12 -0700 | [diff] [blame] | 23 | - libsdl2-dev |
Stephen Warren | ef52e41 | 2016-02-08 18:23:35 -0700 | [diff] [blame] | 24 | - python |
Tom Rini | ebcd214 | 2019-10-24 11:59:27 -0400 | [diff] [blame] | 25 | - python-pyelftools |
Tom Rini | 7e4acf8 | 2020-02-24 15:10:36 -0500 | [diff] [blame] | 26 | - python3-sphinx |
Tom Rini | ebcd214 | 2019-10-24 11:59:27 -0400 | [diff] [blame] | 27 | - python3-virtualenv |
| 28 | - python3-pip |
Tom Rini | 89d191f | 2017-01-23 17:40:22 -0500 | [diff] [blame] | 29 | - swig |
| 30 | - libpython-dev |
Tom Rini | e1776a8 | 2016-10-20 11:08:26 -0400 | [diff] [blame] | 31 | - iasl |
Alexander Graf | d558629 | 2016-11-18 13:18:00 +0100 | [diff] [blame] | 32 | - grub-efi-ia32-bin |
Bin Meng | 51c8711 | 2018-10-13 20:52:12 -0700 | [diff] [blame] | 33 | - grub-efi-amd64-bin |
Alexander Graf | d558629 | 2016-11-18 13:18:00 +0100 | [diff] [blame] | 34 | - rpm2cpio |
| 35 | - wget |
Tom Rini | 61d0fac | 2017-09-23 13:00:57 -0400 | [diff] [blame] | 36 | - device-tree-compiler |
Tom Rini | 2ad6990 | 2018-03-14 14:02:49 -0400 | [diff] [blame] | 37 | - lzop |
Simon Glass | 7ba3359 | 2018-09-14 04:57:26 -0600 | [diff] [blame] | 38 | - liblz4-tool |
Simon Glass | 96a6296 | 2019-07-08 13:18:52 -0600 | [diff] [blame] | 39 | - lzma-alone |
Tom Rini | 89d8880 | 2018-10-07 14:20:30 -0400 | [diff] [blame] | 40 | - libisl15 |
| 41 | - clang-7 |
Marek Vasut | d44ad5a | 2019-03-14 01:01:24 +0100 | [diff] [blame] | 42 | - srecord |
Heinrich Schuchardt | e335201 | 2020-02-21 18:24:00 +0100 | [diff] [blame] | 43 | - graphviz |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 44 | |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 45 | install: |
Tom Rini | 719ad57 | 2016-10-20 11:26:40 -0400 | [diff] [blame] | 46 | # Clone uboot-test-hooks |
| 47 | - git clone --depth=1 git://github.com/swarren/uboot-test-hooks.git /tmp/uboot-test-hooks |
| 48 | - ln -s travis-ci /tmp/uboot-test-hooks/bin/`hostname` |
| 49 | - ln -s travis-ci /tmp/uboot-test-hooks/py/`hostname` |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 50 | # prepare buildman environment |
Stephen Warren | 05bc432 | 2016-10-26 11:05:31 -0600 | [diff] [blame] | 51 | - echo -e "[toolchain]\nroot = /usr" > ~/.buildman |
Alexey Brodkin | ea555b2 | 2018-12-03 17:09:13 +0300 | [diff] [blame] | 52 | - echo -e "arc = /tmp/arc_gnu_2018.09_prebuilt_uclibc_le_archs_linux_install" >> ~/.buildman |
Tom Rini | 1d7ed2d | 2019-11-05 10:44:16 -0500 | [diff] [blame] | 53 | - echo -e "\n[toolchain-alias]\nsh = sh2" >> ~/.buildman |
| 54 | - echo -e "x86 = i386" >> ~/.buildman; |
| 55 | - echo -e "riscv = riscv64" >> ~/.buildman; |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 56 | - cat ~/.buildman |
Tom Rini | ff720fc | 2019-10-08 08:39:26 -0400 | [diff] [blame] | 57 | - grub-mkimage --prefix="" -o ~/grub_x86.efi -O i386-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd |
| 58 | - grub-mkimage --prefix="" -o ~/grub_x64.efi -O x86_64-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd |
Tom Rini | ff720fc | 2019-10-08 08:39:26 -0400 | [diff] [blame] | 59 | - 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 |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 60 | |
| 61 | env: |
| 62 | global: |
Ramon Fried | bd818c4 | 2019-08-12 20:43:38 +0300 | [diff] [blame] | 63 | - PATH=/tmp/qemu-install/bin:/tmp/uboot-test-hooks/bin:/usr/bin:/bin:/usr/local/bin |
Alexander Graf | c4d32e2 | 2016-11-17 18:31:04 +0100 | [diff] [blame] | 64 | - PYTHONPATH=/tmp/uboot-test-hooks/py/travis-ci |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 65 | - BUILD_DIR=build |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 66 | - HOSTCC="cc" |
| 67 | - HOSTCXX="c++" |
Tom Rini | b8555f4 | 2020-01-11 08:07:03 -0500 | [diff] [blame] | 68 | - QEMU_VERSION="v4.2.0" |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 69 | |
| 70 | before_script: |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 71 | # install toolchains based on TOOLCHAIN} variable |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 72 | - if [[ "${TOOLCHAIN}" == *m68k* ]]; then ./tools/buildman/buildman --fetch-arch m68k ; fi |
Tom Rini | e1776a8 | 2016-10-20 11:08:26 -0400 | [diff] [blame] | 73 | - if [[ "${TOOLCHAIN}" == *microblaze* ]]; then ./tools/buildman/buildman --fetch-arch microblaze ; fi |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 74 | - if [[ "${TOOLCHAIN}" == *mips* ]]; then ./tools/buildman/buildman --fetch-arch mips ; fi |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 75 | - if [[ "${TOOLCHAIN}" == *sh* ]]; then ./tools/buildman/buildman --fetch-arch sh2 ; fi |
Bin Meng | a2086a8 | 2018-10-08 16:53:54 -0700 | [diff] [blame] | 76 | - if [[ "${TOOLCHAIN}" == *i386* ]]; then |
| 77 | ./tools/buildman/buildman --fetch-arch i386; |
Stephen Warren | 7cb9402 | 2016-10-26 11:05:33 -0600 | [diff] [blame] | 78 | fi |
Alexey Brodkin | 8bfb9f1 | 2017-04-21 13:35:43 +0300 | [diff] [blame] | 79 | - if [[ "${TOOLCHAIN}" == arc ]]; then |
Alexey Brodkin | ea555b2 | 2018-12-03 17:09:13 +0300 | [diff] [blame] | 80 | 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 && |
| 81 | tar -C /tmp -xf arc_gnu_2018.09_prebuilt_uclibc_le_archs_linux_install.tar.gz; |
Alexey Brodkin | 8bfb9f1 | 2017-04-21 13:35:43 +0300 | [diff] [blame] | 82 | fi |
Rick Chen | b7caf25 | 2019-01-14 13:36:15 +0800 | [diff] [blame] | 83 | - if [[ "${TOOLCHAIN}" == "nds32" ]]; then |
| 84 | wget https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases/download/20180521/nds32le-linux-glibc-v3-upstream.tar.gz && |
| 85 | tar -C /tmp -xf nds32le-linux-glibc-v3-upstream.tar.gz && |
| 86 | echo -e "\n[toolchain-prefix]\nnds32 = /tmp/nds32le-linux-glibc-v3-upstream/bin/nds32le-linux-" >> ~/.buildman; |
| 87 | fi |
Max Filippov | 8cb1584 | 2018-02-07 15:30:01 -0800 | [diff] [blame] | 88 | - if [[ "${TOOLCHAIN}" == *xtensa* ]]; then |
| 89 | wget https://github.com/foss-xtensa/toolchain/releases/download/2018.02/x86_64-2018.02-${TOOLCHAIN}.tar.gz && |
| 90 | tar -C /tmp -xf x86_64-2018.02-${TOOLCHAIN}.tar.gz && |
| 91 | echo -e "\n[toolchain-prefix]\nxtensa = /tmp/2018.02/${TOOLCHAIN}/bin/${TOOLCHAIN}-" >> ~/.buildman; |
| 92 | fi |
Tom Rini | b060eb0 | 2017-04-14 19:47:51 -0400 | [diff] [blame] | 93 | # If TOOLCHAIN is unset, we're on some flavour of ARM. |
| 94 | - if [[ "${TOOLCHAIN}" == "" ]]; then |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 95 | ./tools/buildman/buildman --fetch-arch arm && |
| 96 | ./tools/buildman/buildman --fetch-arch aarch64; |
Tom Rini | b060eb0 | 2017-04-14 19:47:51 -0400 | [diff] [blame] | 97 | fi |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 98 | - if [[ "${TOOLCHAIN}" == "powerpc" ]]; then ./tools/buildman/buildman --fetch-arch powerpc; fi |
Rick Chen | 626605d | 2018-01-12 14:57:09 +0800 | [diff] [blame] | 99 | - if [[ "${TOOLCHAIN}" == "riscv" ]]; then |
Bin Meng | 6205c37 | 2020-03-28 07:25:26 -0700 | [diff] [blame] | 100 | ./tools/buildman/buildman --fetch-arch riscv32 && |
Bin Meng | b14d508 | 2018-08-30 06:17:06 -0700 | [diff] [blame] | 101 | ./tools/buildman/buildman --fetch-arch riscv64; |
Rick Chen | 626605d | 2018-01-12 14:57:09 +0800 | [diff] [blame] | 102 | fi |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 103 | - if [[ "${QEMU_TARGET}" != "" ]]; then |
| 104 | git clone git://git.qemu.org/qemu.git /tmp/qemu; |
| 105 | pushd /tmp/qemu; |
| 106 | git submodule update --init dtc && |
Michal Simek | 6eba06e | 2019-01-16 15:18:43 +0100 | [diff] [blame] | 107 | git checkout ${QEMU_VERSION} && |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 108 | ./configure --prefix=/tmp/qemu-install --target-list=${QEMU_TARGET} && |
| 109 | make -j4 all install; |
| 110 | popd; |
| 111 | fi |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 112 | |
Bin Meng | 485a927 | 2020-03-28 07:25:25 -0700 | [diff] [blame] | 113 | # Build GRUB UEFI targets |
| 114 | - if [[ "${QEMU_TARGET}" == "arm-softmmu" ]]; then |
| 115 | git clone git://git.savannah.gnu.org/grub.git /tmp/grub && |
| 116 | pushd /tmp/grub && |
| 117 | git checkout grub-2.04 && |
| 118 | ./bootstrap && |
| 119 | ./configure --target=arm --with-platform=efi |
| 120 | CC=gcc |
Bin Meng | 94faac4 | 2020-04-06 06:07:00 -0700 | [diff] [blame] | 121 | TARGET_CC=~/.buildman-toolchains/gcc-9.2.0-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-gcc |
| 122 | TARGET_OBJCOPY=~/.buildman-toolchains/gcc-9.2.0-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-objcopy |
| 123 | TARGET_STRIP=~/.buildman-toolchains/gcc-9.2.0-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-strip |
| 124 | TARGET_NM=~/.buildman-toolchains/gcc-9.2.0-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-nm |
| 125 | TARGET_RANLIB=~/.buildman-toolchains/gcc-9.2.0-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-ranlib && |
Bin Meng | 485a927 | 2020-03-28 07:25:25 -0700 | [diff] [blame] | 126 | make -j4 && |
| 127 | ./grub-mkimage -O arm-efi -o ~/grub_arm.efi --prefix= -d |
| 128 | grub-core cat chain configfile echo efinet ext2 fat halt help linux |
| 129 | lsefisystab loadenv lvm minicmd normal part_msdos part_gpt reboot |
| 130 | search search_fs_file search_fs_uuid search_label serial sleep test |
| 131 | true && |
| 132 | popd; |
| 133 | fi |
| 134 | - if [[ "${QEMU_TARGET}" == "aarch64-softmmu" ]]; then |
| 135 | git clone git://git.savannah.gnu.org/grub.git /tmp/grub && |
| 136 | pushd /tmp/grub && |
| 137 | git checkout grub-2.04 && |
| 138 | ./bootstrap && |
| 139 | ./configure --target=aarch64 --with-platform=efi |
| 140 | CC=gcc |
Bin Meng | 94faac4 | 2020-04-06 06:07:00 -0700 | [diff] [blame] | 141 | TARGET_CC=~/.buildman-toolchains/gcc-9.2.0-nolibc/aarch64-linux/bin/aarch64-linux-gcc |
| 142 | TARGET_OBJCOPY=~/.buildman-toolchains/gcc-9.2.0-nolibc/aarch64-linux/bin/aarch64-linux-objcopy |
| 143 | TARGET_STRIP=~/.buildman-toolchains/gcc-9.2.0-nolibc/aarch64-linux/bin/aarch64-linux-strip |
| 144 | TARGET_NM=~/.buildman-toolchains/gcc-9.2.0-nolibc/aarch64-linux/bin/aarch64-linux-nm |
| 145 | TARGET_RANLIB=~/.buildman-toolchains/gcc-9.2.0-nolibc/aarch64-linux/bin/aarch64-linux-ranlib && |
Bin Meng | 485a927 | 2020-03-28 07:25:25 -0700 | [diff] [blame] | 146 | make -j4 && |
| 147 | ./grub-mkimage -O arm64-efi -o ~/grub_arm64.efi --prefix= -d |
| 148 | grub-core cat chain configfile echo efinet ext2 fat halt help linux |
| 149 | lsefisystab loadenv lvm minicmd normal part_msdos part_gpt reboot |
| 150 | search search_fs_file search_fs_uuid search_label serial sleep test |
| 151 | true && |
| 152 | popd; |
| 153 | fi |
Bin Meng | 6205c37 | 2020-03-28 07:25:26 -0700 | [diff] [blame] | 154 | - if [[ "${QEMU_TARGET}" == "riscv32-softmmu" ]]; then |
| 155 | git clone git://git.savannah.gnu.org/grub.git /tmp/grub && |
| 156 | pushd /tmp/grub && |
| 157 | git checkout grub-2.04 && |
| 158 | ./bootstrap && |
| 159 | ./configure --target=riscv32 --with-platform=efi |
| 160 | CC=gcc |
Bin Meng | 94faac4 | 2020-04-06 06:07:00 -0700 | [diff] [blame] | 161 | TARGET_CC=~/.buildman-toolchains/gcc-9.2.0-nolibc/riscv32-linux/bin/riscv32-linux-gcc |
| 162 | TARGET_OBJCOPY=~/.buildman-toolchains/gcc-9.2.0-nolibc/riscv32-linux/bin/riscv32-linux-objcopy |
| 163 | TARGET_STRIP=~/.buildman-toolchains/gcc-9.2.0-nolibc/riscv32-linux/bin/riscv32-linux-strip |
| 164 | TARGET_NM=~/.buildman-toolchains/gcc-9.2.0-nolibc/riscv32-linux/bin/riscv32-linux-nm |
| 165 | TARGET_RANLIB=~/.buildman-toolchains/gcc-9.2.0-nolibc/riscv32-linux/bin/riscv32-linux-ranlib && |
Bin Meng | 6205c37 | 2020-03-28 07:25:26 -0700 | [diff] [blame] | 166 | make -j4 && |
| 167 | ./grub-mkimage -O riscv32-efi -o ~/grub_riscv32.efi --prefix= -d |
| 168 | grub-core cat chain configfile echo efinet ext2 fat halt help linux |
| 169 | lsefisystab loadenv lvm minicmd normal part_msdos part_gpt reboot |
| 170 | search search_fs_file search_fs_uuid search_label serial sleep test |
| 171 | true && |
| 172 | popd; |
| 173 | fi |
| 174 | - if [[ "${QEMU_TARGET}" == "riscv64-softmmu" ]]; then |
| 175 | git clone git://git.savannah.gnu.org/grub.git /tmp/grub && |
| 176 | pushd /tmp/grub && |
| 177 | git checkout grub-2.04 && |
| 178 | ./bootstrap && |
| 179 | ./configure --target=riscv64 --with-platform=efi |
| 180 | CC=gcc |
Bin Meng | 94faac4 | 2020-04-06 06:07:00 -0700 | [diff] [blame] | 181 | TARGET_CC=~/.buildman-toolchains/gcc-9.2.0-nolibc/riscv64-linux/bin/riscv64-linux-gcc |
| 182 | TARGET_OBJCOPY=~/.buildman-toolchains/gcc-9.2.0-nolibc/riscv64-linux/bin/riscv64-linux-objcopy |
| 183 | TARGET_STRIP=~/.buildman-toolchains/gcc-9.2.0-nolibc/riscv64-linux/bin/riscv64-linux-strip |
| 184 | TARGET_NM=~/.buildman-toolchains/gcc-9.2.0-nolibc/riscv64-linux/bin/riscv64-linux-nm |
| 185 | TARGET_RANLIB=~/.buildman-toolchains/gcc-9.2.0-nolibc/riscv64-linux/bin/riscv64-linux-ranlib && |
Bin Meng | 6205c37 | 2020-03-28 07:25:26 -0700 | [diff] [blame] | 186 | make -j4 && |
| 187 | ./grub-mkimage -O riscv64-efi -o ~/grub_riscv64.efi --prefix= -d |
| 188 | grub-core cat chain configfile echo efinet ext2 fat halt help linux |
| 189 | lsefisystab loadenv lvm minicmd normal part_msdos part_gpt reboot |
| 190 | search search_fs_file search_fs_uuid search_label serial sleep test |
| 191 | true && |
| 192 | popd; |
| 193 | fi |
Bin Meng | b68d9d6 | 2020-03-28 07:25:29 -0700 | [diff] [blame] | 194 | - if [[ "${TEST_PY_BD}" == "qemu-riscv32_spl" ]]; then |
| 195 | wget -O - https://github.com/riscv/opensbi/releases/download/v0.6/opensbi-0.6-rv32-bin.tar.xz | tar -C /tmp -xJ; |
| 196 | export OPENSBI=/tmp/opensbi-0.6-rv32-bin/platform/qemu/virt/firmware/fw_dynamic.bin; |
| 197 | fi |
| 198 | - if [[ "${TEST_PY_BD}" == "qemu-riscv64_spl" ]]; then |
| 199 | wget -O - https://github.com/riscv/opensbi/releases/download/v0.6/opensbi-0.6-rv64-bin.tar.xz | tar -C /tmp -xJ; |
| 200 | export OPENSBI=/tmp/opensbi-0.6-rv64-bin/platform/qemu/virt/firmware/fw_dynamic.bin; |
| 201 | fi |
Bin Meng | 485a927 | 2020-03-28 07:25:25 -0700 | [diff] [blame] | 202 | |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 203 | script: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 204 | # Comments must be outside the command strings below, or the Travis parser |
| 205 | # will get confused. |
| 206 | # |
Simon Glass | da49935 | 2020-03-18 09:42:57 -0600 | [diff] [blame] | 207 | # If we've been asked to use clang only do one configuration. |
| 208 | # |
Simon Glass | 9f28ddd | 2020-03-18 09:42:49 -0600 | [diff] [blame] | 209 | # Build a selection of boards if TEST_PY_BD is empty |
Simon Glass | 41e8fbe | 2020-03-18 09:42:52 -0600 | [diff] [blame] | 210 | - if [[ "${BUILDMAN}" != "" ]]; then |
Simon Glass | da49935 | 2020-03-18 09:42:57 -0600 | [diff] [blame] | 211 | tools/buildman/buildman -P -E -W ${BUILDMAN} ${OVERRIDE}; |
| 212 | if [[ $ret -ne 0 ]]; then |
Simon Glass | ad8eaed | 2020-03-18 09:42:53 -0600 | [diff] [blame] | 213 | tools/buildman/buildman -seP ${BUILDMAN}; |
Stephen Warren | a0d0c22 | 2016-10-26 11:05:32 -0600 | [diff] [blame] | 214 | exit $ret; |
| 215 | fi; |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 216 | fi |
Simon Glass | 9f28ddd | 2020-03-18 09:42:49 -0600 | [diff] [blame] | 217 | # Build just the one board needed for testing, if TEST_PY_BD is non-empty |
Simon Glass | 2600f7e | 2020-03-18 09:42:56 -0600 | [diff] [blame] | 218 | # Note: "${var:+"-k $var"}" expands to "" if $var is empty, "-k $var" if not |
Simon Glass | 57bccec | 2020-03-18 09:42:48 -0600 | [diff] [blame] | 219 | - if [[ "${TEST_PY_BD}" != "" ]]; then |
Simon Glass | 9f28ddd | 2020-03-18 09:42:49 -0600 | [diff] [blame] | 220 | export UBOOT_TRAVIS_BUILD_DIR=`cd .. && pwd`/${TEST_PY_BD}; |
Simon Glass | 57bccec | 2020-03-18 09:42:48 -0600 | [diff] [blame] | 221 | cp ~/grub_x86.efi $UBOOT_TRAVIS_BUILD_DIR/; |
| 222 | cp ~/grub_x64.efi $UBOOT_TRAVIS_BUILD_DIR/; |
| 223 | if [[ -e ~/grub_arm.efi ]]; then |
| 224 | cp ~/grub_arm.efi $UBOOT_TRAVIS_BUILD_DIR/; |
| 225 | fi; |
| 226 | if [[ -e ~/grub_arm64.efi ]]; then |
| 227 | cp ~/grub_arm64.efi $UBOOT_TRAVIS_BUILD_DIR/; |
| 228 | fi; |
| 229 | if [[ -e ~/grub_riscv32.efi ]]; then |
| 230 | cp ~/grub_riscv32.efi $UBOOT_TRAVIS_BUILD_DIR/; |
| 231 | fi; |
| 232 | if [[ -e ~/grub_riscv64.efi ]]; then |
| 233 | cp ~/grub_riscv64.efi $UBOOT_TRAVIS_BUILD_DIR/; |
| 234 | fi; |
Simon Glass | 87c8046 | 2020-03-18 09:43:00 -0600 | [diff] [blame] | 235 | tools/buildman/buildman -o ${UBOOT_TRAVIS_BUILD_DIR} -w -E -W -e |
| 236 | --board ${TEST_PY_BD} ${OVERRIDE} || exit; |
Tom Rini | ebcd214 | 2019-10-24 11:59:27 -0400 | [diff] [blame] | 237 | virtualenv -p /usr/bin/python3 /tmp/venv; |
| 238 | . /tmp/venv/bin/activate; |
| 239 | pip install -r test/py/requirements.txt; |
| 240 | ./test/py/test.py --bd ${TEST_PY_BD} ${TEST_PY_ID} |
Simon Glass | 2600f7e | 2020-03-18 09:42:56 -0600 | [diff] [blame] | 241 | ${TEST_PY_TEST_SPEC:+"-k ${TEST_PY_TEST_SPEC}"} |
Simon Glass | fd0c59b | 2020-03-18 09:42:59 -0600 | [diff] [blame] | 242 | --build-dir "$UBOOT_TRAVIS_BUILD_DIR" || exit; |
Tom Rini | 6c88310 | 2020-02-11 12:41:14 -0500 | [diff] [blame] | 243 | if [[ -n "${TEST_PY_TOOLS}" ]]; then |
| 244 | export PYTHONPATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc/pylibfdt"; |
| 245 | export PATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc:${PATH}"; |
| 246 | ./tools/binman/binman --toolpath ${UBOOT_TRAVIS_BUILD_DIR}/tools test && |
| 247 | ./tools/patman/patman --test && |
| 248 | ./tools/buildman/buildman -t && |
Tom Rini | 0b3e0c4 | 2020-03-11 18:11:15 -0400 | [diff] [blame] | 249 | ./tools/dtoc/dtoc -t && |
| 250 | make testconfig; |
Tom Rini | 6c88310 | 2020-02-11 12:41:14 -0500 | [diff] [blame] | 251 | fi; |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 252 | fi |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 253 | |
| 254 | matrix: |
| 255 | include: |
| 256 | # we need to build by vendor due to 50min time limit for builds |
| 257 | # each env setting here is a dedicated build |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 258 | - name: "buildman arc" |
| 259 | env: |
Alexey Brodkin | 8bfb9f1 | 2017-04-21 13:35:43 +0300 | [diff] [blame] | 260 | - BUILDMAN="arc" |
| 261 | TOOLCHAIN="arc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 262 | - name: "buildman arm11 arm7 arm920t arm946es" |
| 263 | env: |
Tom Rini | 9662fa2 | 2018-05-10 07:15:54 -0400 | [diff] [blame] | 264 | - BUILDMAN="arm11 arm7 arm920t arm946es" |
Eugen Hristev | 55d6a29 | 2019-04-01 11:04:03 +0000 | [diff] [blame] | 265 | - name: "buildman arm926ejs (non-NXP,siemens,at91,kirkwood,spear)" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 266 | env: |
Tom Rini | d30ec58 | 2016-11-05 19:34:49 -0400 | [diff] [blame] | 267 | - JOB="arm926ejs" |
Eugen Hristev | 55d6a29 | 2019-04-01 11:04:03 +0000 | [diff] [blame] | 268 | BUILDMAN="arm926ejs -x freescale,siemens,at91,kirkwood,spear,omap" |
| 269 | - name: "buildman at91 (non arm v7)" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 270 | env: |
Eugen Hristev | 55d6a29 | 2019-04-01 11:04:03 +0000 | [diff] [blame] | 271 | - BUILDMAN="at91 -x armv7" |
| 272 | - name: "buildman at91 (non arm926ejs)" |
| 273 | env: |
| 274 | - BUILDMAN="at91 -x arm926ejs" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 275 | - name: "buildman boundary engicam toradex" |
| 276 | env: |
| 277 | - BUILDMAN="boundary engicam toradex" |
Tom Rini | 4875695 | 2019-10-13 11:21:56 -0400 | [diff] [blame] | 278 | - name: "buildman ARM bcm" |
Tom Rini | 7aa2eec | 2019-10-09 11:01:06 -0400 | [diff] [blame] | 279 | env: |
Tom Rini | 4875695 | 2019-10-13 11:21:56 -0400 | [diff] [blame] | 280 | - BUILDMAN="bcm -x mips" |
Heiko Schocher | 56b9b31 | 2019-11-22 11:17:29 +0100 | [diff] [blame] | 281 | - name: "buildman NXP ARM32 (catch-all)" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 282 | env: |
Heiko Schocher | 56b9b31 | 2019-11-22 11:17:29 +0100 | [diff] [blame] | 283 | - BUILDMAN="freescale -x powerpc,m68k,aarch64,ls101,ls102,ls104,ls108,ls20,lx216" |
| 284 | - name: "buildman NXP LS101x" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 285 | env: |
Heiko Schocher | 56b9b31 | 2019-11-22 11:17:29 +0100 | [diff] [blame] | 286 | - BUILDMAN="freescale&ls101" |
| 287 | - name: "buildman NXP LS102x" |
Prabhakar Kushwaha | b390a30 | 2019-06-19 17:47:12 +0530 | [diff] [blame] | 288 | env: |
Heiko Schocher | 56b9b31 | 2019-11-22 11:17:29 +0100 | [diff] [blame] | 289 | - BUILDMAN="freescale&ls102" |
| 290 | - name: "buildman NXP LS104x" |
Tom Rini | 59ff66c | 2018-10-23 11:58:44 -0400 | [diff] [blame] | 291 | env: |
Heiko Schocher | 56b9b31 | 2019-11-22 11:17:29 +0100 | [diff] [blame] | 292 | - BUILDMAN="freescale&ls104" |
| 293 | - name: "buildman NXP LS108x" |
Tom Rini | 2c92994 | 2019-01-16 07:19:26 -0500 | [diff] [blame] | 294 | env: |
Heiko Schocher | 56b9b31 | 2019-11-22 11:17:29 +0100 | [diff] [blame] | 295 | - BUILDMAN="freescale&ls108" |
| 296 | - name: "buildman NXP LS20xx" |
Tom Rini | 2c92994 | 2019-01-16 07:19:26 -0500 | [diff] [blame] | 297 | env: |
Heiko Schocher | 56b9b31 | 2019-11-22 11:17:29 +0100 | [diff] [blame] | 298 | - BUILDMAN="freescale&ls20" |
| 299 | - name: "buildman NXP LX216x" |
Prabhakar Kushwaha | b390a30 | 2019-06-19 17:47:12 +0530 | [diff] [blame] | 300 | env: |
Heiko Schocher | 56b9b31 | 2019-11-22 11:17:29 +0100 | [diff] [blame] | 301 | - BUILDMAN="freescale&lx216" |
Tom Rini | 13883b2 | 2019-10-15 07:27:13 -0400 | [diff] [blame] | 302 | - name: "buildman i.MX6 tqc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 303 | env: |
Tom Rini | 13883b2 | 2019-10-15 07:27:13 -0400 | [diff] [blame] | 304 | - BUILDMAN="mx6&tqc" |
| 305 | - name: "buildman i.MX6 (catch-all)" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 306 | env: |
Tom Rini | 13883b2 | 2019-10-15 07:27:13 -0400 | [diff] [blame] | 307 | - BUILDMAN="mx6 -x boundary,engicam,freescale,technexion,toradex,tqc" |
| 308 | - name: "buildman i.MX (non-i.MX6 catch-all)" |
| 309 | env: |
| 310 | - BUILDMAN="mx -x freescale,mx6,toradex,technexion" |
Tom Rini | 298ad4d | 2019-10-09 11:02:21 -0400 | [diff] [blame] | 311 | - name: "buildman keystone 2/3" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 312 | env: |
Tom Rini | 298ad4d | 2019-10-09 11:02:21 -0400 | [diff] [blame] | 313 | - BUILDMAN="k2 k3" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 314 | - name: "buildman samsung socfpga" |
| 315 | env: |
Tom Rini | 9662fa2 | 2018-05-10 07:15:54 -0400 | [diff] [blame] | 316 | - BUILDMAN="samsung socfpga" |
Tom Rini | 59ff66c | 2018-10-23 11:58:44 -0400 | [diff] [blame] | 317 | - name: "buildman spear" |
| 318 | env: |
| 319 | - BUILDMAN="spear" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 320 | - name: "buildman sun4i" |
| 321 | env: |
Tom Rini | d30ec58 | 2016-11-05 19:34:49 -0400 | [diff] [blame] | 322 | - BUILDMAN="sun4i" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 323 | - name: "buildman sun5i" |
| 324 | env: |
Tom Rini | d30ec58 | 2016-11-05 19:34:49 -0400 | [diff] [blame] | 325 | - BUILDMAN="sun5i" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 326 | - name: "buildman sun6i" |
| 327 | env: |
Tom Rini | d30ec58 | 2016-11-05 19:34:49 -0400 | [diff] [blame] | 328 | - BUILDMAN="sun6i" |
Tuomas Tynkkynen | ba67d03 | 2018-09-08 00:53:18 +0300 | [diff] [blame] | 329 | - name: "buildman sun7i" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 330 | env: |
Tom Rini | d30ec58 | 2016-11-05 19:34:49 -0400 | [diff] [blame] | 331 | - BUILDMAN="sun7i" |
Tom Rini | 5aa0f0d | 2019-10-15 07:27:14 -0400 | [diff] [blame] | 332 | - name: "buildman 64bit sun8i" |
| 333 | env: |
Heiko Schocher | 8c00c55 | 2019-11-21 06:50:12 +0100 | [diff] [blame] | 334 | - BUILDMAN="sun8i&aarch64 -x orangepi" |
Tom Rini | 5aa0f0d | 2019-10-15 07:27:14 -0400 | [diff] [blame] | 335 | - name: "buildman 32bit sun8i" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 336 | env: |
Heiko Schocher | 8c00c55 | 2019-11-21 06:50:12 +0100 | [diff] [blame] | 337 | - BUILDMAN="sun8i&armv7 -x orangepi" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 338 | - name: "buildman sun9i" |
| 339 | env: |
Tom Rini | d30ec58 | 2016-11-05 19:34:49 -0400 | [diff] [blame] | 340 | - BUILDMAN="sun9i" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 341 | - name: "buildman sun50i" |
| 342 | env: |
Heiko Schocher | 8c00c55 | 2019-11-21 06:50:12 +0100 | [diff] [blame] | 343 | - BUILDMAN="sun50i -x orangepi" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 344 | - name: "buildman catch-all ARM" |
| 345 | env: |
Tom Rini | e289a16 | 2020-03-09 13:01:57 -0400 | [diff] [blame] | 346 | - 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" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 347 | - name: "buildman sandbox x86" |
| 348 | env: |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 349 | - BUILDMAN="sandbox x86" |
Bin Meng | a2086a8 | 2018-10-08 16:53:54 -0700 | [diff] [blame] | 350 | TOOLCHAIN="i386" |
Tom Rini | 13883b2 | 2019-10-15 07:27:13 -0400 | [diff] [blame] | 351 | - name: "buildman technexion" |
| 352 | env: |
| 353 | - BUILDMAN="technexion" |
Stefan Roese | 4a79738 | 2019-04-25 11:53:18 +0200 | [diff] [blame] | 354 | - name: "buildman kirkwood" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 355 | env: |
Stefan Roese | 4a79738 | 2019-04-25 11:53:18 +0200 | [diff] [blame] | 356 | - BUILDMAN="kirkwood" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 357 | - name: "buildman mvebu" |
| 358 | env: |
Stefan Roese | 2670ab0 | 2016-12-01 13:52:08 +0100 | [diff] [blame] | 359 | - BUILDMAN="mvebu" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 360 | - name: "buildman m68k" |
| 361 | env: |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 362 | - BUILDMAN="m68k" |
| 363 | TOOLCHAIN="m68k" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 364 | - name: "buildman microblaze" |
| 365 | env: |
Tom Rini | 1d54325 | 2017-10-07 15:54:18 -0400 | [diff] [blame] | 366 | - BUILDMAN="microblaze" |
Tom Rini | 31fedfe | 2016-10-20 11:23:15 -0400 | [diff] [blame] | 367 | TOOLCHAIN="microblaze" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 368 | - name: "buildman mips" |
| 369 | env: |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 370 | - BUILDMAN="mips" |
| 371 | TOOLCHAIN="mips" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 372 | - name: "buildman non-Freescale PowerPC" |
| 373 | env: |
| 374 | - BUILDMAN="powerpc -x freescale" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 375 | TOOLCHAIN="powerpc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 376 | - name: "buildman mpc85xx&freescale (excluding many)" |
| 377 | env: |
Tom Rini | 9662fa2 | 2018-05-10 07:15:54 -0400 | [diff] [blame] | 378 | - 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] | 379 | TOOLCHAIN="powerpc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 380 | - name: "buildman t208xrdb corenet_ds" |
| 381 | env: |
Tom Rini | 9662fa2 | 2018-05-10 07:15:54 -0400 | [diff] [blame] | 382 | - BUILDMAN="t208xrdb corenet_ds" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 383 | TOOLCHAIN="powerpc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 384 | - name: "buildman Freescale PowerPC" |
| 385 | env: |
Tom Rini | 9662fa2 | 2018-05-10 07:15:54 -0400 | [diff] [blame] | 386 | - BUILDMAN="t4qds b4860qds mpc83xx&freescale mpc86xx&freescale" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 387 | TOOLCHAIN="powerpc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 388 | - name: "buildman t102*" |
| 389 | env: |
Philipp Tomsich | b0bfa76 | 2017-12-20 11:06:31 +0100 | [diff] [blame] | 390 | - BUILDMAN="t102*" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 391 | TOOLCHAIN="powerpc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 392 | - name: "buildman p1_p2_rdb_pc" |
| 393 | env: |
Tom Rini | 180af9f | 2017-01-21 17:58:08 -0500 | [diff] [blame] | 394 | - BUILDMAN="p1_p2_rdb_pc" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 395 | TOOLCHAIN="powerpc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 396 | - name: "buildman p1010rdb bsc91" |
| 397 | env: |
Tom Rini | 9662fa2 | 2018-05-10 07:15:54 -0400 | [diff] [blame] | 398 | - BUILDMAN="p1010rdb bsc91" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 399 | TOOLCHAIN="powerpc" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 400 | - name: "buildman siemens" |
| 401 | env: |
Roger Meier | aad5beb | 2016-01-25 20:22:41 +0100 | [diff] [blame] | 402 | - BUILDMAN="siemens" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 403 | - name: "buildman tegra" |
| 404 | env: |
| 405 | - BUILDMAN="tegra -x toradex" |
| 406 | - name: "buildman am33xx (no siemens)" |
| 407 | env: |
| 408 | - BUILDMAN="am33xx -x siemens" |
| 409 | - name: "buildman omap" |
| 410 | env: |
Tom Rini | 9662fa2 | 2018-05-10 07:15:54 -0400 | [diff] [blame] | 411 | - BUILDMAN="omap" |
Heiko Schocher | 8c00c55 | 2019-11-21 06:50:12 +0100 | [diff] [blame] | 412 | - name: "buildman orangepi" |
| 413 | env: |
| 414 | - BUILDMAN="orangepi" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 415 | - name: "buildman uniphier" |
| 416 | env: |
Tom Rini | c0d6eb1 | 2016-10-29 17:11:17 -0400 | [diff] [blame] | 417 | - BUILDMAN="uniphier" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 418 | - name: "buildman catch-all AArch64" |
| 419 | env: |
Tom Rini | e289a16 | 2020-03-09 13:01:57 -0400 | [diff] [blame] | 420 | - BUILDMAN="aarch64 -x bcm,k3,tegra,ls1,ls2,lx216,mvebu,uniphier,sunxi,samsung,socfpga,rk,versal,zynq" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 421 | - name: "buildman rockchip" |
| 422 | env: |
Tom Rini | e289a16 | 2020-03-09 13:01:57 -0400 | [diff] [blame] | 423 | - BUILDMAN="rk -x orangepi" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 424 | - name: "buildman sh" |
| 425 | env: |
| 426 | - BUILDMAN="sh -x arm" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 427 | TOOLCHAIN="sh" |
Tom Rini | ca3561d | 2019-10-14 18:12:59 -0400 | [diff] [blame] | 428 | - name: "buildman Zynq* (ARMv7)" |
| 429 | env: |
| 430 | - BUILDMAN="zynq&armv7" |
| 431 | - name: "buildman ZynqMP and Versal" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 432 | env: |
Tom Rini | ca3561d | 2019-10-14 18:12:59 -0400 | [diff] [blame] | 433 | - BUILDMAN="versal|zynqmp&aarch64" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 434 | - name: "buildman xtensa" |
| 435 | env: |
Tom Rini | 31fedfe | 2016-10-20 11:23:15 -0400 | [diff] [blame] | 436 | - BUILDMAN="xtensa" |
Max Filippov | 8cb1584 | 2018-02-07 15:30:01 -0800 | [diff] [blame] | 437 | TOOLCHAIN="xtensa-dc233c-elf" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 438 | - name: "buildman riscv" |
| 439 | env: |
Rick Chen | 626605d | 2018-01-12 14:57:09 +0800 | [diff] [blame] | 440 | - BUILDMAN="riscv" |
| 441 | TOOLCHAIN="riscv" |
Rick Chen | b7caf25 | 2019-01-14 13:36:15 +0800 | [diff] [blame] | 442 | - name: "buildman nds32" |
| 443 | env: |
| 444 | - BUILDMAN="nds32" |
| 445 | TOOLCHAIN="nds32" |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 446 | |
| 447 | # QA jobs for code analytics |
| 448 | # static code analysis with cppcheck (we can add --enable=all later) |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 449 | - name: "cppcheck" |
Stephen Warren | 1c4c3d6 | 2016-10-24 16:41:48 -0600 | [diff] [blame] | 450 | script: |
Simon Glass | cd1ccfa | 2020-04-05 14:35:43 -0600 | [diff] [blame] | 451 | - cppcheck -j$(nproc) --force --quiet --inline-suppr . |
Heinrich Schuchardt | e335201 | 2020-02-21 18:24:00 +0100 | [diff] [blame] | 452 | # build HTML documentation |
| 453 | - name: "htmldocs" |
| 454 | script: |
| 455 | - make htmldocs |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 456 | # search for TODO within source tree |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 457 | - name: "grep TODO" |
Stephen Warren | 1c4c3d6 | 2016-10-24 16:41:48 -0600 | [diff] [blame] | 458 | script: |
Tom Rini | 5770a14 | 2016-10-20 11:24:52 -0400 | [diff] [blame] | 459 | - grep -r TODO . |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 460 | # search for FIXME within source tree |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 461 | - name: "grep FIXME HACK" |
Stephen Warren | 1c4c3d6 | 2016-10-24 16:41:48 -0600 | [diff] [blame] | 462 | script: |
Tom Rini | 5770a14 | 2016-10-20 11:24:52 -0400 | [diff] [blame] | 463 | - grep -r FIXME . |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 464 | # search for HACK within source tree and ignore HACKKIT board |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 465 | script: |
| 466 | - grep -r HACK . | grep -v HACKKIT |
| 467 | # some statistics about the code base |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 468 | - name: "sloccount" |
Stephen Warren | 1c4c3d6 | 2016-10-24 16:41:48 -0600 | [diff] [blame] | 469 | script: |
Tom Rini | 5770a14 | 2016-10-20 11:24:52 -0400 | [diff] [blame] | 470 | - sloccount . |
Tom Rini | da75cc6 | 2018-12-06 16:39:43 -0500 | [diff] [blame] | 471 | # ensure all configs have MAINTAINERS entries |
| 472 | - name: "Check for configs without MAINTAINERS entry" |
| 473 | script: |
| 474 | - if [ `./tools/genboardscfg.py -f 2>&1 | wc -l` -ne 0 ]; then exit 1; fi |
Otavio Salvador | e2fa4ca | 2018-12-07 19:00:41 -0500 | [diff] [blame] | 475 | # Ensure host tools build |
| 476 | - name: "Build tools-only" |
| 477 | script: |
| 478 | - make tools-only_config tools-only -j$(nproc) |
Pierre-Jean Texier | 6812f5e | 2019-08-26 13:06:18 +0200 | [diff] [blame] | 479 | # Ensure env tools build |
| 480 | - name: "Build envtools" |
| 481 | script: |
| 482 | - make tools-only_config envtools -j$(nproc) |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 483 | |
Stephen Warren | ef52e41 | 2016-02-08 18:23:35 -0700 | [diff] [blame] | 484 | # test/py |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 485 | - name: "test/py sandbox" |
| 486 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 487 | - TEST_PY_BD="sandbox" |
Bin Meng | a2086a8 | 2018-10-08 16:53:54 -0700 | [diff] [blame] | 488 | TOOLCHAIN="i386" |
Tom Rini | 89d8880 | 2018-10-07 14:20:30 -0400 | [diff] [blame] | 489 | - name: "test/py sandbox with clang" |
| 490 | env: |
| 491 | - TEST_PY_BD="sandbox" |
Tom Rini | d00c306 | 2019-10-26 13:48:41 -0400 | [diff] [blame] | 492 | OVERRIDE="-O clang-7" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 493 | - name: "test/py sandbox_spl" |
| 494 | env: |
Tom Rini | fe9ef11 | 2017-08-07 15:24:50 -0400 | [diff] [blame] | 495 | - TEST_PY_BD="sandbox_spl" |
Simon Glass | 132a9bf | 2020-03-18 09:42:58 -0600 | [diff] [blame] | 496 | TEST_PY_TEST_SPEC="test_ofplatdata or test_handoff" |
Bin Meng | a2086a8 | 2018-10-08 16:53:54 -0700 | [diff] [blame] | 497 | TOOLCHAIN="i386" |
Simon Glass | 23f4d6a | 2017-11-26 20:26:00 -0700 | [diff] [blame] | 498 | TEST_PY_TOOLS="yes" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 499 | - name: "test/py sandbox_flattree" |
| 500 | env: |
Tom Rini | fe9ef11 | 2017-08-07 15:24:50 -0400 | [diff] [blame] | 501 | - TEST_PY_BD="sandbox_flattree" |
Bin Meng | a2086a8 | 2018-10-08 16:53:54 -0700 | [diff] [blame] | 502 | TOOLCHAIN="i386" |
Joel Stanley | 9cfd7a5 | 2019-07-04 11:05:17 +0930 | [diff] [blame] | 503 | - name: "test/py evb-ast2500" |
| 504 | env: |
| 505 | - TEST_PY_BD="evb-ast2500" |
| 506 | TEST_PY_ID="--id qemu" |
| 507 | QEMU_TARGET="arm-softmmu" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 508 | - name: "test/py vexpress_ca15_tc2" |
| 509 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 510 | - TEST_PY_BD="vexpress_ca15_tc2" |
| 511 | TEST_PY_ID="--id qemu" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 512 | QEMU_TARGET="arm-softmmu" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 513 | - name: "test/py vexpress_ca9x4" |
| 514 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 515 | - TEST_PY_BD="vexpress_ca9x4" |
| 516 | TEST_PY_ID="--id qemu" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 517 | QEMU_TARGET="arm-softmmu" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 518 | - name: "test/py integratorcp_cm926ejs" |
| 519 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 520 | - TEST_PY_BD="integratorcp_cm926ejs" |
Alexander Graf | f97f532 | 2016-11-17 18:31:07 +0100 | [diff] [blame] | 521 | TEST_PY_TEST_SPEC="not sleep" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 522 | TEST_PY_ID="--id qemu" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 523 | QEMU_TARGET="arm-softmmu" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 524 | - name: "test/py qemu_arm" |
| 525 | env: |
Tuomas Tynkkynen | 5ed6846 | 2017-09-19 23:18:08 +0300 | [diff] [blame] | 526 | - TEST_PY_BD="qemu_arm" |
| 527 | TEST_PY_TEST_SPEC="not sleep" |
| 528 | QEMU_TARGET="arm-softmmu" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 529 | - name: "test/py qemu_arm64" |
| 530 | env: |
Tuomas Tynkkynen | 01588ff | 2018-01-11 16:11:26 +0200 | [diff] [blame] | 531 | - TEST_PY_BD="qemu_arm64" |
| 532 | TEST_PY_TEST_SPEC="not sleep" |
| 533 | QEMU_TARGET="aarch64-softmmu" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 534 | - name: "test/py qemu_mips" |
| 535 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 536 | - TEST_PY_BD="qemu_mips" |
| 537 | TEST_PY_TEST_SPEC="not sleep" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 538 | QEMU_TARGET="mips-softmmu" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 539 | TOOLCHAIN="mips" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 540 | - name: "test/py qemu_mipsel" |
| 541 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 542 | - TEST_PY_BD="qemu_mipsel" |
| 543 | TEST_PY_TEST_SPEC="not sleep" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 544 | QEMU_TARGET="mipsel-softmmu" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 545 | TOOLCHAIN="mips" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 546 | - name: "test/py qemu_mips64" |
| 547 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 548 | - TEST_PY_BD="qemu_mips64" |
| 549 | TEST_PY_TEST_SPEC="not sleep" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 550 | QEMU_TARGET="mips64-softmmu" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 551 | TOOLCHAIN="mips" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 552 | - name: "test/py qemu_mips64el" |
| 553 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 554 | - TEST_PY_BD="qemu_mips64el" |
| 555 | TEST_PY_TEST_SPEC="not sleep" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 556 | QEMU_TARGET="mips64el-softmmu" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 557 | TOOLCHAIN="mips" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 558 | - name: "test/py qemu-ppce500" |
| 559 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 560 | - TEST_PY_BD="qemu-ppce500" |
| 561 | TEST_PY_TEST_SPEC="not sleep" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 562 | QEMU_TARGET="ppc-softmmu" |
Daniel Schwierzeck | 40261f9 | 2018-05-10 07:15:53 -0400 | [diff] [blame] | 563 | TOOLCHAIN="powerpc" |
Bin Meng | aeb3ea4 | 2020-03-28 07:25:27 -0700 | [diff] [blame] | 564 | - name: "test/py qemu-riscv32" |
| 565 | env: |
| 566 | - TEST_PY_BD="qemu-riscv32" |
| 567 | TEST_PY_TEST_SPEC="not sleep" |
| 568 | QEMU_TARGET="riscv32-softmmu" |
Bin Meng | aeb3ea4 | 2020-03-28 07:25:27 -0700 | [diff] [blame] | 569 | TOOLCHAIN="riscv" |
Heinrich Schuchardt | 81f0778 | 2019-07-18 06:33:58 +0200 | [diff] [blame] | 570 | - name: "test/py qemu-riscv64" |
| 571 | env: |
| 572 | - TEST_PY_BD="qemu-riscv64" |
| 573 | TEST_PY_TEST_SPEC="not sleep" |
| 574 | QEMU_TARGET="riscv64-softmmu" |
Heinrich Schuchardt | 81f0778 | 2019-07-18 06:33:58 +0200 | [diff] [blame] | 575 | TOOLCHAIN="riscv" |
Bin Meng | b68d9d6 | 2020-03-28 07:25:29 -0700 | [diff] [blame] | 576 | - name: "test/py qemu-riscv32_spl" |
| 577 | env: |
| 578 | - TEST_PY_BD="qemu-riscv32_spl" |
| 579 | TEST_PY_TEST_SPEC="not sleep" |
| 580 | QEMU_TARGET="riscv32-softmmu" |
Bin Meng | b68d9d6 | 2020-03-28 07:25:29 -0700 | [diff] [blame] | 581 | TOOLCHAIN="riscv" |
| 582 | - name: "test/py qemu-riscv64_spl" |
| 583 | env: |
| 584 | - TEST_PY_BD="qemu-riscv64_spl" |
| 585 | TEST_PY_TEST_SPEC="not sleep" |
| 586 | QEMU_TARGET="riscv64-softmmu" |
Bin Meng | b68d9d6 | 2020-03-28 07:25:29 -0700 | [diff] [blame] | 587 | TOOLCHAIN="riscv" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 588 | - name: "test/py qemu-x86" |
| 589 | env: |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 590 | - TEST_PY_BD="qemu-x86" |
| 591 | TEST_PY_TEST_SPEC="not sleep" |
Tom Rini | 6cd2f9c | 2016-12-07 11:20:40 -0500 | [diff] [blame] | 592 | QEMU_TARGET="i386-softmmu" |
Bin Meng | a2086a8 | 2018-10-08 16:53:54 -0700 | [diff] [blame] | 593 | TOOLCHAIN="i386" |
Stephen Warren | ed84b62 | 2016-10-26 11:05:36 -0600 | [diff] [blame] | 594 | BUILD_ROM="yes" |
Bin Meng | 9171049 | 2018-10-13 20:52:14 -0700 | [diff] [blame] | 595 | - name: "test/py qemu-x86_64" |
| 596 | env: |
| 597 | - TEST_PY_BD="qemu-x86_64" |
| 598 | TEST_PY_TEST_SPEC="not sleep" |
| 599 | QEMU_TARGET="x86_64-softmmu" |
Bin Meng | 9171049 | 2018-10-13 20:52:14 -0700 | [diff] [blame] | 600 | TOOLCHAIN="i386" |
| 601 | BUILD_ROM="yes" |
Michal Simek | f8834fd | 2020-02-13 15:03:29 +0100 | [diff] [blame] | 602 | - name: "test/py xilinx_zynq_virt" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 603 | env: |
Michal Simek | f8834fd | 2020-02-13 15:03:29 +0100 | [diff] [blame] | 604 | - TEST_PY_BD="xilinx_zynq_virt" |
Michal Simek | 64a885e | 2016-12-14 09:47:23 +0100 | [diff] [blame] | 605 | TEST_PY_TEST_SPEC="not sleep" |
| 606 | QEMU_TARGET="arm-softmmu" |
| 607 | TEST_PY_ID="--id qemu" |
Michal Simek | fedc48e | 2018-12-20 08:40:25 +0100 | [diff] [blame] | 608 | - name: "test/py xilinx_versal_virt" |
| 609 | env: |
| 610 | - TEST_PY_BD="xilinx_versal_virt" |
| 611 | TEST_PY_TEST_SPEC="not sleep" |
| 612 | QEMU_TARGET="aarch64-softmmu" |
| 613 | TEST_PY_ID="--id qemu" |
Stephen Warren | b52e853 | 2018-07-30 10:19:43 -0600 | [diff] [blame] | 614 | - name: "test/py xtfpga" |
| 615 | env: |
Max Filippov | 76f0bc2 | 2018-02-07 15:30:03 -0800 | [diff] [blame] | 616 | - TEST_PY_BD="xtfpga" |
| 617 | TEST_PY_TEST_SPEC="not sleep" |
| 618 | QEMU_TARGET="xtensa-softmmu" |
| 619 | TEST_PY_ID="--id qemu" |
Max Filippov | 76f0bc2 | 2018-02-07 15:30:03 -0800 | [diff] [blame] | 620 | TOOLCHAIN="xtensa-dc233c-elf" |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 621 | |
Meier, Roger | 3029f5b | 2014-11-19 15:26:18 +0100 | [diff] [blame] | 622 | # TODO make it perfect ;-r |