qapi: Emit structs used as variants in topological order
[qemu/kevin.git] / .travis.yml
blob9e5873b28cac5b6091000b439b4f9cf6607aa8b6
1 sudo: false
2 language: c
3 python:
4   - "2.4"
5 compiler:
6   - gcc
7   - clang
8 cache: ccache
9 addons:
10   apt:
11     packages:
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       - libncurses5-dev
21       - libnss3-dev
22       - libpixman-1-dev
23       - libpng12-dev
24       - librados-dev
25       - libsdl1.2-dev
26       - libseccomp-dev
27       - libspice-protocol-dev
28       - libspice-server-dev
29       - libssh2-1-dev
30       - liburcu-dev
31       - libusb-1.0-0-dev
32       - libvte-2.90-dev
33       - sparse
34       - uuid-dev
36 notifications:
37   irc:
38     channels:
39       - "irc.oftc.net#qemu"
40     on_success: change
41     on_failure: always
42 env:
43   global:
44     - TEST_CMD="make check"
45     - EXTRA_CONFIG=""
46   matrix:
47     # Group major targets together with their linux-user counterparts
48     - TARGETS=alpha-softmmu,alpha-linux-user,cris-softmmu,cris-linux-user,m68k-softmmu,m68k-linux-user,microblaze-softmmu,microblazeel-softmmu,microblaze-linux-user,microblazeel-linux-user
49     - TARGETS=arm-softmmu,arm-linux-user,armeb-linux-user,aarch64-softmmu,aarch64-linux-user
50     - TARGETS=i386-softmmu,i386-linux-user,x86_64-softmmu,x86_64-linux-user
51     - TARGETS=mips-softmmu,mips64-softmmu,mips64el-softmmu,mipsel-softmmu,mips-linux-user,mips64-linux-user,mips64el-linux-user,mipsel-linux-user,mipsn32-linux-user,mipsn32el-linux-user
52     - TARGETS=or32-softmmu,or32-linux-user,ppc-softmmu,ppc64-softmmu,ppcemb-softmmu,ppc-linux-user,ppc64-linux-user,ppc64abi32-linux-user,ppc64le-linux-user
53     - TARGETS=s390x-softmmu,s390x-linux-user,sh4-softmmu,sh4eb-softmmu,sh4-linux-user,sh4eb-linux-user,sparc-softmmu,sparc64-softmmu,sparc-linux-user,sparc32plus-linux-user,sparc64-linux-user,unicore32-softmmu,unicore32-linux-user
54     # Group remaining softmmu only targets into one build
55     - TARGETS=lm32-softmmu,moxie-softmmu,tricore-softmmu,xtensa-softmmu,xtensaeb-softmmu
56 git:
57   # we want to do this ourselves
58   submodules: false
59 before_install:
60   - wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ
61   - git submodule update --init --recursive
62 before_script:
63   - ./configure --target-list=${TARGETS} --enable-debug-tcg ${EXTRA_CONFIG}
64 script:
65   - make -j2 && ${TEST_CMD}
66 matrix:
67   # We manually include a number of additional build for non-standard bits
68   include:
69     # Debug related options
70     - env: TARGETS=x86_64-softmmu
71            EXTRA_CONFIG="--enable-debug"
72       compiler: gcc
73     # We currently disable "make check"
74     - env: TARGETS=alpha-softmmu
75            EXTRA_CONFIG="--enable-debug --enable-tcg-interpreter"
76            TEST_CMD=""
77       compiler: gcc
78     # Disable a few of the optional features
79     - env: TARGETS=x86_64-softmmu
80            EXTRA_CONFIG="--disable-linux-aio --disable-cap-ng --disable-attr --disable-brlapi --disable-uuid --disable-libusb"
81       compiler: gcc
82     # Currently configure doesn't force --disable-pie
83     - env: TARGETS=x86_64-softmmu
84            EXTRA_CONFIG="--enable-gprof --enable-gcov --disable-pie"
85       compiler: gcc
86     # Sparse
87     - env: TARGETS=x86_64-softmmu
88            EXTRA_CONFIG="--enable-sparse"
89       compiler: gcc
90     # Modules
91     - env: TARGETS=arm-softmmu,x86_64-softmmu
92            EXTRA_CONFIG="--enable-modules"
93       compiler: gcc
94     # All the trace backends (apart from dtrace)
95     - env: TARGETS=i386-softmmu
96            EXTRA_CONFIG="--enable-trace-backends=log"
97       compiler: gcc
98     # We currently disable "make check" (until 41fc57e44ed regression fixed)
99     - env: TARGETS=x86_64-softmmu
100            EXTRA_CONFIG="--enable-trace-backends=simple"
101            TEST_CMD=""
102       compiler: gcc
103     # We currently disable "make check"
104     - env: TARGETS=x86_64-softmmu
105            EXTRA_CONFIG="--enable-trace-backends=ftrace"
106            TEST_CMD=""
107       compiler: gcc
108     # We currently disable "make check"
109     - env: TARGETS=x86_64-softmmu
110            EXTRA_CONFIG="--enable-trace-backends=ust"
111            TEST_CMD=""
112       compiler: gcc
113     # All the co-routine backends (apart from windows)
114     # We currently disable "make check"
115     - env: TARGETS=x86_64-softmmu
116            EXTRA_CONFIG="--with-coroutine=gthread"
117            TEST_CMD=""
118       compiler: gcc
119     - env: TARGETS=x86_64-softmmu
120            EXTRA_CONFIG="--with-coroutine=ucontext"
121       compiler: gcc
122     - env: TARGETS=x86_64-softmmu
123            EXTRA_CONFIG="--with-coroutine=sigaltstack"
124       compiler: gcc