efl/.travis.yml

154 lines
3.7 KiB
YAML

version: ~> 1.0
language: c
cache:
directories:
- $HOME/cachedir
- $HOME/.ccache
dist: bionic
osx_image: xcode11.3
addons:
homebrew:
packages:
- gettext
- check
- bullet
- dbus
- fontconfig
- freetype
- fribidi
- gst-plugins-good
- gstreamer
- luajit
- openssl
- webp
- libsndfile
- glib
- libspectre
- libraw
- librsvg
- poppler
- lz4
- pulseaudio
- ccache
- ninja
- python3
- libffi
update: true
env:
global:
- EIO_MONITOR_POLL=1
- CC="ccache gcc"
- CXX="ccache g++"
jobs:
include:
- os: osx
- os: linux
env: DISTRO=Fedora32-mingw CI_BUILD_TYPE=mingw
- os: linux
env: DISTRO=Fedora32 CI_BUILD_TYPE=options-enabled
- os: linux
env: DISTRO=Fedora32 CI_BUILD_TYPE=options-disabled
- os: linux
env: DISTRO=Fedora32 CI_BUILD_TYPE=wayland
- os: linux
env: DISTRO=Fedora32 CI_BUILD_TYPE=default
- os: linux
if: type = cron
env: DISTRO=Fedora32 CI_BUILD_TYPE=release-ready
- os: linux
if: type = cron
env: DISTRO=Ubuntu2004
- os: linux
if: type = cron
env: DISTRO=Ubuntu1910
- os: linux
if: type = cron
env: DISTRO=Debian103
- os: linux
if: type = cron
env: DISTRO=Fedora31 CI_BUILD_TYPE=coverity
- os: linux
if: type = cron
env: DISTRO=Fedora32 CI_BUILD_TYPE=asan
- os: linux
if: type = cron
env: DISTRO=Fedora32-exactness CI_BUILD_TYPE=exactness
- os: linux
if: type = cron
env: CI_BUILD_TYPE=codecov
- os: linux
if: type = cron
arch: arm64
env: CI_BUILD_TYPE=default
- os: linux
if: type = cron
arch: ppc64le
env: CI_BUILD_TYPE=no-bindings
- os: linux
if: type = cron
arch: s390x
env: CI_BUILD_TYPE=no-bindings
services:
- docker
before_install:
- |
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
rm -rf $HOME/Library/Caches/Homebrew
rm -rf $HOME/cachedir/Homebrew/Homebrew
mv $HOME/cachedir/Homebrew $HOME/Library/Caches/Homebrew
pip3 install meson
fi
before_script:
- |
if [[ "$TRAVIS_OS_NAME" == "linux" ]] && [[ "$DISTRO" != "" ]]; then
docker pull stefanschmidt1/ci-support-files:$DISTRO
docker version
docker run --cap-add SYS_PTRACE --cidfile $HOME/cid -t -d -v `pwd`:/src -v $HOME/.ccache:/root/.ccache -w /src stefanschmidt1/ci-support-files:$DISTRO bash
fi
- |
if [[ "$TRAVIS_OS_NAME" == "linux" ]] && [[ "$DISTRO" == "" ]]; then
.ci/ubuntu-bionic-install-deps.sh
fi
- .ci/ci-ccache-stats.sh
script:
- .ci/ci-configure.sh "$CI_BUILD_TYPE"
- .ci/ci-setup-ccache.sh "$CI_BUILD_TYPE"
- .ci/ci-make.sh "$CI_BUILD_TYPE"
- .ci/ci-make-install.sh "$CI_BUILD_TYPE"
- .ci/ci-make-benchmark.sh "$CI_BUILD_TYPE"
- .ci/ci-make-check.sh "$CI_BUILD_TYPE"
- .ci/ci-exactness.sh "$CI_BUILD_TYPE"
- .ci/ci-make-distcheck.sh "$CI_BUILD_TYPE"
- .ci/ci-build-test.sh "$CI_BUILD_TYPE"
before_cache:
- .ci/ci-ccache-stats.sh
- |
mkdir -p $HOME/cachedir
if [[ "$TRAVIS_OS_NAME" == "linux" ]] ; then
sudo chown travis:travis $HOME/.ccache
else
mv $HOME/Library/Caches/Homebrew $HOME/cachedir/Homebrew
fi
notifications:
irc:
channels:
- "chat.freenode.net#edevelop"
on_success: change
on_failure: always
template:
- "TravisCI build %{build_number} in branch %{branch}: %{result} - %{message} (%{elapsed_time})"
- "Commit: %{commit_subject} (%{commit}) from %{author}"
- "Change view : %{compare_url}"
- "Build details : %{build_url}"