X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=.travis.yml;h=69829fcfa0200a2a5d38cc333334bbc7b70a07e5;hb=19ea606109135c3d9892d86e1b1c2a8fb551cc1b;hp=176cf0c6f22b75660c3a4ea4aa1d921307b82d9c;hpb=cec1e856d3d40544fdf8d4d71e4805963c537c18;p=platform%2Fkernel%2Fu-boot.git diff --git a/.travis.yml b/.travis.yml index 176cf0c..69829fc 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,9 +10,10 @@ language: c addons: apt: + update: true sources: - - ubuntu-toolchain-r-test - - llvm-toolchain-bionic-7 + - sourceline: 'deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-10 main' + key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' packages: - autopoint - cppcheck @@ -22,10 +23,10 @@ addons: - build-essential - libsdl2-dev - python - - python-pyelftools - python3-sphinx - python3-virtualenv - python3-pip + - python3-pygit2 - swig - libpython-dev - iasl @@ -38,9 +39,20 @@ addons: - liblz4-tool - lzma-alone - libisl15 - - clang-7 + - clang-10 - srecord - graphviz + - coreutils + - util-linux + - dosfstools + - gdisk + - mount + - mtools + - openssl + - sbsigntool + - fakeroot + - mtd-utils + - squashfs-tools install: # Clone uboot-test-hooks @@ -49,7 +61,7 @@ install: - ln -s travis-ci /tmp/uboot-test-hooks/py/`hostname` # prepare buildman environment - echo -e "[toolchain]\nroot = /usr" > ~/.buildman - - echo -e "arc = /tmp/arc_gnu_2018.09_prebuilt_uclibc_le_archs_linux_install" >> ~/.buildman + - echo -e "arc = /tmp/arc_gnu_2019.09_prebuilt_uclibc_le_archs_linux_install" >> ~/.buildman - echo -e "\n[toolchain-alias]\nsh = sh2" >> ~/.buildman - echo -e "x86 = i386" >> ~/.buildman; - echo -e "riscv = riscv64" >> ~/.buildman; @@ -57,10 +69,11 @@ install: - grub-mkimage --prefix="" -o ~/grub_x86.efi -O i386-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd - grub-mkimage --prefix="" -o ~/grub_x64.efi -O x86_64-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd - 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 + - 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 env: global: - - PATH=/tmp/qemu-install/bin:/tmp/uboot-test-hooks/bin:/usr/bin:/bin:/usr/local/bin + - PATH=/tmp/qemu-install/bin:/tmp/uboot-test-hooks/bin:/sbin:/usr/bin:/bin:/usr/local/bin - PYTHONPATH=/tmp/uboot-test-hooks/py/travis-ci - BUILD_DIR=build - HOSTCC="cc" @@ -77,8 +90,8 @@ before_script: ./tools/buildman/buildman --fetch-arch i386; fi - if [[ "${TOOLCHAIN}" == arc ]]; then - wget https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/download/arc-2018.09-release/arc_gnu_2018.09_prebuilt_uclibc_le_archs_linux_install.tar.gz && - tar -C /tmp -xf arc_gnu_2018.09_prebuilt_uclibc_le_archs_linux_install.tar.gz; + 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 && + tar -C /tmp -xf arc_gnu_2019.09_prebuilt_uclibc_le_archs_linux_install.tar.gz; fi - if [[ "${TOOLCHAIN}" == "nds32" ]]; then wget https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases/download/20180521/nds32le-linux-glibc-v3-upstream.tar.gz && @@ -192,12 +205,12 @@ before_script: popd; fi - if [[ "${TEST_PY_BD}" == "qemu-riscv32_spl" ]]; then - wget -O - https://github.com/riscv/opensbi/releases/download/v0.6/opensbi-0.6-rv32-bin.tar.xz | tar -C /tmp -xJ; - export OPENSBI=/tmp/opensbi-0.6-rv32-bin/platform/qemu/virt/firmware/fw_dynamic.bin; + wget -O - https://github.com/riscv/opensbi/releases/download/v0.8/opensbi-0.8-rv-bin.tar.xz | tar -C /tmp -xJ; + export OPENSBI=/tmp/opensbi-0.8-rv-bin/share/opensbi/ilp32/generic/firmware/fw_dynamic.bin; fi - if [[ "${TEST_PY_BD}" == "qemu-riscv64_spl" ]]; then - wget -O - https://github.com/riscv/opensbi/releases/download/v0.6/opensbi-0.6-rv64-bin.tar.xz | tar -C /tmp -xJ; - export OPENSBI=/tmp/opensbi-0.6-rv64-bin/platform/qemu/virt/firmware/fw_dynamic.bin; + wget -O - https://github.com/riscv/opensbi/releases/download/v0.8/opensbi-0.8-rv-bin.tar.xz | tar -C /tmp -xJ; + export OPENSBI=/tmp/opensbi-0.8-rv-bin/share/opensbi/lp64/generic/firmware/fw_dynamic.bin; fi script: @@ -208,7 +221,8 @@ script: # # Build a selection of boards if TEST_PY_BD is empty - if [[ "${BUILDMAN}" != "" ]]; then - tools/buildman/buildman -P -E -W ${BUILDMAN} ${OVERRIDE}; + ret=0 + tools/buildman/buildman -P -E -W ${BUILDMAN} ${OVERRIDE} || ret=$?; if [[ $ret -ne 0 ]]; then tools/buildman/buildman -seP ${BUILDMAN}; exit $ret; @@ -232,25 +246,20 @@ script: if [[ -e ~/grub_riscv64.efi ]]; then cp ~/grub_riscv64.efi $UBOOT_TRAVIS_BUILD_DIR/; fi; - ret=0; - tools/buildman/buildman -o ${UBOOT_TRAVIS_BUILD_DIR} -w -E -W - --board ${TEST_PY_BD} ${OVERRIDE}|| ret=$?; - if [[ $ret -ne 0 ]]; then - tools/buildman/buildman -se -o ${UBOOT_TRAVIS_BUILD_DIR} -w - --board ${TEST_PY_BD}; - exit $ret; - fi; + tools/buildman/buildman -o ${UBOOT_TRAVIS_BUILD_DIR} -w -E -W -e + --board ${TEST_PY_BD} ${OVERRIDE} || exit; virtualenv -p /usr/bin/python3 /tmp/venv; . /tmp/venv/bin/activate; pip install -r test/py/requirements.txt; - ./test/py/test.py --bd ${TEST_PY_BD} ${TEST_PY_ID} + ./test/py/test.py -ra --bd ${TEST_PY_BD} ${TEST_PY_ID} ${TEST_PY_TEST_SPEC:+"-k ${TEST_PY_TEST_SPEC}"} --build-dir "$UBOOT_TRAVIS_BUILD_DIR" || exit; if [[ -n "${TEST_PY_TOOLS}" ]]; then export PYTHONPATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc/pylibfdt"; export PATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc:${PATH}"; + pip install pyelftools && ./tools/binman/binman --toolpath ${UBOOT_TRAVIS_BUILD_DIR}/tools test && - ./tools/patman/patman --test && + ./tools/patman/patman test && ./tools/buildman/buildman -t && ./tools/dtoc/dtoc -t && make testconfig; @@ -454,7 +463,7 @@ matrix: # static code analysis with cppcheck (we can add --enable=all later) - name: "cppcheck" script: - - cppcheck --force --quiet --inline-suppr . + - cppcheck -j$(nproc) --force --quiet --inline-suppr . # build HTML documentation - name: "htmldocs" script: @@ -487,6 +496,11 @@ matrix: script: - make tools-only_config envtools -j$(nproc) + - name: "Run tests for Nokia RX-51 (aka N900)" + script: + - export PATH=~/.buildman-toolchains/gcc-9.2.0-nolibc/arm-linux-gnueabi/bin/:$PATH + - test/nokia_rx51_test.sh + # test/py - name: "test/py sandbox" env: @@ -495,11 +509,11 @@ matrix: - name: "test/py sandbox with clang" env: - TEST_PY_BD="sandbox" - OVERRIDE="-O clang-7" + OVERRIDE="-O clang-10" - name: "test/py sandbox_spl" env: - TEST_PY_BD="sandbox_spl" - TEST_PY_TEST_SPEC="test_ofplatdata or test_handoff" + TEST_PY_TEST_SPEC="test_ofplatdata or test_handoff or test_spl" TOOLCHAIN="i386" TEST_PY_TOOLS="yes" - name: "test/py sandbox_flattree" @@ -561,6 +575,34 @@ matrix: TEST_PY_TEST_SPEC="not sleep" QEMU_TARGET="mips64el-softmmu" TOOLCHAIN="mips" + - name: "test/py qemu-malta" + env: + - TEST_PY_BD="malta" + TEST_PY_TEST_SPEC="not sleep and not efi" + TEST_PY_ID="--id qemu" + QEMU_TARGET="mips-softmmu" + TOOLCHAIN="mips" + - name: "test/py qemu-maltael" + env: + - TEST_PY_BD="maltael" + TEST_PY_TEST_SPEC="not sleep and not efi" + TEST_PY_ID="--id qemu" + QEMU_TARGET="mipsel-softmmu" + TOOLCHAIN="mips" + - name: "test/py qemu-malta64" + env: + - TEST_PY_BD="malta64" + TEST_PY_TEST_SPEC="not sleep and not efi" + TEST_PY_ID="--id qemu" + QEMU_TARGET="mips64-softmmu" + TOOLCHAIN="mips" + - name: "test/py qemu-malta64el" + env: + - TEST_PY_BD="malta64el" + TEST_PY_TEST_SPEC="not sleep and not efi" + TEST_PY_ID="--id qemu" + QEMU_TARGET="mips64el-softmmu" + TOOLCHAIN="mips" - name: "test/py qemu-ppce500" env: - TEST_PY_BD="qemu-ppce500" @@ -605,6 +647,34 @@ matrix: QEMU_TARGET="x86_64-softmmu" TOOLCHAIN="i386" BUILD_ROM="yes" + - name: "test/py r2dplus_i82557c" + env: + - TEST_PY_BD="r2dplus" + TEST_PY_ID="--id i82557c_qemu" + QEMU_TARGET="sh4-softmmu" + BUILDMAN="sh -x arm" + TOOLCHAIN="sh" + - name: "test/py r2dplus_pcnet" + env: + - TEST_PY_BD="r2dplus" + TEST_PY_ID="--id pcnet_qemu" + QEMU_TARGET="sh4-softmmu" + BUILDMAN="sh -x arm" + TOOLCHAIN="sh" + - name: "test/py r2dplus_rtl8139" + env: + - TEST_PY_BD="r2dplus" + TEST_PY_ID="--id rtl8139_qemu" + QEMU_TARGET="sh4-softmmu" + BUILDMAN="sh -x arm" + TOOLCHAIN="sh" + - name: "test/py r2dplus_tulip" + env: + - TEST_PY_BD="r2dplus" + TEST_PY_ID="--id tulip_qemu" + QEMU_TARGET="sh4-softmmu" + BUILDMAN="sh -x arm" + TOOLCHAIN="sh" - name: "test/py xilinx_zynq_virt" env: - TEST_PY_BD="xilinx_zynq_virt"