summaryrefslogtreecommitdiff
path: root/.travis.yml
blob: 9e5873b28cac5b6091000b439b4f9cf6607aa8b6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
sudo: false
language: c
python:
  - "2.4"
compiler:
  - gcc
  - clang
cache: ccache
addons:
  apt:
    packages:
      - libaio-dev
      - libattr1-dev
      - libbrlapi-dev
      - libcap-ng-dev
      - libgnutls-dev
      - libgtk-3-dev
      - libiscsi-dev
      - liblttng-ust-dev
      - libncurses5-dev
      - libnss3-dev
      - libpixman-1-dev
      - libpng12-dev
      - librados-dev
      - libsdl1.2-dev
      - libseccomp-dev
      - libspice-protocol-dev
      - libspice-server-dev
      - libssh2-1-dev
      - liburcu-dev
      - libusb-1.0-0-dev
      - libvte-2.90-dev
      - sparse
      - uuid-dev

notifications:
  irc:
    channels:
      - "irc.oftc.net#qemu"
    on_success: change
    on_failure: always
env:
  global:
    - TEST_CMD="make check"
    - EXTRA_CONFIG=""
  matrix:
    # Group major targets together with their linux-user counterparts
    - 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
    - TARGETS=arm-softmmu,arm-linux-user,armeb-linux-user,aarch64-softmmu,aarch64-linux-user
    - TARGETS=i386-softmmu,i386-linux-user,x86_64-softmmu,x86_64-linux-user
    - 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
    - TARGETS=or32-softmmu,or32-linux-user,ppc-softmmu,ppc64-softmmu,ppcemb-softmmu,ppc-linux-user,ppc64-linux-user,ppc64abi32-linux-user,ppc64le-linux-user
    - 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
    # Group remaining softmmu only targets into one build
    - TARGETS=lm32-softmmu,moxie-softmmu,tricore-softmmu,xtensa-softmmu,xtensaeb-softmmu
git:
  # we want to do this ourselves
  submodules: false
before_install:
  - wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ
  - git submodule update --init --recursive
before_script:
  - ./configure --target-list=${TARGETS} --enable-debug-tcg ${EXTRA_CONFIG}
script:
  - make -j2 && ${TEST_CMD}
matrix:
  # We manually include a number of additional build for non-standard bits
  include:
    # Debug related options
    - env: TARGETS=x86_64-softmmu
           EXTRA_CONFIG="--enable-debug"
      compiler: gcc
    # We currently disable "make check"
    - env: TARGETS=alpha-softmmu
           EXTRA_CONFIG="--enable-debug --enable-tcg-interpreter"
           TEST_CMD=""
      compiler: gcc
    # Disable a few of the optional features
    - env: TARGETS=x86_64-softmmu
           EXTRA_CONFIG="--disable-linux-aio --disable-cap-ng --disable-attr --disable-brlapi --disable-uuid --disable-libusb"
      compiler: gcc
    # Currently configure doesn't force --disable-pie
    - env: TARGETS=x86_64-softmmu
           EXTRA_CONFIG="--enable-gprof --enable-gcov --disable-pie"
      compiler: gcc
    # Sparse
    - env: TARGETS=x86_64-softmmu
           EXTRA_CONFIG="--enable-sparse"
      compiler: gcc
    # Modules
    - env: TARGETS=arm-softmmu,x86_64-softmmu
           EXTRA_CONFIG="--enable-modules"
      compiler: gcc
    # All the trace backends (apart from dtrace)
    - env: TARGETS=i386-softmmu
           EXTRA_CONFIG="--enable-trace-backends=log"
      compiler: gcc
    # We currently disable "make check" (until 41fc57e44ed regression fixed)
    - env: TARGETS=x86_64-softmmu
           EXTRA_CONFIG="--enable-trace-backends=simple"
           TEST_CMD=""
      compiler: gcc
    # We currently disable "make check"
    - env: TARGETS=x86_64-softmmu
           EXTRA_CONFIG="--enable-trace-backends=ftrace"
           TEST_CMD=""
      compiler: gcc
    # We currently disable "make check"
    - env: TARGETS=x86_64-softmmu
           EXTRA_CONFIG="--enable-trace-backends=ust"
           TEST_CMD=""
      compiler: gcc
    # All the co-routine backends (apart from windows)
    # We currently disable "make check"
    - env: TARGETS=x86_64-softmmu
           EXTRA_CONFIG="--with-coroutine=gthread"
           TEST_CMD=""
      compiler: gcc
    - env: TARGETS=x86_64-softmmu
           EXTRA_CONFIG="--with-coroutine=ucontext"
      compiler: gcc
    - env: TARGETS=x86_64-softmmu
           EXTRA_CONFIG="--with-coroutine=sigaltstack"
      compiler: gcc