1sudo: false 2language: c 3python: 4 - "2.4" 5compiler: 6 - gcc 7cache: ccache 8addons: 9 apt: 10 packages: 11 # Build dependencies 12 - libaio-dev 13 - libattr1-dev 14 - libbrlapi-dev 15 - libcap-ng-dev 16 - libgnutls-dev 17 - libgtk-3-dev 18 - libiscsi-dev 19 - liblttng-ust-dev 20 - libnfs-dev 21 - libncurses5-dev 22 - libnss3-dev 23 - libpixman-1-dev 24 - libpng12-dev 25 - librados-dev 26 - libsdl1.2-dev 27 - libseccomp-dev 28 - libspice-protocol-dev 29 - libspice-server-dev 30 - libssh2-1-dev 31 - liburcu-dev 32 - libusb-1.0-0-dev 33 - libvte-2.90-dev 34 - sparse 35 - uuid-dev 36 37# The channel name "irc.oftc.net#qemu" is encrypted against qemu/qemu 38# to prevent IRC notifications from forks. This was created using: 39# $ travis encrypt -r "qemu/qemu" "irc.oftc.net#qemu" 40notifications: 41 irc: 42 channels: 43 - secure: "F7GDRgjuOo5IUyRLqSkmDL7kvdU4UcH3Lm/W2db2JnDHTGCqgEdaYEYKciyCLZ57vOTsTsOgesN8iUT7hNHBd1KWKjZe9KDTZWppWRYVwAwQMzVeSOsbbU4tRoJ6Pp+3qhH1Z0eGYR9ZgKYAoTumDFgSAYRp4IscKS8jkoedOqM=" 44 on_success: change 45 on_failure: always 46env: 47 global: 48 - TEST_CMD="make check" 49 matrix: 50 - CONFIG="" 51 - CONFIG="--enable-debug --enable-debug-tcg --enable-trace-backends=log" 52 - CONFIG="--disable-linux-aio --disable-cap-ng --disable-attr --disable-brlapi --disable-uuid --disable-libusb" 53 - CONFIG="--enable-modules" 54 - CONFIG="--with-coroutine=ucontext" 55 - CONFIG="--with-coroutine=sigaltstack" 56git: 57 # we want to do this ourselves 58 submodules: false 59before_install: 60 - if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew update ; fi 61 - if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew install libffi gettext glib pixman ; fi 62 - wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ 63 - git submodule update --init --recursive 64before_script: 65 - ./configure ${CONFIG} 66script: 67 - make -j3 && ${TEST_CMD} 68matrix: 69 include: 70 # Test with CLang for compile portability 71 - env: CONFIG="" 72 compiler: clang 73 # gprof/gcov are GCC features 74 - env: CONFIG="--enable-gprof --enable-gcov --disable-pie" 75 compiler: gcc 76 # We manually include builds which we disable "make check" for 77 - env: CONFIG="--enable-debug --enable-tcg-interpreter" 78 TEST_CMD="" 79 compiler: gcc 80 - env: CONFIG="--enable-trace-backends=simple" 81 TEST_CMD="" 82 compiler: gcc 83 - env: CONFIG="--enable-trace-backends=ftrace" 84 TEST_CMD="" 85 compiler: gcc 86 - env: CONFIG="--enable-trace-backends=ust" 87 TEST_CMD="" 88 compiler: gcc 89 - env: CONFIG="--with-coroutine=gthread" 90 TEST_CMD="" 91 compiler: gcc 92 - env: CONFIG="" 93 os: osx 94 compiler: clang 95 # Plain Trusty System Build 96 - env: CONFIG="--disable-linux-user" 97 sudo: required 98 addons: 99 dist: trusty 100 compiler: gcc 101 before_install: 102 - sudo apt-get update -qq 103 - sudo apt-get build-dep -qq qemu 104 - wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ 105 - git submodule update --init --recursive 106 # Plain Trusty Linux User Build 107 - env: CONFIG="--disable-system" 108 sudo: required 109 addons: 110 dist: trusty 111 compiler: gcc 112 before_install: 113 - sudo apt-get update -qq 114 - sudo apt-get build-dep -qq qemu 115 - wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ 116 - git submodule update --init --recursive 117 # Trusty System build with latest stable clang 118 - sudo: required 119 addons: 120 dist: trusty 121 language: generic 122 compiler: none 123 env: 124 - COMPILER_NAME=clang CXX=clang++-3.9 CC=clang-3.9 125 - CONFIG="--disable-linux-user --cc=clang-3.9 --cxx=clang++-3.9" 126 before_install: 127 - wget -nv -O - http://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add - 128 - sudo apt-add-repository -y 'deb http://llvm.org/apt/trusty llvm-toolchain-trusty-3.9 main' 129 - sudo apt-get update -qq 130 - sudo apt-get install -qq -y clang-3.9 131 - sudo apt-get build-dep -qq qemu 132 - wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ 133 - git submodule update --init --recursive 134 before_script: 135 - ./configure ${CONFIG} || cat config.log 136 # Trusty Linux User build with latest stable clang 137 - sudo: required 138 addons: 139 dist: trusty 140 language: generic 141 compiler: none 142 env: 143 - COMPILER_NAME=clang CXX=clang++-3.9 CC=clang-3.9 144 - CONFIG="--disable-system --cc=clang-3.9 --cxx=clang++-3.9" 145 before_install: 146 - wget -nv -O - http://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add - 147 - sudo apt-add-repository -y 'deb http://llvm.org/apt/trusty llvm-toolchain-trusty-3.9 main' 148 - sudo apt-get update -qq 149 - sudo apt-get install -qq -y clang-3.9 150 - sudo apt-get build-dep -qq qemu 151 - wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ 152 - git submodule update --init --recursive 153 before_script: 154 - ./configure ${CONFIG} || cat config.log 155 # Using newer GCC with sanitizers 156 - addons: 157 apt: 158 sources: 159 # PPAs for newer toolchains 160 - ubuntu-toolchain-r-test 161 packages: 162 # Extra toolchains 163 - gcc-5 164 - g++-5 165 # Build dependencies 166 - libaio-dev 167 - libattr1-dev 168 - libbrlapi-dev 169 - libcap-ng-dev 170 - libgnutls-dev 171 - libgtk-3-dev 172 - libiscsi-dev 173 - liblttng-ust-dev 174 - libnfs-dev 175 - libncurses5-dev 176 - libnss3-dev 177 - libpixman-1-dev 178 - libpng12-dev 179 - librados-dev 180 - libsdl1.2-dev 181 - libseccomp-dev 182 - libspice-protocol-dev 183 - libspice-server-dev 184 - libssh2-1-dev 185 - liburcu-dev 186 - libusb-1.0-0-dev 187 - libvte-2.90-dev 188 - sparse 189 - uuid-dev 190 language: generic 191 compiler: none 192 env: 193 - COMPILER_NAME=gcc CXX=g++-5 CC=gcc-5 194 - CONFIG="--cc=gcc-5 --cxx=g++-5 --disable-pie --disable-linux-user --with-coroutine=gthread" 195 - TEST_CMD="" 196 before_script: 197 - ./configure ${CONFIG} --extra-cflags="-g3 -O0 -fsanitize=thread -fuse-ld=gold" || cat config.log 198