xref: /openbmc/qemu/.travis.yml (revision b917da4c)
1sudo: false
2language: c
3python:
4  - "2.4"
5compiler:
6  - gcc
7  - clang
8cache: ccache
9addons:
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
35
36notifications:
37  irc:
38    channels:
39      - "irc.oftc.net#qemu"
40    on_success: change
41    on_failure: always
42env:
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
56git:
57  # we want to do this ourselves
58  submodules: false
59before_install:
60  - wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ
61  - git submodule update --init --recursive
62before_script:
63  - ./configure --target-list=${TARGETS} --enable-debug-tcg ${EXTRA_CONFIG}
64script:
65  - make -j2 && ${TEST_CMD}
66matrix:
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
125