mirror of
https://github.com/mpv-player/mpv
synced 2025-02-09 08:27:18 +00:00
ce1571ac01
this drops support for swift <4.1 and with this support for xcode <=9.2. this was the last setup that is officially working on macOS 10.12. our old legacy build macOS 10.12 + xcode 9.2 is replaced by macOS 10.13 + xcode 9.4.1 with swift 4.1. the macOS 10.13 + xcode 10.1 VM is replaced by the latest macOS 10.14 + xcode 11.3.1 VM. this is the oldest version officially supported by Apple. this is in preparations for the following commit.
177 lines
5.1 KiB
YAML
177 lines
5.1 KiB
YAML
language: c
|
|
|
|
_macbase:
|
|
- &mac
|
|
os: osx
|
|
compiler: clang
|
|
env:
|
|
- HOMEBREW_NO_AUTO_UPDATE=1
|
|
- HOMEBREW_NO_INSTALL_CLEANUP=1
|
|
before_cache:
|
|
- brew cleanup -s
|
|
cache:
|
|
directories:
|
|
- $HOME/Library/Caches/Homebrew
|
|
- /usr/local/Homebrew
|
|
|
|
_mingwbase:
|
|
- &mingw
|
|
os: linux
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- 'autoconf'
|
|
- 'automake'
|
|
- 'pkg-config'
|
|
- 'gcc-mingw-w64'
|
|
- 'gcc-multilib'
|
|
- 'nasm'
|
|
- 'yasm'
|
|
cache:
|
|
directories:
|
|
- mingw_prefix/
|
|
|
|
matrix:
|
|
include:
|
|
- <<: *mac
|
|
osx_image: xcode12.2
|
|
- <<: *mac
|
|
osx_image: xcode11.3
|
|
- <<: *mac
|
|
osx_image: xcode9.4
|
|
env:
|
|
- HOMEBREW_NO_AUTO_UPDATE=1
|
|
- HOMEBREW_NO_INSTALL_CLEANUP=1
|
|
- CI_HOMEBREW_HASH=7242872d7878f1a4c2706e5837faafcf0782b58d
|
|
- os: freebsd
|
|
compiler: clang
|
|
- 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
|
|
- <<: *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
|
|
allow_failures:
|
|
- os: osx
|
|
osx_image: xcode9.4
|
|
fast_finish: true
|
|
|
|
dist: focal
|
|
services:
|
|
- docker
|
|
|
|
env:
|
|
global:
|
|
# Coverity token
|
|
- secure: "H21mSRlMhk4BKS0xHZvCFGJxteCP0hRVUxTuNfM2Z9HBsyutuLEYMtViLO86VtM+Tqla3xXPzUdS4ozLwI72Ax/5ZUDXACROj73yW6QhFB5D6rLut12+FjqC7M33Qv2hl0xwgNBmR5dsm1ToP37+Wn+ecJQNvN8fkTXF+HVzOEw="
|
|
# Travis token for mpv.io
|
|
- secure: "nlTVLJK6kRhtXvhKCoJ3YdFGHuKaq/eHowfPw25hqRWuBOZd+HjHY5KIYjV7SxuKFDpJE4GpNcvA3Q31nsqomxpkLYgrwjg6TSazN7ZP+x85ZgV1QGFebrPfGm2n5UR5CAPAwFoeF3pZheLi4bajVzwq1fWW+x3grS188P9OZso="
|
|
|
|
branches:
|
|
only:
|
|
- master
|
|
- ci
|
|
- coverity_scan
|
|
- /release\/.*$/
|
|
|
|
before_install:
|
|
- if [ "$TRAVIS_COMPILER" = "clang" ]; then export CXX="clang++"; fi
|
|
- if [ "$TRAVIS_COMPILER" = "gcc" ]; then export CXX="g++"; fi
|
|
- if [ -n "$CONTAINER" ]; then docker pull $CONTAINER; fi
|
|
- |
|
|
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
|
|
- |
|
|
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
|
remove=$(brew list --formula)
|
|
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
|
|
brew remove --cask $(brew list --cask)
|
|
brew untap homebrew/cask
|
|
brew update
|
|
if [[ -n "$CI_HOMEBREW_HASH" ]]; then
|
|
pushd "/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core"
|
|
git checkout --force $CI_HOMEBREW_HASH
|
|
fi
|
|
brew install $install
|
|
brew link --overwrite python
|
|
if [[ -n "$CI_HOMEBREW_HASH" ]]; then
|
|
git checkout master
|
|
popd
|
|
fi
|
|
fi
|
|
|
|
|
|
|
|
script:
|
|
- ./bootstrap.py
|
|
- |
|
|
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
|
|
- if [ "$TRAVIS_OS_NAME" = "osx" ]; then ./ci/build-macos.sh; fi
|
|
- if [ "$TRAVIS_OS_NAME" = "freebsd" ]; then ./ci/build-freebsd.sh; fi
|
|
after_failure: cat ./build/config.log
|
|
after_script: TOOLS/travis-rebuild-website
|
|
|
|
notifications:
|
|
email: false
|
|
irc:
|
|
if: fork = false
|
|
channels:
|
|
- "irc.freenode.org#mpv-devel"
|
|
on_success: change
|
|
on_failure: always
|
|
|
|
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
|