2020-02-25 15:46:57 +03:00
|
|
|
os: linux
|
2024-04-18 13:10:48 +03:00
|
|
|
dist: jammy
|
2013-11-06 14:43:37 +04:00
|
|
|
language: c
|
|
|
|
compiler:
|
|
|
|
- gcc
|
2019-09-03 16:26:40 +03:00
|
|
|
cache:
|
2019-09-03 16:26:46 +03:00
|
|
|
# There is one cache per branch and compiler version.
|
|
|
|
# characteristics of each job are used to identify the cache:
|
2020-05-01 14:15:03 +03:00
|
|
|
# - OS name (currently only linux)
|
2024-04-18 13:10:48 +03:00
|
|
|
# - OS distribution (e.g. "jammy" for Linux)
|
2019-09-03 16:26:46 +03:00
|
|
|
# - Names and values of visible environment variables set in .travis.yml or Settings panel
|
2019-09-03 16:26:41 +03:00
|
|
|
timeout: 1200
|
2019-09-03 16:26:40 +03:00
|
|
|
ccache: true
|
2019-09-03 16:26:42 +03:00
|
|
|
pip: true
|
2019-01-09 19:31:06 +03:00
|
|
|
|
|
|
|
|
2016-06-27 21:13:22 +03:00
|
|
|
# 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"
|
2014-03-12 18:13:53 +04:00
|
|
|
notifications:
|
|
|
|
irc:
|
|
|
|
channels:
|
2016-06-27 21:13:22 +03:00
|
|
|
- secure: "F7GDRgjuOo5IUyRLqSkmDL7kvdU4UcH3Lm/W2db2JnDHTGCqgEdaYEYKciyCLZ57vOTsTsOgesN8iUT7hNHBd1KWKjZe9KDTZWppWRYVwAwQMzVeSOsbbU4tRoJ6Pp+3qhH1Z0eGYR9ZgKYAoTumDFgSAYRp4IscKS8jkoedOqM="
|
2014-03-12 18:13:53 +04:00
|
|
|
on_success: change
|
|
|
|
on_failure: always
|
2019-01-09 19:31:06 +03:00
|
|
|
|
|
|
|
|
2013-11-06 14:43:37 +04:00
|
|
|
env:
|
|
|
|
global:
|
2019-12-11 17:33:49 +03:00
|
|
|
- SRC_DIR=".."
|
|
|
|
- BUILD_DIR="build"
|
2019-02-01 20:12:29 +03:00
|
|
|
- BASE_CONFIG="--disable-docs --disable-tools"
|
2020-02-03 12:09:29 +03:00
|
|
|
- TEST_BUILD_CMD=""
|
2019-11-07 13:47:03 +03:00
|
|
|
- TEST_CMD="make check V=1"
|
2023-10-04 12:06:17 +03:00
|
|
|
# This is broadly a list of "mainline" system targets which have support across the major distros
|
2024-03-14 00:33:29 +03:00
|
|
|
- MAIN_SYSTEM_TARGETS="aarch64-softmmu,mips64-softmmu,ppc64-softmmu,riscv64-softmmu,s390x-softmmu,x86_64-softmmu"
|
2019-09-03 16:26:44 +03:00
|
|
|
- CCACHE_SLOPPINESS="include_file_ctime,include_file_mtime"
|
|
|
|
- CCACHE_MAXSIZE=1G
|
2020-03-16 20:21:32 +03:00
|
|
|
- G_MESSAGES_DEBUG=error
|
2019-09-03 16:26:44 +03:00
|
|
|
|
2019-01-09 19:31:06 +03:00
|
|
|
|
2014-09-24 14:13:55 +04:00
|
|
|
git:
|
|
|
|
# we want to do this ourselves
|
|
|
|
submodules: false
|
2019-01-09 19:31:06 +03:00
|
|
|
|
2020-02-03 12:09:25 +03:00
|
|
|
# Common first phase for all steps
|
2021-02-17 15:19:31 +03:00
|
|
|
# We no longer use nproc to calculate jobs:
|
|
|
|
# https://travis-ci.community/t/nproc-reports-32-cores-on-arm64/5851
|
2020-02-03 12:09:25 +03:00
|
|
|
before_install:
|
|
|
|
- if command -v ccache ; then ccache --zero-stats ; fi
|
2021-02-17 15:19:31 +03:00
|
|
|
- export JOBS=3
|
2020-02-03 12:09:26 +03:00
|
|
|
- echo "=== Using ${JOBS} simultaneous jobs ==="
|
2019-01-09 19:31:06 +03:00
|
|
|
|
2020-02-03 12:09:25 +03:00
|
|
|
# Configure step - may be overridden
|
2014-09-24 14:13:54 +04:00
|
|
|
before_script:
|
2018-06-21 15:26:37 +03:00
|
|
|
- mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR}
|
2020-10-16 12:49:28 +03:00
|
|
|
- ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log meson-logs/meson-log.txt && exit 1; }
|
2020-02-03 12:09:25 +03:00
|
|
|
|
|
|
|
# Main build & test - rarely overridden - controlled by TEST_CMD
|
2014-09-24 14:13:54 +04:00
|
|
|
script:
|
2020-02-03 12:09:26 +03:00
|
|
|
- BUILD_RC=0 && make -j${JOBS} || BUILD_RC=$?
|
2020-02-03 12:09:29 +03:00
|
|
|
- |
|
|
|
|
if [ "$BUILD_RC" -eq 0 ] && [ -n "$TEST_BUILD_CMD" ]; then
|
|
|
|
${TEST_BUILD_CMD} || BUILD_RC=$?
|
|
|
|
else
|
|
|
|
$(exit $BUILD_RC);
|
|
|
|
fi
|
2020-02-03 12:09:30 +03:00
|
|
|
- |
|
|
|
|
if [ "$BUILD_RC" -eq 0 ] ; then
|
|
|
|
${TEST_CMD} ;
|
|
|
|
else
|
|
|
|
$(exit $BUILD_RC);
|
|
|
|
fi
|
2019-09-03 16:26:44 +03:00
|
|
|
after_script:
|
2020-05-01 14:15:02 +03:00
|
|
|
- df -h
|
2019-10-09 20:07:00 +03:00
|
|
|
- if command -v ccache ; then ccache --show-stats ; fi
|
2019-01-09 19:31:06 +03:00
|
|
|
|
|
|
|
|
2020-02-25 15:46:57 +03:00
|
|
|
jobs:
|
2013-11-06 14:43:37 +04:00
|
|
|
include:
|
2019-01-09 19:31:07 +03:00
|
|
|
|
2020-02-03 12:09:23 +03:00
|
|
|
- name: "[aarch64] GCC check-tcg"
|
|
|
|
arch: arm64
|
2019-12-04 18:46:18 +03:00
|
|
|
addons:
|
|
|
|
apt_packages:
|
|
|
|
- libaio-dev
|
|
|
|
- libattr1-dev
|
|
|
|
- libbrlapi-dev
|
2021-07-09 17:29:34 +03:00
|
|
|
- libcacard-dev
|
2019-12-04 18:46:18 +03:00
|
|
|
- libcap-ng-dev
|
2023-01-20 10:53:30 +03:00
|
|
|
- libfdt-dev
|
2019-12-04 18:46:18 +03:00
|
|
|
- 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
|
2020-08-13 16:58:50 +03:00
|
|
|
- ninja-build
|
2020-02-03 12:09:19 +03:00
|
|
|
# Tests dependencies
|
|
|
|
- genisoimage
|
2019-12-04 18:46:18 +03:00
|
|
|
env:
|
|
|
|
- TEST_CMD="make check check-tcg V=1"
|
2023-01-20 10:53:30 +03:00
|
|
|
- CONFIG="--disable-containers --enable-fdt=system
|
2024-03-14 00:33:29 +03:00
|
|
|
--target-list=${MAIN_SYSTEM_TARGETS} --cxx=/bin/false"
|
2019-12-04 18:46:18 +03:00
|
|
|
|
2024-03-20 13:41:44 +03:00
|
|
|
- name: "[ppc64] Clang check-tcg"
|
2020-02-03 12:09:23 +03:00
|
|
|
arch: ppc64le
|
2024-03-20 13:41:44 +03:00
|
|
|
compiler: clang
|
2019-12-04 18:46:18 +03:00
|
|
|
addons:
|
|
|
|
apt_packages:
|
|
|
|
- libaio-dev
|
|
|
|
- libattr1-dev
|
|
|
|
- libbrlapi-dev
|
2021-07-09 17:29:34 +03:00
|
|
|
- libcacard-dev
|
2019-12-04 18:46:18 +03:00
|
|
|
- libcap-ng-dev
|
2023-01-20 10:53:30 +03:00
|
|
|
- libfdt-dev
|
2019-12-04 18:46:18 +03:00
|
|
|
- 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
|
2020-08-13 16:58:50 +03:00
|
|
|
- ninja-build
|
2020-02-03 12:09:19 +03:00
|
|
|
# Tests dependencies
|
|
|
|
- genisoimage
|
2019-12-04 18:46:18 +03:00
|
|
|
env:
|
|
|
|
- TEST_CMD="make check check-tcg V=1"
|
2023-01-20 10:53:30 +03:00
|
|
|
- CONFIG="--disable-containers --enable-fdt=system
|
|
|
|
--target-list=ppc64-softmmu,ppc64le-linux-user"
|
2019-12-04 18:46:18 +03:00
|
|
|
|
2020-02-03 12:09:23 +03:00
|
|
|
- name: "[s390x] GCC check-tcg"
|
|
|
|
arch: s390x
|
2019-12-04 18:46:18 +03:00
|
|
|
addons:
|
|
|
|
apt_packages:
|
|
|
|
- libaio-dev
|
|
|
|
- libattr1-dev
|
|
|
|
- libbrlapi-dev
|
2021-07-09 17:29:34 +03:00
|
|
|
- libcacard-dev
|
2019-12-04 18:46:18 +03:00
|
|
|
- libcap-ng-dev
|
2023-01-20 10:53:30 +03:00
|
|
|
- libfdt-dev
|
2019-12-04 18:46:18 +03:00
|
|
|
- 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
|
2020-08-13 16:58:50 +03:00
|
|
|
- ninja-build
|
2020-02-03 12:09:19 +03:00
|
|
|
# Tests dependencies
|
|
|
|
- genisoimage
|
2019-12-04 18:46:18 +03:00
|
|
|
env:
|
|
|
|
- TEST_CMD="make check check-tcg V=1"
|
2024-03-20 13:41:39 +03:00
|
|
|
- CONFIG="--disable-containers
|
|
|
|
--target-list=hppa-softmmu,mips64-softmmu,ppc64-softmmu,riscv64-softmmu,s390x-softmmu,x86_64-softmmu"
|
2020-02-25 15:46:56 +03:00
|
|
|
script:
|
|
|
|
- BUILD_RC=0 && make -j${JOBS} || BUILD_RC=$?
|
|
|
|
- |
|
|
|
|
if [ "$BUILD_RC" -eq 0 ] ; then
|
2022-06-24 17:50:38 +03:00
|
|
|
mv pc-bios/s390-ccw/*.img qemu-bundle/usr/local/share/qemu ;
|
2020-02-25 15:46:56 +03:00
|
|
|
${TEST_CMD} ;
|
|
|
|
else
|
|
|
|
$(exit $BUILD_RC);
|
|
|
|
fi
|
2019-10-07 19:04:49 +03:00
|
|
|
|
2024-03-20 13:41:44 +03:00
|
|
|
- name: "[s390x] Clang (other-system)"
|
2020-06-08 14:40:49 +03:00
|
|
|
arch: s390x
|
2024-03-20 13:41:44 +03:00
|
|
|
compiler: clang
|
2020-06-08 14:40:49 +03:00
|
|
|
addons:
|
|
|
|
apt_packages:
|
|
|
|
- libaio-dev
|
|
|
|
- libattr1-dev
|
2021-07-09 17:29:34 +03:00
|
|
|
- libcacard-dev
|
2020-06-08 14:40:49 +03:00
|
|
|
- libcap-ng-dev
|
2023-01-20 10:53:30 +03:00
|
|
|
- libfdt-dev
|
2020-06-08 14:40:49 +03:00
|
|
|
- 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
|
2020-08-13 16:58:50 +03:00
|
|
|
- ninja-build
|
2020-06-08 14:40:49 +03:00
|
|
|
# Tests dependencies
|
|
|
|
- genisoimage
|
|
|
|
env:
|
2024-03-20 13:41:39 +03:00
|
|
|
- CONFIG="--disable-containers --audio-drv-list=sdl --disable-user
|
|
|
|
--target-list=arm-softmmu,avr-softmmu,microblaze-softmmu,sh4eb-softmmu,sparc64-softmmu,xtensaeb-softmmu"
|
2022-07-20 11:25:47 +03:00
|
|
|
|
2020-06-08 14:40:49 +03:00
|
|
|
- name: "[s390x] GCC (user)"
|
|
|
|
arch: s390x
|
|
|
|
addons:
|
|
|
|
apt_packages:
|
|
|
|
- libgcrypt20-dev
|
2022-02-21 18:34:23 +03:00
|
|
|
- libglib2.0-dev
|
2020-06-08 14:40:49 +03:00
|
|
|
- libgnutls28-dev
|
2020-08-13 16:58:50 +03:00
|
|
|
- ninja-build
|
2023-04-17 19:23:54 +03:00
|
|
|
- flex
|
|
|
|
- bison
|
2020-06-08 14:40:49 +03:00
|
|
|
env:
|
2024-03-20 13:41:39 +03:00
|
|
|
- TEST_CMD="make check check-tcg V=1"
|
2020-06-08 14:40:49 +03:00
|
|
|
- CONFIG="--disable-containers --disable-system"
|
2022-07-20 11:25:47 +03:00
|
|
|
|
2020-05-13 20:51:26 +03:00
|
|
|
- name: "[s390x] Clang (disable-tcg)"
|
2020-03-23 19:15:14 +03:00
|
|
|
arch: s390x
|
2024-04-18 13:10:48 +03:00
|
|
|
compiler: clang
|
2020-03-23 19:15:14 +03:00
|
|
|
addons:
|
|
|
|
apt_packages:
|
|
|
|
- libaio-dev
|
|
|
|
- libattr1-dev
|
|
|
|
- libbrlapi-dev
|
2021-07-09 17:29:34 +03:00
|
|
|
- libcacard-dev
|
2020-03-23 19:15:14 +03:00
|
|
|
- libcap-ng-dev
|
2023-01-20 10:53:30 +03:00
|
|
|
- libfdt-dev
|
2020-03-23 19:15:14 +03:00
|
|
|
- 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
|
2020-08-13 16:58:50 +03:00
|
|
|
- ninja-build
|
2020-03-23 19:15:14 +03:00
|
|
|
env:
|
|
|
|
- TEST_CMD="make check-unit"
|
2023-01-20 10:53:30 +03:00
|
|
|
- CONFIG="--disable-containers --disable-tcg --enable-kvm --disable-tools
|
|
|
|
--enable-fdt=system --host-cc=clang --cxx=clang++"
|