chiaki/.travis.yml
2019-09-13 17:07:57 +02:00

137 lines
4.7 KiB
YAML

language: cpp
branches:
only:
- master
- /^v\d.*$/
- /^deploy-test(-.*)?$/
matrix:
include:
- name: Linux (Bionic)
os: linux
dist: bionic
addons:
apt:
sources:
- sourceline: "ppa:beineri/opt-qt-5.12.0-bionic"
packages:
- protobuf-compiler
- python3-protobuf
- libopus-dev
- qt512base
- qt512multimedia
- qt512gamepad
- qt512svg
- libgl1-mesa-dev
- nasm
- libsdl2-dev
env:
- CMAKE_PREFIX_PATH="$TRAVIS_BUILD_DIR/ffmpeg-prefix;/opt/qt512"
- CMAKE_EXTRA_ARGS="-DCMAKE_INSTALL_PREFIX=/usr"
- DEPLOY=0
- name: Linux (Xenial, Deploy)
os: linux
dist: xenial
addons:
apt:
sources:
- sourceline: "ppa:beineri/opt-qt-5.12.3-xenial"
packages:
- python3-pip
- libopus-dev
- qt512base
- qt512multimedia
- qt512svg
- libgl1-mesa-dev
- nasm
env:
- CMAKE_PREFIX_PATH="$TRAVIS_BUILD_DIR/ffmpeg-prefix;$TRAVIS_BUILD_DIR/sdl2-prefix;/opt/qt512"
- CMAKE_EXTRA_ARGS="-DCMAKE_INSTALL_PREFIX=/usr"
- DEPLOY_FILE="Chiaki-x86_64.AppImage"
- SDL2_FROM_SRC=1
- DEPLOY=1
before_install:
- sudo pip3 install protobuf
- scripts/fetch-protoc.sh
- export PATH="$TRAVIS_BUILD_DIR/protoc/bin:$PATH"
after_success:
- make install DESTDIR=../appdir
- cd ..
- wget https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-x86_64.AppImage && chmod +x linuxdeploy-x86_64.AppImage
- wget https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-x86_64.AppImage && chmod +x linuxdeploy-plugin-qt-x86_64.AppImage
- source /opt/qt512/bin/qt512-env.sh
- export LD_LIBRARY_PATH="$TRAVIS_BUILD_DIR/sdl2-prefix/lib:$LD_LIBRARY_PATH"
- ./linuxdeploy-x86_64.AppImage --appdir=appdir -e appdir/usr/bin/chiaki -d appdir/usr/share/applications/chiaki.desktop --plugin qt --output appimage
- export DEPLOY_FILE="Chiaki-Linux-${CHIAKI_VERSION}-x86_64.AppImage"
- mv Chiaki-*-x86_64.AppImage "$DEPLOY_FILE"
- name: macOS
os: osx
osx_image: xcode11
addons:
homebrew:
packages:
- qt
- opus
- openssl@1.1
- nasm
- sdl2
env:
- CMAKE_PREFIX_PATH="$TRAVIS_BUILD_DIR/ffmpeg-prefix;/usr/local/opt/openssl@1.1;/usr/local/opt/qt"
- CMAKE_EXTRA_ARGS=""
- DEPLOY=1
after_success:
- cd ..
- cp -a build/gui/chiaki.app Chiaki.app
- /usr/local/opt/qt/bin/macdeployqt Chiaki.app -dmg
- export DEPLOY_FILE="Chiaki-macOS-${CHIAKI_VERSION}-x86_64.dmg"
- mv Chiaki.dmg "$DEPLOY_FILE"
- name: "Source Package"
os: linux
dist: bionic
env:
- DEPLOY=1
install: ~
script:
- find . -name ".git*" | xargs rm -rfv
- mkdir chiaki && shopt -s extglob && mv !(chiaki) chiaki
- export DEPLOY_FILE="chiaki-$CHIAKI_VERSION-src.tar.gz"
- tar -czvf "$DEPLOY_FILE" chiaki
install:
- scripts/build-ffmpeg.sh
- if [ ! -z "$SDL2_FROM_SRC" ]; then scripts/build-sdl2.sh || exit 1; fi
before_script:
- export CHIAKI_VERSION="$TRAVIS_TAG"
- if [ -z "$CHIAKI_VERSION" ]; then export CHIAKI_VERSION="$TRAVIS_COMMIT"; fi
script:
- mkdir build && cd build
- cmake
-DCMAKE_BUILD_TYPE=Release
-DCMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH
-DCHIAKI_ENABLE_TESTS=ON
-DCHIAKI_ENABLE_CLI=OFF
-DCHIAKI_GUI_ENABLE_QT_GAMEPAD=OFF
-DCHIAKI_GUI_ENABLE_SDL_GAMECONTROLLER=ON
$CMAKE_EXTRA_ARGS
..
- make -j4
- test/chiaki-unit
deploy:
skip_cleanup: true
provider: releases
draft: true
api_key:
secure: R7RjLOuGFda05EJeNX2lNG135xKU2w9IQn7p1H1P2zw4zlQMgSBpNRaW8hE408x5KJUjptJTF6QaYYmPWbHlf9VEPFVIcVzSp8YSd2Cdr+GKhmFgWF+fJPBj5y9NNqohwxvK3Nrugh0v6yVQiEYEGF7WArU6dvymSNNTw/EqXtfrOvwUgSf1bDAzQAsXn3E6Ptzf9DrQU8+mOgMSqT/3Wy5207KLmWTtwBWDgkskKwS9OEXk3tDd6U4uT7NFHHmcw+ZjQXRD+yHSHUWYs1oKR4IfgPFxQfEK0Txhkxdf3yj1aNweuk7GGC3cfRaarUfRQpoYqYYCxhTfGZ2b4rVgX3XpssMY7ZmSZHRi/SX08ETXF/c7PZGzr0RPFXZLgAGjgN6O2Dbb9agc3tOUGDUuqKEWX9sALm82WS0FRAFrFLENgMFsj5hu+DKIIkAU2yEsadYKjjhC+q+mTAEkxKKknvM50Xpx3tE1TlP/31Z53v4/NydHIHXPJ72V3mnuoTacwhG2SkGtjMbLCnEZDCtu9C4556oa7Z29cqafv90ZD7lTQMV+ijKvjxgOC9u1GeemmZLofRGDFyYSqKxOpYxxxXGOhs+7FMAdKP00h++MTLwRwIebKQs0fW0XiNKmwushWOUU8sXI1jxTbwe9dPQsspxHRv/mVo6l2vUcBjC19K0=
file: $DEPLOY_FILE
on:
tags: true
condition: $DEPLOY = 1