2019-07-21 18:14:47 +00:00
|
|
|
language: c
|
2013-05-19 07:19:29 +00:00
|
|
|
|
2020-03-25 18:22:23 +00:00
|
|
|
_macbase:
|
2020-07-21 22:24:52 +00:00
|
|
|
- &mac
|
2019-12-28 20:42:20 +00:00
|
|
|
os: osx
|
|
|
|
compiler: clang
|
|
|
|
env:
|
|
|
|
- HOMEBREW_NO_AUTO_UPDATE=1
|
|
|
|
- HOMEBREW_NO_INSTALL_CLEANUP=1
|
2020-06-30 17:40:22 +00:00
|
|
|
before_cache:
|
|
|
|
- brew cleanup -s
|
|
|
|
cache:
|
|
|
|
directories:
|
|
|
|
- $HOME/Library/Caches/Homebrew
|
2020-07-21 22:24:52 +00:00
|
|
|
- /usr/local/Homebrew
|
2019-12-28 20:42:20 +00:00
|
|
|
|
2020-06-07 21:31:55 +00:00
|
|
|
_mingwbase:
|
|
|
|
- &mingw
|
|
|
|
os: linux
|
|
|
|
addons:
|
|
|
|
apt:
|
2020-10-15 21:42:35 +00:00
|
|
|
packages:
|
|
|
|
- 'autoconf'
|
|
|
|
- 'automake'
|
|
|
|
- 'pkg-config'
|
|
|
|
- 'gcc-mingw-w64'
|
|
|
|
- 'gcc-multilib'
|
|
|
|
- 'nasm'
|
|
|
|
- 'yasm'
|
2020-06-07 21:31:55 +00:00
|
|
|
cache:
|
|
|
|
directories:
|
|
|
|
- mingw_prefix/
|
|
|
|
|
2019-07-21 18:14:47 +00:00
|
|
|
matrix:
|
|
|
|
include:
|
2020-07-21 22:24:52 +00:00
|
|
|
- <<: *mac
|
2020-11-28 01:44:52 +00:00
|
|
|
osx_image: xcode12.2
|
2020-07-21 22:24:52 +00:00
|
|
|
- <<: *mac
|
2020-12-25 13:47:35 +00:00
|
|
|
osx_image: xcode11.3
|
2020-07-21 22:24:52 +00:00
|
|
|
- <<: *mac
|
2020-12-25 13:47:35 +00:00
|
|
|
osx_image: xcode9.4
|
2020-11-18 22:31:59 +00:00
|
|
|
env:
|
|
|
|
- HOMEBREW_NO_AUTO_UPDATE=1
|
|
|
|
- HOMEBREW_NO_INSTALL_CLEANUP=1
|
2020-12-25 13:47:35 +00:00
|
|
|
- CI_HOMEBREW_HASH=7242872d7878f1a4c2706e5837faafcf0782b58d
|
2020-05-23 15:29:28 +00:00
|
|
|
- os: freebsd
|
|
|
|
compiler: clang
|
2019-07-21 18:14:47 +00:00
|
|
|
- os: linux
|
|
|
|
compiler: gcc
|
|
|
|
env: CONTAINER=registry.cirno.systems/kiwi/containers/mpv-ci:stable-deps CI_SCRIPT=ci/build-tumbleweed.sh
|
|
|
|
- os: linux
|
|
|
|
compiler: clang
|
|
|
|
env: CONTAINER=registry.cirno.systems/kiwi/containers/mpv-ci:stable-deps CI_SCRIPT=ci/build-tumbleweed.sh
|
2020-06-07 21:31:55 +00:00
|
|
|
- <<: *mingw
|
|
|
|
env: CI_SCRIPT=ci/build-mingw64.sh TARGET=i686-w64-mingw32
|
|
|
|
- <<: *mingw
|
|
|
|
env: CI_SCRIPT=ci/build-mingw64.sh TARGET=x86_64-w64-mingw32
|
2019-12-28 20:42:20 +00:00
|
|
|
allow_failures:
|
|
|
|
- os: osx
|
2020-12-25 13:47:35 +00:00
|
|
|
osx_image: xcode9.4
|
2019-12-28 20:42:20 +00:00
|
|
|
fast_finish: true
|
2018-06-25 17:16:42 +00:00
|
|
|
|
2020-10-15 21:23:20 +00:00
|
|
|
dist: focal
|
2018-06-25 17:16:42 +00:00
|
|
|
services:
|
|
|
|
- docker
|
|
|
|
|
2013-05-19 07:19:29 +00:00
|
|
|
env:
|
2014-11-21 01:28:59 +00:00
|
|
|
global:
|
2014-11-24 15:56:48 +00:00
|
|
|
# Coverity token
|
2014-11-21 01:33:50 +00:00
|
|
|
- secure: "H21mSRlMhk4BKS0xHZvCFGJxteCP0hRVUxTuNfM2Z9HBsyutuLEYMtViLO86VtM+Tqla3xXPzUdS4ozLwI72Ax/5ZUDXACROj73yW6QhFB5D6rLut12+FjqC7M33Qv2hl0xwgNBmR5dsm1ToP37+Wn+ecJQNvN8fkTXF+HVzOEw="
|
2016-09-04 11:29:11 +00:00
|
|
|
# Travis token for mpv.io
|
|
|
|
- secure: "nlTVLJK6kRhtXvhKCoJ3YdFGHuKaq/eHowfPw25hqRWuBOZd+HjHY5KIYjV7SxuKFDpJE4GpNcvA3Q31nsqomxpkLYgrwjg6TSazN7ZP+x85ZgV1QGFebrPfGm2n5UR5CAPAwFoeF3pZheLi4bajVzwq1fWW+x3grS188P9OZso="
|
2014-07-21 12:55:12 +00:00
|
|
|
|
2013-05-19 07:19:29 +00:00
|
|
|
branches:
|
|
|
|
only:
|
|
|
|
- master
|
2013-06-03 19:30:46 +00:00
|
|
|
- ci
|
2014-11-21 00:46:25 +00:00
|
|
|
- coverity_scan
|
2018-09-29 19:28:15 +00:00
|
|
|
- /release\/.*$/
|
2013-05-19 07:19:29 +00:00
|
|
|
|
2018-06-25 17:16:42 +00:00
|
|
|
before_install:
|
2019-07-21 18:14:47 +00:00
|
|
|
- if [ "$TRAVIS_COMPILER" = "clang" ]; then export CXX="clang++"; fi
|
|
|
|
- if [ "$TRAVIS_COMPILER" = "gcc" ]; then export CXX="g++"; fi
|
2020-06-07 21:31:55 +00:00
|
|
|
- if [ -n "$CONTAINER" ]; then docker pull $CONTAINER; fi
|
2020-05-23 15:29:28 +00:00
|
|
|
- |
|
|
|
|
if [ "$TRAVIS_OS_NAME" = "freebsd" ]; then
|
|
|
|
# Requested in ci/build-freebsd.sh
|
|
|
|
sudo pkg install -y \
|
|
|
|
evdev-proto \
|
|
|
|
ffmpeg \
|
|
|
|
libplacebo \
|
|
|
|
libxkbcommon \
|
|
|
|
luajit \
|
|
|
|
openal-soft \
|
|
|
|
pkgconf \
|
|
|
|
python3 \
|
|
|
|
sdl2 \
|
|
|
|
vulkan-headers \
|
|
|
|
wayland-protocols \
|
|
|
|
$NULL
|
|
|
|
# Optionally auto-enabled
|
|
|
|
sudo pkg install -y \
|
|
|
|
alsa-lib \
|
|
|
|
jackit \
|
|
|
|
libXv \
|
|
|
|
libarchive \
|
|
|
|
libbluray \
|
|
|
|
libcaca \
|
|
|
|
libcdio-paranoia \
|
|
|
|
libdvdnav \
|
|
|
|
mujs \
|
|
|
|
pulseaudio \
|
|
|
|
rubberband \
|
|
|
|
sekrit-twc-zimg \
|
|
|
|
uchardet \
|
|
|
|
v4l_compat \
|
|
|
|
$NULL
|
|
|
|
fi
|
2019-12-28 18:16:00 +00:00
|
|
|
- |
|
|
|
|
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
2021-02-06 13:25:17 +00:00
|
|
|
if [[ "$TRAVIS_OSX_IMAGE" == "xcode12.2" ]]; then
|
|
|
|
remove=$(brew list --formula)
|
|
|
|
else
|
|
|
|
remove=$(brew list)
|
|
|
|
fi
|
2020-07-21 22:24:52 +00:00
|
|
|
keep="gettext pcre2 git"
|
|
|
|
install="autoconf automake pkg-config libtool python freetype fribidi little-cms2 luajit libass ffmpeg"
|
|
|
|
for formula in ${keep[@]}; do remove=("${remove[@]/$formula}"); done
|
|
|
|
for formula in ${install[@]}; do remove=("${remove[@]/$formula}"); done
|
|
|
|
brew remove --force $remove --ignore-dependencies
|
2021-02-06 13:25:17 +00:00
|
|
|
if [[ "$TRAVIS_OSX_IMAGE" == "xcode12.2" ]]; then
|
|
|
|
brew remove $(brew list --cask)
|
|
|
|
else
|
|
|
|
brew cask remove $(brew cask list)
|
|
|
|
fi
|
2020-12-25 13:47:35 +00:00
|
|
|
brew untap homebrew/cask
|
2020-07-21 22:24:52 +00:00
|
|
|
brew update
|
2020-11-27 15:53:46 +00:00
|
|
|
if [[ -n "$CI_HOMEBREW_HASH" ]]; then
|
2019-12-28 20:42:20 +00:00
|
|
|
pushd "/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core"
|
2020-11-27 15:53:46 +00:00
|
|
|
git checkout --force $CI_HOMEBREW_HASH
|
2020-07-21 22:24:52 +00:00
|
|
|
fi
|
|
|
|
brew install $install
|
|
|
|
brew link --overwrite python
|
2020-11-27 15:53:46 +00:00
|
|
|
if [[ -n "$CI_HOMEBREW_HASH" ]]; then
|
2020-07-21 22:24:52 +00:00
|
|
|
git checkout master
|
2019-12-28 20:42:20 +00:00
|
|
|
popd
|
|
|
|
fi
|
2019-12-28 18:16:00 +00:00
|
|
|
fi
|
2019-12-28 20:42:20 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
2013-07-16 11:28:28 +00:00
|
|
|
script:
|
2018-07-29 08:55:48 +00:00
|
|
|
- ./bootstrap.py
|
2020-06-07 21:31:55 +00:00
|
|
|
- |
|
|
|
|
if [ "$TRAVIS_OS_NAME" = "linux" ]; then
|
|
|
|
if [ -n "$CONTAINER" ]; then
|
|
|
|
docker run --env CC --env TARGET -v $TRAVIS_BUILD_DIR:/build $CONTAINER /bin/sh -c "cd /build && $CI_SCRIPT"
|
|
|
|
else
|
|
|
|
$CI_SCRIPT
|
|
|
|
fi
|
|
|
|
fi
|
2019-07-21 18:14:47 +00:00
|
|
|
- if [ "$TRAVIS_OS_NAME" = "osx" ]; then ./ci/build-macos.sh; fi
|
2020-05-23 15:29:28 +00:00
|
|
|
- if [ "$TRAVIS_OS_NAME" = "freebsd" ]; then ./ci/build-freebsd.sh; fi
|
2017-08-07 12:21:38 +00:00
|
|
|
after_failure: cat ./build/config.log
|
2016-09-04 11:29:11 +00:00
|
|
|
after_script: TOOLS/travis-rebuild-website
|
2013-05-19 07:19:29 +00:00
|
|
|
|
|
|
|
notifications:
|
2013-11-23 21:28:43 +00:00
|
|
|
email: false
|
2013-05-19 07:19:29 +00:00
|
|
|
irc:
|
2020-01-19 19:07:28 +00:00
|
|
|
if: fork = false
|
2013-05-19 07:19:29 +00:00
|
|
|
channels:
|
2015-04-27 21:02:40 +00:00
|
|
|
- "irc.freenode.org#mpv-devel"
|
2014-07-21 12:55:12 +00:00
|
|
|
on_success: change
|
2020-03-25 18:22:45 +00:00
|
|
|
on_failure: always
|
2014-11-21 00:46:25 +00:00
|
|
|
|
|
|
|
addons:
|
|
|
|
coverity_scan:
|
|
|
|
project:
|
|
|
|
name: "mpv-player/mpv"
|
|
|
|
description: "Build submitted via Travis CI"
|
|
|
|
notification_email: mpv-team@googlegroups.com
|
|
|
|
build_command_prepend: "./bootstrap.py && ./waf configure"
|
|
|
|
build_command: "./waf build"
|
|
|
|
branch_pattern: coverity_scan
|