8e73a3c5fc
Currently travis declares ancient python 2.4 is desired. Update that to 2.6 which is the oldest version any targetted distros still needs. If we just list a python 3 version at the top level this will double the number of travis jobs we run which is unreasonable. So arbitrarily pick the clang test matrix entries to build with python 3.0 and 3.6, to extend coverage of python versions, without increasing job count or build time. Signed-off-by: Daniel P. Berrange <berrange@redhat.com> Message-Id: <20180116134217.8725-14-berrange@redhat.com> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
203 lines
6.5 KiB
YAML
203 lines
6.5 KiB
YAML
sudo: false
|
|
language: c
|
|
python:
|
|
- "2.6"
|
|
compiler:
|
|
- gcc
|
|
cache: ccache
|
|
addons:
|
|
apt:
|
|
packages:
|
|
# Build dependencies
|
|
- libaio-dev
|
|
- libattr1-dev
|
|
- libbrlapi-dev
|
|
- libcap-ng-dev
|
|
- libgnutls-dev
|
|
- libgtk-3-dev
|
|
- libiscsi-dev
|
|
- liblttng-ust-dev
|
|
- libnfs-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
|
|
|
|
# The channel name "irc.oftc.net#qemu" is encrypted against qemu/qemu
|
|
# to prevent IRC notifications from forks. This was created using:
|
|
# $ travis encrypt -r "qemu/qemu" "irc.oftc.net#qemu"
|
|
notifications:
|
|
irc:
|
|
channels:
|
|
- secure: "F7GDRgjuOo5IUyRLqSkmDL7kvdU4UcH3Lm/W2db2JnDHTGCqgEdaYEYKciyCLZ57vOTsTsOgesN8iUT7hNHBd1KWKjZe9KDTZWppWRYVwAwQMzVeSOsbbU4tRoJ6Pp+3qhH1Z0eGYR9ZgKYAoTumDFgSAYRp4IscKS8jkoedOqM="
|
|
on_success: change
|
|
on_failure: always
|
|
env:
|
|
global:
|
|
- TEST_CMD="make check"
|
|
- MAKEFLAGS="-j3"
|
|
matrix:
|
|
- CONFIG=""
|
|
- CONFIG="--enable-debug --enable-debug-tcg --enable-trace-backends=log"
|
|
- CONFIG="--disable-linux-aio --disable-cap-ng --disable-attr --disable-brlapi --disable-uuid --disable-libusb"
|
|
- CONFIG="--enable-modules"
|
|
- CONFIG="--with-coroutine=ucontext"
|
|
- CONFIG="--with-coroutine=sigaltstack"
|
|
git:
|
|
# we want to do this ourselves
|
|
submodules: false
|
|
before_install:
|
|
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew update ; fi
|
|
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew install libffi gettext glib pixman ; fi
|
|
- wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ
|
|
- git submodule update --init --recursive
|
|
before_script:
|
|
- ./configure ${CONFIG}
|
|
script:
|
|
- make ${MAKEFLAGS} && ${TEST_CMD}
|
|
matrix:
|
|
include:
|
|
# Test with CLang for compile portability
|
|
- env: CONFIG=""
|
|
compiler: clang
|
|
# gprof/gcov are GCC features
|
|
- env: CONFIG="--enable-gprof --enable-gcov --disable-pie"
|
|
compiler: gcc
|
|
# We manually include builds which we disable "make check" for
|
|
- env: CONFIG="--enable-debug --enable-tcg-interpreter"
|
|
TEST_CMD=""
|
|
compiler: gcc
|
|
- env: CONFIG="--enable-trace-backends=simple"
|
|
TEST_CMD=""
|
|
compiler: gcc
|
|
- env: CONFIG="--enable-trace-backends=ftrace"
|
|
TEST_CMD=""
|
|
compiler: gcc
|
|
- env: CONFIG="--enable-trace-backends=ust"
|
|
TEST_CMD=""
|
|
compiler: gcc
|
|
- env: CONFIG="--disable-tcg"
|
|
TEST_CMD=""
|
|
compiler: gcc
|
|
- env: CONFIG=""
|
|
os: osx
|
|
compiler: clang
|
|
# Plain Trusty System Build
|
|
- env: CONFIG="--disable-linux-user"
|
|
sudo: required
|
|
addons:
|
|
dist: trusty
|
|
compiler: gcc
|
|
before_install:
|
|
- sudo apt-get update -qq
|
|
- sudo apt-get build-dep -qq qemu
|
|
- wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ
|
|
- git submodule update --init --recursive
|
|
# Plain Trusty Linux User Build
|
|
- env: CONFIG="--disable-system"
|
|
sudo: required
|
|
addons:
|
|
dist: trusty
|
|
compiler: gcc
|
|
before_install:
|
|
- sudo apt-get update -qq
|
|
- sudo apt-get build-dep -qq qemu
|
|
- wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ
|
|
- git submodule update --init --recursive
|
|
# Trusty System build with latest stable clang & python 3.0
|
|
- sudo: required
|
|
addons:
|
|
dist: trusty
|
|
language: generic
|
|
compiler: none
|
|
python:
|
|
- "3.0"
|
|
env:
|
|
- COMPILER_NAME=clang CXX=clang++-3.9 CC=clang-3.9
|
|
- CONFIG="--disable-linux-user --cc=clang-3.9 --cxx=clang++-3.9 --python=/usr/bin/python3"
|
|
before_install:
|
|
- wget -nv -O - http://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add -
|
|
- sudo apt-add-repository -y 'deb http://llvm.org/apt/trusty llvm-toolchain-trusty-3.9 main'
|
|
- sudo apt-get update -qq
|
|
- sudo apt-get install -qq -y clang-3.9
|
|
- sudo apt-get build-dep -qq qemu
|
|
- wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ
|
|
- git submodule update --init --recursive
|
|
before_script:
|
|
- ./configure ${CONFIG} || cat config.log
|
|
# Trusty Linux User build with latest stable clang & python 3.6
|
|
- sudo: required
|
|
addons:
|
|
dist: trusty
|
|
language: generic
|
|
compiler: none
|
|
python:
|
|
- "3.6"
|
|
env:
|
|
- COMPILER_NAME=clang CXX=clang++-3.9 CC=clang-3.9
|
|
- CONFIG="--disable-system --cc=clang-3.9 --cxx=clang++-3.9 --python=/usr/bin/python3"
|
|
before_install:
|
|
- wget -nv -O - http://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add -
|
|
- sudo apt-add-repository -y 'deb http://llvm.org/apt/trusty llvm-toolchain-trusty-3.9 main'
|
|
- sudo apt-get update -qq
|
|
- sudo apt-get install -qq -y clang-3.9
|
|
- sudo apt-get build-dep -qq qemu
|
|
- wget -O - http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ
|
|
- git submodule update --init --recursive
|
|
before_script:
|
|
- ./configure ${CONFIG} || cat config.log
|
|
# Using newer GCC with sanitizers
|
|
- addons:
|
|
apt:
|
|
sources:
|
|
# PPAs for newer toolchains
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
# Extra toolchains
|
|
- gcc-5
|
|
- g++-5
|
|
# Build dependencies
|
|
- libaio-dev
|
|
- libattr1-dev
|
|
- libbrlapi-dev
|
|
- libcap-ng-dev
|
|
- libgnutls-dev
|
|
- libgtk-3-dev
|
|
- libiscsi-dev
|
|
- liblttng-ust-dev
|
|
- libnfs-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
|
|
language: generic
|
|
compiler: none
|
|
env:
|
|
- COMPILER_NAME=gcc CXX=g++-5 CC=gcc-5
|
|
- CONFIG="--cc=gcc-5 --cxx=g++-5 --disable-pie --disable-linux-user"
|
|
- TEST_CMD=""
|
|
before_script:
|
|
- ./configure ${CONFIG} --extra-cflags="-g3 -O0 -fsanitize=thread -fuse-ld=gold" || cat config.log
|