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