@@ -1,5 +1,14 @@
language: c
env:
+ global:
+ - TEST_CMD="make check"
+ - EXTRA_CONFIG=""
+ # Development packages, EXTRA_PKGS saved for additional builds
+ - CORE_PKGS="libusb-1.0-0-dev libiscsi-dev librados-dev libncurses5-dev"
+ - NET_PKGS="libseccomp-dev libgnutls-dev libssh2-1-dev libspice-server-dev libspice-protocol-dev libnss3-dev"
+ - GUI_PKGS="libgtk-3-dev libvte-2.90-dev libsdl1.2-dev libpng12-dev libpixman-1-dev"
+ - EXTRA_PKGS=""
+ matrix:
- TARGETS=alpha-softmmu,alpha-linux-user
- TARGETS=arm-softmmu,arm-linux-user
- TARGETS=cris-softmmu
@@ -16,4 +25,31 @@ env:
- TARGETS=sparc-softmmu,sparc64-softmmu
- TARGETS=unicore32-softmmu
- TARGETS=xtensa-softmmu,xtensaeb-softmmu
-script: "./configure --target-list=${TARGETS} && make && make check"
+before_install:
+ - git submodule update --init --recursive
+ - sudo apt-get update -qq
+ - sudo apt-get install -qq ${CORE_PKGS} ${NET_PKGS} ${GUI_PKGS} ${EXTRA_PKGS}
+script: "./configure --target-list=${TARGETS} ${EXTRA_CONFIG} && make && ${TEST_CMD}"
+matrix:
+ # We manually include a number of additional build for non-standard bits
+ include:
+ # Debug related options
+ - env: TARGETS=i386-softmmu,x86_64-softmmu
+ EXTRA_CONFIG="--enable-debug--enable-debug-tcg --enable-tcg-interpreter"
+ # Currently configure doesn't force --disable-pie
+ - env: TARGETS=i386-softmmu,x86_64-softmmu
+ EXTRA_CONFIG="--enable-gprof --enable-gcov --disable-pie"
+ - env: TARGETS=i386-softmmu,x86_64-softmmu
+ EXTRA_PKGS="sparse"
+ EXTRA_CONFIG="--enable-sparse"
+ # All the trace backends (apart from dtrace)
+ - env: TARGETS=i386-softmmu,x86_64-softmmu
+ EXTRA_CONFIG="--enable-trace-backend=stderr"
+ - env: TARGETS=i386-softmmu,x86_64-softmmu
+ EXTRA_CONFIG="--enable-trace-backend=simple"
+ - env: TARGETS=i386-softmmu,x86_64-softmmu
+ EXTRA_CONFIG="--enable-trace-backend=ftrace"
+ # Currently broken on 12.04 due to mis-packaged liburcu and changed API, will be pulled.
+ #- env: TARGETS=i386-softmmu,x86_64-softmmu
+ # EXTRA_PKGS="liblttng-ust-dev liburcu-dev"
+ # EXTRA_CONFIG="--enable-trace-backend=ust"
From: Alex Bennée <alex@bennee.com> I've made the definitions more modular to allow for greater build control in each part of the matrix. I've confined the additional stuff to x86/x86_64 for convenience. --- .travis.yml | 38 +++++++++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-)