1044722d5SAlex Bennée# The current Travis default is a container based 14.04 Trust on EC2 2044722d5SAlex Bennée# Additional builds with specific requirements for a full VM need to 3044722d5SAlex Bennée# be added as additional matrix: entries later on 4692d162cSAlex Bennéesudo: false 5044722d5SAlex Bennéedist: trusty 6fe863ab9SAlex Bennéelanguage: c 7fe863ab9SAlex Bennéepython: 88e73a3c5SDaniel P. Berrange - "2.6" 9fe863ab9SAlex Bennéecompiler: 10fe863ab9SAlex Bennée - gcc 114c33d42dSAlex Bennéecache: ccache 12692d162cSAlex Bennéeaddons: 13692d162cSAlex Bennée apt: 14692d162cSAlex Bennée packages: 1532265288SAlex Bennée # Build dependencies 16692d162cSAlex Bennée - libaio-dev 17692d162cSAlex Bennée - libattr1-dev 18692d162cSAlex Bennée - libbrlapi-dev 19692d162cSAlex Bennée - libcap-ng-dev 207524a39dSPhilippe Mathieu-Daudé - libgcc-4.8-dev 21692d162cSAlex Bennée - libgnutls-dev 22692d162cSAlex Bennée - libgtk-3-dev 23692d162cSAlex Bennée - libiscsi-dev 24692d162cSAlex Bennée - liblttng-ust-dev 25692d162cSAlex Bennée - libncurses5-dev 26d83414e1SMarc-André Lureau - libnfs-dev 27692d162cSAlex Bennée - libnss3-dev 28692d162cSAlex Bennée - libpixman-1-dev 29692d162cSAlex Bennée - libpng12-dev 30692d162cSAlex Bennée - librados-dev 31692d162cSAlex Bennée - libsdl1.2-dev 32692d162cSAlex Bennée - libseccomp-dev 33692d162cSAlex Bennée - libspice-protocol-dev 34692d162cSAlex Bennée - libspice-server-dev 35692d162cSAlex Bennée - libssh2-1-dev 36692d162cSAlex Bennée - liburcu-dev 37692d162cSAlex Bennée - libusb-1.0-0-dev 38692d162cSAlex Bennée - libvte-2.90-dev 39692d162cSAlex Bennée - sparse 40692d162cSAlex Bennée - uuid-dev 41692d162cSAlex Bennée 42cb4c2536SPranith Kumar# The channel name "irc.oftc.net#qemu" is encrypted against qemu/qemu 43cb4c2536SPranith Kumar# to prevent IRC notifications from forks. This was created using: 44cb4c2536SPranith Kumar# $ travis encrypt -r "qemu/qemu" "irc.oftc.net#qemu" 4539d16d29SAlex Bennéenotifications: 4639d16d29SAlex Bennée irc: 4739d16d29SAlex Bennée channels: 48cb4c2536SPranith Kumar - secure: "F7GDRgjuOo5IUyRLqSkmDL7kvdU4UcH3Lm/W2db2JnDHTGCqgEdaYEYKciyCLZ57vOTsTsOgesN8iUT7hNHBd1KWKjZe9KDTZWppWRYVwAwQMzVeSOsbbU4tRoJ6Pp+3qhH1Z0eGYR9ZgKYAoTumDFgSAYRp4IscKS8jkoedOqM=" 4939d16d29SAlex Bennée on_success: change 5039d16d29SAlex Bennée on_failure: always 51fe863ab9SAlex Bennéeenv: 52fe863ab9SAlex Bennée global: 5301337fbdSAlex Bennée - TEST_CMD="make check" 54f4089dc8SPaolo Bonzini - MAKEFLAGS="-j3" 55fe863ab9SAlex Bennée matrix: 56ad20a090SAlex Bennée - CONFIG="--disable-system" 57ad20a090SAlex Bennée - CONFIG="--disable-user" 5852dd1967SAlex Bennée - CONFIG="--enable-debug --enable-debug-tcg" 590b438fa6SAlex Bennée - CONFIG="--disable-linux-aio --disable-cap-ng --disable-attr --disable-brlapi --disable-uuid --disable-libusb --disable-user" 6004200a16SAlex Bennée - CONFIG="--enable-modules --disable-linux-user" 6104200a16SAlex Bennée - CONFIG="--with-coroutine=ucontext --disable-linux-user" 6204200a16SAlex Bennée - CONFIG="--with-coroutine=sigaltstack --disable-linux-user" 63cb021cfeSAlex Bennéegit: 64cb021cfeSAlex Bennée # we want to do this ourselves 65cb021cfeSAlex Bennée submodules: false 66fe863ab9SAlex Bennéebefore_install: 671d002037SAlex Bennée - if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew update ; fi 681d002037SAlex Bennée - if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew install libffi gettext glib pixman ; fi 69cb021cfeSAlex Bennée - wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ 70fe863ab9SAlex Bennée - git submodule update --init --recursive 71eebf2940SAlex Bennéebefore_script: 72*6a259f8dSDaniel P. Berrangé - ./configure ${CONFIG} || { cat config.log && exit 1; } 73eebf2940SAlex Bennéescript: 74f4089dc8SPaolo Bonzini - make ${MAKEFLAGS} && ${TEST_CMD} 75fe863ab9SAlex Bennéematrix: 76fe863ab9SAlex Bennée include: 77ae6d692dSAlex Bennée # Test with Clang for compile portability (Travis uses clang-5.0) 78ae6d692dSAlex Bennée - env: CONFIG="--disable-system" 79ae6d692dSAlex Bennée compiler: clang 80ae6d692dSAlex Bennée - env: CONFIG="--disable-user" 81d9a6b013SDaniel P. Berrange compiler: clang 826c933291SAlex Bennée # gprof/gcov are GCC features 837421f739SAlex Bennée - env: CONFIG="--enable-gprof --enable-gcov --disable-pie --disable-linux-user" 846c933291SAlex Bennée compiler: gcc 856c933291SAlex Bennée # We manually include builds which we disable "make check" for 866c933291SAlex Bennée - env: CONFIG="--enable-debug --enable-tcg-interpreter" 8701337fbdSAlex Bennée TEST_CMD="" 88fe863ab9SAlex Bennée compiler: gcc 896c933291SAlex Bennée - env: CONFIG="--enable-trace-backends=simple" 9001337fbdSAlex Bennée TEST_CMD="" 91fe863ab9SAlex Bennée compiler: gcc 926c933291SAlex Bennée - env: CONFIG="--enable-trace-backends=ftrace" 9301337fbdSAlex Bennée TEST_CMD="" 94fe863ab9SAlex Bennée compiler: gcc 956c933291SAlex Bennée - env: CONFIG="--enable-trace-backends=ust" 9601337fbdSAlex Bennée TEST_CMD="" 9786c3b20aSAlex Bennée compiler: gcc 9897837314SPaolo Bonzini - env: CONFIG="--disable-tcg" 9997837314SPaolo Bonzini TEST_CMD="" 10097837314SPaolo Bonzini compiler: gcc 1011d002037SAlex Bennée - env: CONFIG="" 1021d002037SAlex Bennée os: osx 1031d002037SAlex Bennée compiler: clang 104ae6d692dSAlex Bennée # Python builds 105ae6d692dSAlex Bennée - env: CONFIG="--target-list=x86_64-softmmu" 1068e73a3c5SDaniel P. Berrange python: 1078e73a3c5SDaniel P. Berrange - "3.0" 108ae6d692dSAlex Bennée - env: CONFIG="--target-list=x86_64-softmmu" 1098e73a3c5SDaniel P. Berrange python: 1108e73a3c5SDaniel P. Berrange - "3.6" 11132265288SAlex Bennée # Using newer GCC with sanitizers 11232265288SAlex Bennée - addons: 11332265288SAlex Bennée apt: 114ac07ffc6SAlex Bennée update: true 11532265288SAlex Bennée sources: 11632265288SAlex Bennée # PPAs for newer toolchains 11732265288SAlex Bennée - ubuntu-toolchain-r-test 11832265288SAlex Bennée packages: 11932265288SAlex Bennée # Extra toolchains 120ac07ffc6SAlex Bennée - gcc-7 121ac07ffc6SAlex Bennée - g++-7 12232265288SAlex Bennée # Build dependencies 12332265288SAlex Bennée - libaio-dev 12432265288SAlex Bennée - libattr1-dev 12532265288SAlex Bennée - libbrlapi-dev 12632265288SAlex Bennée - libcap-ng-dev 12732265288SAlex Bennée - libgnutls-dev 12832265288SAlex Bennée - libgtk-3-dev 12932265288SAlex Bennée - libiscsi-dev 13032265288SAlex Bennée - liblttng-ust-dev 13132265288SAlex Bennée - libnfs-dev 13232265288SAlex Bennée - libncurses5-dev 13332265288SAlex Bennée - libnss3-dev 13432265288SAlex Bennée - libpixman-1-dev 13532265288SAlex Bennée - libpng12-dev 13632265288SAlex Bennée - librados-dev 13732265288SAlex Bennée - libsdl1.2-dev 13832265288SAlex Bennée - libseccomp-dev 13932265288SAlex Bennée - libspice-protocol-dev 14032265288SAlex Bennée - libspice-server-dev 14132265288SAlex Bennée - libssh2-1-dev 14232265288SAlex Bennée - liburcu-dev 14332265288SAlex Bennée - libusb-1.0-0-dev 14432265288SAlex Bennée - libvte-2.90-dev 14532265288SAlex Bennée - sparse 14632265288SAlex Bennée - uuid-dev 14732265288SAlex Bennée language: generic 14832265288SAlex Bennée compiler: none 14932265288SAlex Bennée env: 150ac07ffc6SAlex Bennée - COMPILER_NAME=gcc CXX=g++-7 CC=gcc-7 151ac07ffc6SAlex Bennée - CONFIG="--cc=gcc-7 --cxx=g++-7 --disable-pie --disable-linux-user" 15232265288SAlex Bennée - TEST_CMD="" 15332265288SAlex Bennée before_script: 154*6a259f8dSDaniel P. Berrangé - ./configure ${CONFIG} --extra-cflags="-g3 -O0 -fsanitize=thread -fuse-ld=gold" || { cat config.log && exit 1; } 155