From 5ac5861c4ba851b473e6a24940b412b397627d8d Mon Sep 17 00:00:00 2001 From: Tom Rini Date: Thu, 20 Oct 2016 11:26:40 -0400 Subject: [PATCH] travis-ci: Add test.py for various qemu platforms - Add a PPA for a more recent qemu (required for PowerPC to work) - Add tests to run test.py for various QEMU platforms. This relies on swarren's uboot-test-hooks repository to provide the abstractions. Acked-by: Stephen Warren Reviewed-by: Heiko Schocher Signed-off-by: Tom Rini --- .travis.yml | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 25b0023..d65c570 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,6 +10,8 @@ language: c addons: apt: + sources: + - sourceline: 'ppa:gns3/qemu' packages: - cppcheck - sloccount @@ -19,6 +21,10 @@ addons: - libsdl1.2-dev - python - python-virtualenv + - qemu-system-arm + - qemu-system-mips + - qemu-system-ppc + - qemu-system-x86 - gcc-powerpc-linux-gnu - gcc-arm-linux-gnueabihf - iasl @@ -27,6 +33,10 @@ install: # install latest device tree compiler - git clone --depth=1 git://git.kernel.org/pub/scm/utils/dtc/dtc.git /tmp/dtc - make -j4 -C /tmp/dtc + # Clone uboot-test-hooks + - git clone --depth=1 git://github.com/swarren/uboot-test-hooks.git /tmp/uboot-test-hooks + - ln -s travis-ci /tmp/uboot-test-hooks/bin/`hostname` + - ln -s travis-ci /tmp/uboot-test-hooks/py/`hostname` # prepare buildman environment - export BUILDMAN_ROOT="root:" - echo -e "[toolchain]\n${BUILDMAN_ROOT} /usr" > ~/.buildman @@ -38,7 +48,7 @@ install: env: global: - - PATH=/tmp/dtc:$PATH + - PATH=/tmp/dtc:/tmp/uboot-test-hooks/bin:$PATH - BUILD_DIR=build - HOSTCC="cc" - HOSTCXX="c++" @@ -167,5 +177,29 @@ matrix: # test/py - script: - ./test/py/test.py --bd sandbox --build + - env: + - CROSS_COMPILE="/usr/bin/arm-linux-gnueabihf-" + script: + - ./test/py/test.py --bd vexpress_ca15_tc2 --id qemu --build; + ./test/py/test.py --bd vexpress_ca9x4 --id qemu --build; + ./test/py/test.py --bd integratorcp_cm926ejs --id qemu --build; + - env: + - TOOLCHAIN="mips" + CROSS_COMPILE="${HOME}/.buildman-toolchains/gcc-4.9.0-nolibc/mips-linux/bin/mips-linux-" + script: + - ./test/py/test.py --bd qemu_mips --build -k 'not sleep'; + ./test/py/test.py --bd qemu_mipsel --build -k 'not sleep'; + ./test/py/test.py --bd qemu_mips64 --build -k 'not sleep'; + ./test/py/test.py --bd qemu_mips64el --build -k 'not sleep'; + - env: + - CROSS_COMPILE="/usr/bin/powerpc-linux-gnu-" + script: + - ./test/py/test.py --bd qemu-ppce500 --build -k 'not sleep' + - env: + - TOOLCHAIN="x86_64" + BUILD_ROM=yes + CROSS_COMPILE="${HOME}/.buildman-toolchains/gcc-4.9.0-nolibc/x86_64-linux/bin/x86_64-linux-" + script: + - ./test/py/test.py --bd qemu-x86 --build -k 'not sleep' # TODO make it perfect ;-r