blob: 9aecfaa160be0f45f1f8f5a6ca87257a7b2f573c [file] [log] [blame]
language: c
os: linux
dist: focal
addons:
apt:
packages:
- ninja-build
- python3
- python3-pip
before_script:
- curl -L https://www.nasm.us/pub/nasm/releasebuilds/2.15.05/nasm-2.15.05.tar.gz | tar xvz
- cd nasm-2.15.05
- ./configure && make -j2 && sudo make install
- nasm --version
- pip3 --disable-pip-version-check install setuptools
- pip3 --disable-pip-version-check install meson
- curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
- source $HOME/.cargo/env
- cd $TRAVIS_BUILD_DIR/ext
- export MAKEFLAGS=-j$(nproc)
- bash aom.cmd
- bash dav1d.cmd
- bash libgav1.cmd
- bash rav1e.cmd
- bash svt.cmd
- bash libyuv.cmd
- cd ..
- mkdir build
- cd build
script:
- cmake -G Ninja -DCMAKE_BUILD_TYPE=$config -DBUILD_SHARED_LIBS=OFF -DAVIF_CODEC_AOM=ON -DAVIF_LOCAL_AOM=ON -DAVIF_CODEC_DAV1D=ON -DAVIF_LOCAL_DAV1D=ON -DAVIF_CODEC_RAV1E=ON -DAVIF_LOCAL_RAV1E=ON -DAVIF_CODEC_LIBGAV1=ON -DAVIF_LOCAL_LIBGAV1=ON -DAVIF_CODEC_SVT=ON -DAVIF_LOCAL_SVT=ON -DAVIF_LOCAL_LIBYUV=ON -DAVIF_BUILD_EXAMPLES=ON -DAVIF_BUILD_APPS=ON -DAVIF_BUILD_TESTS=ON ..
- ninja
matrix:
include:
- name: "GCC Debug"
compiler: gcc
config: Debug
- name: "GCC Release"
compiler: gcc
config: Release
- name: "Clang Debug"
compiler: clang
config: Debug
- name: "Clang Debug (aom decode only)"
compiler: clang
config: Debug
script:
- cmake -G Ninja -DCMAKE_BUILD_TYPE=$config -DBUILD_SHARED_LIBS=OFF -DAVIF_CODEC_AOM=ON -DAVIF_LOCAL_AOM=ON -DAVIF_CODEC_AOM_ENCODE=0 -DAVIF_BUILD_APPS=ON ..
- ninja
- name: "Clang Debug (aom encode only)"
compiler: clang
config: Debug
script:
- cmake -G Ninja -DCMAKE_BUILD_TYPE=$config -DBUILD_SHARED_LIBS=OFF -DAVIF_CODEC_AOM=ON -DAVIF_LOCAL_AOM=ON -DAVIF_CODEC_AOM_DECODE=0 -DAVIF_BUILD_APPS=ON ..
- ninja
- name: "Clang Release"
compiler: clang
config: Release
- &freebsd_common
name: "Clang 10 + system libraries"
os: freebsd
compiler: clang
before_install:
- | # FreeBSD 12.2 has Clang 10 but TravisCI uses FreeBSD 12.1
if [[ $(${CC:-clang} --version) =~ 8.0 ]]; then
export CC=clang10 CXX=clang++10
sudo pkg install -y llvm10
fi
before_script:
- sudo pkg install -y aom dav1d libgav1 librav1e ninja
- $WRAPPER cmake -B build -G Ninja -DAVIF_{CODEC_{AOM,DAV1D,LIBGAV1,RAV1E},BUILD_{APPS,TESTS}}=ON
script:
- $WRAPPER cmake --build build
- <<: *freebsd_common
name: "GCC 10 + system libraries"
compiler: gcc
before_install:
- sudo pkg upgrade -y gcc10-devel
- <<: *freebsd_common
name: "Clang Static Analyzer"
env: WRAPPER="scan-build11 --status-bugs"
before_install:
- sudo pkg install -y llvm11