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