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