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