qemu/.travis.yml
<<
>>
Prefs
   1sudo: false
   2language: c
   3python:
   4  - "2.4"
   5compiler:
   6  - gcc
   7  - clang
   8cache: ccache
   9addons:
  10  apt:
  11    packages:
  12      # Build dependencies
  13      - libaio-dev
  14      - libattr1-dev
  15      - libbrlapi-dev
  16      - libcap-ng-dev
  17      - libgnutls-dev
  18      - libgtk-3-dev
  19      - libiscsi-dev
  20      - liblttng-ust-dev
  21      - libnfs-dev
  22      - libncurses5-dev
  23      - libnss3-dev
  24      - libpixman-1-dev
  25      - libpng12-dev
  26      - librados-dev
  27      - libsdl1.2-dev
  28      - libseccomp-dev
  29      - libspice-protocol-dev
  30      - libspice-server-dev
  31      - libssh2-1-dev
  32      - liburcu-dev
  33      - libusb-1.0-0-dev
  34      - libvte-2.90-dev
  35      - sparse
  36      - uuid-dev
  37
  38# The channel name "irc.oftc.net#qemu" is encrypted against qemu/qemu
  39# to prevent IRC notifications from forks. This was created using:
  40# $ travis encrypt -r "qemu/qemu" "irc.oftc.net#qemu"
  41notifications:
  42  irc:
  43    channels:
  44      - secure: "F7GDRgjuOo5IUyRLqSkmDL7kvdU4UcH3Lm/W2db2JnDHTGCqgEdaYEYKciyCLZ57vOTsTsOgesN8iUT7hNHBd1KWKjZe9KDTZWppWRYVwAwQMzVeSOsbbU4tRoJ6Pp+3qhH1Z0eGYR9ZgKYAoTumDFgSAYRp4IscKS8jkoedOqM="
  45    on_success: change
  46    on_failure: always
  47env:
  48  global:
  49    - TEST_CMD="make check"
  50  matrix:
  51    - CONFIG=""
  52    - CONFIG="--enable-debug --enable-debug-tcg --enable-trace-backends=log"
  53    - CONFIG="--disable-linux-aio --disable-cap-ng --disable-attr --disable-brlapi --disable-uuid --disable-libusb"
  54    - CONFIG="--enable-modules"
  55    - CONFIG="--with-coroutine=ucontext"
  56    - CONFIG="--with-coroutine=sigaltstack"
  57git:
  58  # we want to do this ourselves
  59  submodules: false
  60before_install:
  61  - if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew update ; fi
  62  - if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew install libffi gettext glib pixman ; fi
  63  - wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ
  64  - git submodule update --init --recursive
  65before_script:
  66  - ./configure ${CONFIG}
  67script:
  68  - make -j3 && ${TEST_CMD}
  69matrix:
  70  include:
  71    # gprof/gcov are GCC features
  72    - env: CONFIG="--enable-gprof --enable-gcov --disable-pie"
  73      compiler: gcc
  74    # We manually include builds which we disable "make check" for
  75    - env: CONFIG="--enable-debug --enable-tcg-interpreter"
  76           TEST_CMD=""
  77      compiler: gcc
  78    - env: CONFIG="--enable-trace-backends=simple"
  79           TEST_CMD=""
  80      compiler: gcc
  81    - env: CONFIG="--enable-trace-backends=ftrace"
  82           TEST_CMD=""
  83      compiler: gcc
  84    - env: CONFIG="--enable-trace-backends=ust"
  85           TEST_CMD=""
  86      compiler: gcc
  87    - env: CONFIG="--with-coroutine=gthread"
  88           TEST_CMD=""
  89      compiler: gcc
  90    - env: CONFIG=""
  91      os: osx
  92      compiler: clang
  93    # Plain Trusty Build
  94    - env: CONFIG=""
  95      sudo: required
  96      addons:
  97      dist: trusty
  98      compiler: gcc
  99      before_install:
 100        - sudo apt-get update -qq
 101        - sudo apt-get build-dep -qq qemu
 102        - wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ
 103        - git submodule update --init --recursive
 104    # Using newer GCC with sanitizers
 105    - addons:
 106        apt:
 107          sources:
 108            # PPAs for newer toolchains
 109            - ubuntu-toolchain-r-test
 110          packages:
 111            # Extra toolchains
 112            - gcc-5
 113            - g++-5
 114            # Build dependencies
 115            - libaio-dev
 116            - libattr1-dev
 117            - libbrlapi-dev
 118            - libcap-ng-dev
 119            - libgnutls-dev
 120            - libgtk-3-dev
 121            - libiscsi-dev
 122            - liblttng-ust-dev
 123            - libnfs-dev
 124            - libncurses5-dev
 125            - libnss3-dev
 126            - libpixman-1-dev
 127            - libpng12-dev
 128            - librados-dev
 129            - libsdl1.2-dev
 130            - libseccomp-dev
 131            - libspice-protocol-dev
 132            - libspice-server-dev
 133            - libssh2-1-dev
 134            - liburcu-dev
 135            - libusb-1.0-0-dev
 136            - libvte-2.90-dev
 137            - sparse
 138            - uuid-dev
 139      language: generic
 140      compiler: none
 141      env:
 142        - COMPILER_NAME=gcc CXX=g++-5 CC=gcc-5
 143        - CONFIG="--cc=gcc-5 --cxx=g++-5 --disable-pie --disable-linux-user --with-coroutine=gthread"
 144        - TEST_CMD=""
 145      before_script:
 146        - ./configure ${CONFIG} --extra-cflags="-g3 -O0 -fsanitize=thread -fuse-ld=gold" || cat config.log
 147