summaryrefslogtreecommitdiffstats
path: root/.travis.yml
diff options
context:
space:
mode:
authorJan Ekström <jeebjp@gmail.com>2019-07-21 21:14:47 +0300
committerJan Ekström <jeebjp@gmail.com>2019-09-02 00:34:49 +0300
commit56d31ae1901be8d68293e9ff5c2a006341ecb9f8 (patch)
tree5a34fe1ac6d9e553e534b7954c60c34e87dcf834 /.travis.yml
parentb539eb222bbc6099e6661e6b1fe4dcb2d775342a (diff)
downloadmpv-56d31ae1901be8d68293e9ff5c2a006341ecb9f8.tar.bz2
mpv-56d31ae1901be8d68293e9ff5c2a006341ecb9f8.tar.xz
travis: rework scripts to re-enable macOS
* Adds a script to clone and build FFmpeg as well as to configure and build mpv itself. Currently only used for macOS and contain hard-coded macOS specific options. * Still works with the Linux containers. * Moves our language back to "c" from "generic" * Defines our Linux distribution as "bionic" to get the latest Ubuntu base distribution to be the runner for our containers. * Adds the homebrew add-on for macOS package installation for dependencies. Installs everything required but FFmpeg, as we want to have our own FFmpeg snapshots.
Diffstat (limited to '.travis.yml')
-rw-r--r--.travis.yml52
1 files changed, 42 insertions, 10 deletions
diff --git a/.travis.yml b/.travis.yml
index d494ab832c..b3b34c50a5 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,19 +1,34 @@
-language: generic
+language: c
-os:
- - linux
+matrix:
+ include:
+ - os: osx
+ osx_image: xcode10.2
+ compiler: clang
+ - os: osx
+ osx_image: xcode10.1
+ compiler: clang
+ - os: osx
+ osx_image: xcode9.2
+ 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
+ - os: linux
+ env: CONTAINER=registry.cirno.systems/kiwi/containers/mpv-ci-mingw64:i686 CI_SCRIPT=ci/build-mingw64.sh TARGET=i686-w64-mingw32
+ - os: linux
+ env: CONTAINER=registry.cirno.systems/kiwi/containers/mpv-ci-mingw64:x86_64 CI_SCRIPT=ci/build-mingw64.sh TARGET=x86_64-w64-mingw32
+dist: bionic
services:
- docker
sudo: required
env:
- matrix:
- - CONTAINER=registry.cirno.systems/kiwi/containers/mpv-ci:stable-deps CI_SCRIPT=ci/build-tumbleweed.sh CC=gcc
- - CONTAINER=registry.cirno.systems/kiwi/containers/mpv-ci:stable-deps CI_SCRIPT=ci/build-tumbleweed.sh CC=clang
- - CONTAINER=registry.cirno.systems/kiwi/containers/mpv-ci-mingw64:i686 CI_SCRIPT=ci/build-mingw64.sh TARGET=i686-w64-mingw32
- - CONTAINER=registry.cirno.systems/kiwi/containers/mpv-ci-mingw64:x86_64 CI_SCRIPT=ci/build-mingw64.sh TARGET=x86_64-w64-mingw32
global:
# Coverity token
- secure: "H21mSRlMhk4BKS0xHZvCFGJxteCP0hRVUxTuNfM2Z9HBsyutuLEYMtViLO86VtM+Tqla3xXPzUdS4ozLwI72Ax/5ZUDXACROj73yW6QhFB5D6rLut12+FjqC7M33Qv2hl0xwgNBmR5dsm1ToP37+Wn+ecJQNvN8fkTXF+HVzOEw="
@@ -28,10 +43,14 @@ branches:
- /release\/.*$/
before_install:
- - docker pull $CONTAINER
+ - if [ "$TRAVIS_COMPILER" = "clang" ]; then export CXX="clang++"; fi
+ - if [ "$TRAVIS_COMPILER" = "gcc" ]; then export CXX="g++"; fi
+ - if [ "$TRAVIS_OS_NAME" = "linux" ]; then docker pull $CONTAINER; fi
+ - if [ "$TRAVIS_OS_NAME" = "osx" ]; then "$TRAVIS_BUILD_DIR/ci/get_ffmpeg.sh"; fi
script:
- ./bootstrap.py
- - docker run --env CC --env TARGET -v $TRAVIS_BUILD_DIR:/build $CONTAINER /bin/sh -c "cd /build && $CI_SCRIPT"
+ - if [ "$TRAVIS_OS_NAME" = "linux" ]; then docker run --env CC --env TARGET -v $TRAVIS_BUILD_DIR:/build $CONTAINER /bin/sh -c "cd /build && $CI_SCRIPT"; fi
+ - if [ "$TRAVIS_OS_NAME" = "osx" ]; then ./ci/build-macos.sh; fi
after_failure: cat ./build/config.log
after_script: TOOLS/travis-rebuild-website
@@ -52,3 +71,16 @@ addons:
build_command_prepend: "./bootstrap.py && ./waf configure"
build_command: "./waf build"
branch_pattern: coverity_scan
+ homebrew:
+ packages:
+ - autoconf
+ - automake
+ - freetype
+ - fribidi
+ - libass
+ - libtool
+ - little-cms2
+ - luajit
+ - nasm
+ - pkg-config
+ update: true