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