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