da420d3d1d
QEMU will soon drop the support for Ubuntu 18.04, so let's update the Travis jobs that were still using this version to 20.04 instead. While we're at it, also remove an obsolete comment about Ubuntu Xenial being the default for our Travis jobs. Signed-off-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20220221153423.1028465-1-thuth@redhat.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20220225172021.3493923-15-alex.bennee@linaro.org>
306 lines
8.0 KiB
YAML
306 lines
8.0 KiB
YAML
os: linux
|
|
dist: focal
|
|
language: c
|
|
compiler:
|
|
- gcc
|
|
cache:
|
|
# There is one cache per branch and compiler version.
|
|
# characteristics of each job are used to identify the cache:
|
|
# - OS name (currently only linux)
|
|
# - OS distribution (for Linux, bionic or focal)
|
|
# - Names and values of visible environment variables set in .travis.yml or Settings panel
|
|
timeout: 1200
|
|
ccache: true
|
|
pip: true
|
|
directories:
|
|
- $HOME/avocado/data/cache
|
|
|
|
|
|
addons:
|
|
apt:
|
|
packages:
|
|
# Build dependencies
|
|
- libaio-dev
|
|
- libattr1-dev
|
|
- libbrlapi-dev
|
|
- libcap-ng-dev
|
|
- libcacard-dev
|
|
- libgcc-7-dev
|
|
- libgnutls28-dev
|
|
- libgtk-3-dev
|
|
- libiscsi-dev
|
|
- liblttng-ust-dev
|
|
- libncurses5-dev
|
|
- libnfs-dev
|
|
- libpixman-1-dev
|
|
- libpng-dev
|
|
- librados-dev
|
|
- libsdl2-dev
|
|
- libsdl2-image-dev
|
|
- libseccomp-dev
|
|
- libspice-protocol-dev
|
|
- libspice-server-dev
|
|
- libssh-dev
|
|
- liburcu-dev
|
|
- libusb-1.0-0-dev
|
|
- libvdeplug-dev
|
|
- libvte-2.91-dev
|
|
- libzstd-dev
|
|
- ninja-build
|
|
- sparse
|
|
- uuid-dev
|
|
# Tests dependencies
|
|
- genisoimage
|
|
|
|
|
|
# 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:
|
|
- SRC_DIR=".."
|
|
- BUILD_DIR="build"
|
|
- BASE_CONFIG="--disable-docs --disable-tools"
|
|
- TEST_BUILD_CMD=""
|
|
- TEST_CMD="make check V=1"
|
|
# This is broadly a list of "mainline" softmmu targets which have support across the major distros
|
|
- MAIN_SOFTMMU_TARGETS="aarch64-softmmu,mips64-softmmu,ppc64-softmmu,riscv64-softmmu,s390x-softmmu,x86_64-softmmu"
|
|
- CCACHE_SLOPPINESS="include_file_ctime,include_file_mtime"
|
|
- CCACHE_MAXSIZE=1G
|
|
- G_MESSAGES_DEBUG=error
|
|
|
|
|
|
git:
|
|
# we want to do this ourselves
|
|
submodules: false
|
|
|
|
# Common first phase for all steps
|
|
# We no longer use nproc to calculate jobs:
|
|
# https://travis-ci.community/t/nproc-reports-32-cores-on-arm64/5851
|
|
before_install:
|
|
- if command -v ccache ; then ccache --zero-stats ; fi
|
|
- export JOBS=3
|
|
- echo "=== Using ${JOBS} simultaneous jobs ==="
|
|
|
|
# Configure step - may be overridden
|
|
before_script:
|
|
- mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR}
|
|
- ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log meson-logs/meson-log.txt && exit 1; }
|
|
|
|
# Main build & test - rarely overridden - controlled by TEST_CMD
|
|
script:
|
|
- BUILD_RC=0 && make -j${JOBS} || BUILD_RC=$?
|
|
- |
|
|
if [ "$BUILD_RC" -eq 0 ] && [ -n "$TEST_BUILD_CMD" ]; then
|
|
${TEST_BUILD_CMD} || BUILD_RC=$?
|
|
else
|
|
$(exit $BUILD_RC);
|
|
fi
|
|
- |
|
|
if [ "$BUILD_RC" -eq 0 ] ; then
|
|
${TEST_CMD} ;
|
|
else
|
|
$(exit $BUILD_RC);
|
|
fi
|
|
after_script:
|
|
- df -h
|
|
- if command -v ccache ; then ccache --show-stats ; fi
|
|
|
|
|
|
jobs:
|
|
include:
|
|
|
|
- name: "[aarch64] GCC check-tcg"
|
|
arch: arm64
|
|
dist: focal
|
|
addons:
|
|
apt_packages:
|
|
- libaio-dev
|
|
- libattr1-dev
|
|
- libbrlapi-dev
|
|
- libcacard-dev
|
|
- libcap-ng-dev
|
|
- libgcrypt20-dev
|
|
- libgnutls28-dev
|
|
- libgtk-3-dev
|
|
- libiscsi-dev
|
|
- liblttng-ust-dev
|
|
- libncurses5-dev
|
|
- libnfs-dev
|
|
- libpixman-1-dev
|
|
- libpng-dev
|
|
- librados-dev
|
|
- libsdl2-dev
|
|
- libseccomp-dev
|
|
- liburcu-dev
|
|
- libusb-1.0-0-dev
|
|
- libvdeplug-dev
|
|
- libvte-2.91-dev
|
|
- ninja-build
|
|
# Tests dependencies
|
|
- genisoimage
|
|
env:
|
|
- TEST_CMD="make check check-tcg V=1"
|
|
- CONFIG="--disable-containers --target-list=${MAIN_SOFTMMU_TARGETS} --cxx=/bin/false"
|
|
- UNRELIABLE=true
|
|
|
|
- name: "[ppc64] GCC check-tcg"
|
|
arch: ppc64le
|
|
dist: focal
|
|
addons:
|
|
apt_packages:
|
|
- libaio-dev
|
|
- libattr1-dev
|
|
- libbrlapi-dev
|
|
- libcacard-dev
|
|
- libcap-ng-dev
|
|
- libgcrypt20-dev
|
|
- libgnutls28-dev
|
|
- libgtk-3-dev
|
|
- libiscsi-dev
|
|
- liblttng-ust-dev
|
|
- libncurses5-dev
|
|
- libnfs-dev
|
|
- libpixman-1-dev
|
|
- libpng-dev
|
|
- librados-dev
|
|
- libsdl2-dev
|
|
- libseccomp-dev
|
|
- liburcu-dev
|
|
- libusb-1.0-0-dev
|
|
- libvdeplug-dev
|
|
- libvte-2.91-dev
|
|
- ninja-build
|
|
# Tests dependencies
|
|
- genisoimage
|
|
env:
|
|
- TEST_CMD="make check check-tcg V=1"
|
|
- CONFIG="--disable-containers --target-list=ppc64-softmmu,ppc64le-linux-user"
|
|
|
|
- name: "[s390x] GCC check-tcg"
|
|
arch: s390x
|
|
dist: focal
|
|
addons:
|
|
apt_packages:
|
|
- libaio-dev
|
|
- libattr1-dev
|
|
- libbrlapi-dev
|
|
- libcacard-dev
|
|
- libcap-ng-dev
|
|
- libgcrypt20-dev
|
|
- libgnutls28-dev
|
|
- libgtk-3-dev
|
|
- libiscsi-dev
|
|
- liblttng-ust-dev
|
|
- libncurses5-dev
|
|
- libnfs-dev
|
|
- libpixman-1-dev
|
|
- libpng-dev
|
|
- librados-dev
|
|
- libsdl2-dev
|
|
- libseccomp-dev
|
|
- liburcu-dev
|
|
- libusb-1.0-0-dev
|
|
- libvdeplug-dev
|
|
- libvte-2.91-dev
|
|
- ninja-build
|
|
# Tests dependencies
|
|
- genisoimage
|
|
env:
|
|
- TEST_CMD="make check check-tcg V=1"
|
|
- CONFIG="--disable-containers --target-list=${MAIN_SOFTMMU_TARGETS},s390x-linux-user"
|
|
- UNRELIABLE=true
|
|
script:
|
|
- BUILD_RC=0 && make -j${JOBS} || BUILD_RC=$?
|
|
- |
|
|
if [ "$BUILD_RC" -eq 0 ] ; then
|
|
mv pc-bios/s390-ccw/*.img pc-bios/ ;
|
|
${TEST_CMD} ;
|
|
else
|
|
$(exit $BUILD_RC);
|
|
fi
|
|
|
|
- name: "[s390x] GCC (other-softmmu)"
|
|
arch: s390x
|
|
dist: focal
|
|
addons:
|
|
apt_packages:
|
|
- libaio-dev
|
|
- libattr1-dev
|
|
- libcacard-dev
|
|
- libcap-ng-dev
|
|
- libgnutls28-dev
|
|
- libiscsi-dev
|
|
- liblttng-ust-dev
|
|
- liblzo2-dev
|
|
- libncurses-dev
|
|
- libnfs-dev
|
|
- libpixman-1-dev
|
|
- libsdl2-dev
|
|
- libsdl2-image-dev
|
|
- libseccomp-dev
|
|
- libsnappy-dev
|
|
- libzstd-dev
|
|
- nettle-dev
|
|
- xfslibs-dev
|
|
- ninja-build
|
|
# Tests dependencies
|
|
- genisoimage
|
|
env:
|
|
- CONFIG="--disable-containers --audio-drv-list=sdl --disable-user
|
|
--target-list-exclude=${MAIN_SOFTMMU_TARGETS}"
|
|
|
|
- name: "[s390x] GCC (user)"
|
|
arch: s390x
|
|
dist: focal
|
|
addons:
|
|
apt_packages:
|
|
- libgcrypt20-dev
|
|
- libglib2.0-dev
|
|
- libgnutls28-dev
|
|
- ninja-build
|
|
env:
|
|
- CONFIG="--disable-containers --disable-system"
|
|
|
|
- name: "[s390x] Clang (disable-tcg)"
|
|
arch: s390x
|
|
dist: focal
|
|
compiler: clang
|
|
addons:
|
|
apt_packages:
|
|
- libaio-dev
|
|
- libattr1-dev
|
|
- libbrlapi-dev
|
|
- libcacard-dev
|
|
- libcap-ng-dev
|
|
- libgcrypt20-dev
|
|
- libgnutls28-dev
|
|
- libgtk-3-dev
|
|
- libiscsi-dev
|
|
- liblttng-ust-dev
|
|
- libncurses5-dev
|
|
- libnfs-dev
|
|
- libpixman-1-dev
|
|
- libpng-dev
|
|
- librados-dev
|
|
- libsdl2-dev
|
|
- libseccomp-dev
|
|
- liburcu-dev
|
|
- libusb-1.0-0-dev
|
|
- libvdeplug-dev
|
|
- libvte-2.91-dev
|
|
- ninja-build
|
|
env:
|
|
- TEST_CMD="make check-unit"
|
|
- CONFIG="--disable-containers --disable-tcg --enable-kvm
|
|
--disable-tools --host-cc=clang --cxx=clang++"
|
|
- UNRELIABLE=true
|