mirror of
https://github.com/libretro/RetroArch.git
synced 2024-11-30 11:40:32 +00:00
221 lines
6.5 KiB
YAML
221 lines
6.5 KiB
YAML
# This setting is to prevent travis to launch duplicate builds on PRs
|
|
branches:
|
|
only:
|
|
- master
|
|
- /^v.*$/
|
|
|
|
# Use 'generic' to be able to override CC/CXX for clang
|
|
language: generic
|
|
|
|
# Use a release with a longer normal LTS
|
|
dist: xenial
|
|
|
|
matrix:
|
|
include:
|
|
- compiler: mingw-x86
|
|
addons: true
|
|
env: CROSS_COMPILE=i686-w64-mingw32- CFLAGS="-D_WIN32_WINNT=0x0501"
|
|
- compiler: mingw-x86
|
|
addons: true
|
|
env: C89_BUILD=1 CROSS_COMPILE=i686-w64-mingw32- CFLAGS="-D_WIN32_WINNT=0x0501"
|
|
- compiler: mingw-x86
|
|
addons: true
|
|
env: CXX_BUILD=1 CROSS_COMPILE=i686-w64-mingw32- CFLAGS="-D_WIN32_WINNT=0x0501"
|
|
- compiler: mingw-x64
|
|
addons: true
|
|
env: CROSS_COMPILE=x86_64-w64-mingw32- CFLAGS="-D_WIN32_WINNT=0x0501"
|
|
- compiler: mingw-x64
|
|
addons: true
|
|
env: C89_BUILD=1 CROSS_COMPILE=x86_64-w64-mingw32- CFLAGS="-D_WIN32_WINNT=0x0501"
|
|
- compiler: mingw-x64
|
|
addons: true
|
|
env: CXX_BUILD=1 CROSS_COMPILE=x86_64-w64-mingw32- CFLAGS="-D_WIN32_WINNT=0x0501"
|
|
- compiler: gcc
|
|
env: CC=gcc-8 CXX=g++-8
|
|
- compiler: gcc
|
|
env: CC="gcc-8 --sysroot=/" CXX="g++-8 --sysroot=/"
|
|
- compiler: gcc
|
|
env: C89_BUILD=1 CC=gcc-8 CXX=g++-8
|
|
- compiler: gcc
|
|
env: CXX_BUILD=1 CC=gcc-8 CXX=g++-8
|
|
- compiler: gcc
|
|
env: DISABLE_MENU=1 CC=gcc-8 CXX=g++-8
|
|
- compiler: gcc
|
|
env: DISABLE_NETWORKING=1 CC=gcc-8 CXX=g++-8
|
|
- compiler: gcc
|
|
env: DISABLE_OVERLAY=1 CC=gcc-8 CXX=g++-8
|
|
- compiler: gcc
|
|
env: DISABLE_CDROM=1 CC=gcc-8 CXX=g++-8
|
|
- compiler: gcc
|
|
env: DISABLE_VIDEO_LAYOUT=1 CC=gcc-8 CXX=g++-8
|
|
- compiler: gcc
|
|
env: DISABLE_PATCH=1 CC=gcc-8 CXX=g++-8
|
|
- compiler: gcc
|
|
env: DISABLE_CHEATS=1 CC=gcc-8 CXX=g++-8
|
|
- compiler: gcc
|
|
env: DISABLE_THREADS=1 CC=gcc-8 CXX=g++-8
|
|
- compiler: gcc
|
|
env: DISABLE_AUDIOMIXER=1 CC=gcc-8 CXX=g++-8
|
|
- compiler: gcc
|
|
env: ENABLE_GLES=1 CC=gcc-8 CXX=g++-8
|
|
- compiler: gcc
|
|
env: ENABLE_GLES=1 ENABLE_GLES3=1 CC=gcc-8 CXX=g++-8
|
|
- compiler: clang
|
|
env: CC=clang-6.0 CXX=clang++-6.0
|
|
- compiler: clang
|
|
env: C89_BUILD=1 CC=clang-6.0 CXX=clang++-6.0
|
|
- compiler: clang
|
|
env: CXX_BUILD=1 CC=clang-6.0 CXX=clang++-6.0
|
|
- os: osx
|
|
env: CC=clang CXX=clang++
|
|
- name: OSX OpenGL Make
|
|
os: osx
|
|
osx_image: xcode11.2
|
|
script:
|
|
- ./configure --enable-opengl --disable-metal
|
|
- make
|
|
- os: osx
|
|
osx_image: xcode8
|
|
script:
|
|
- xcodebuild -target RetroArch -configuration Release -project pkg/apple/RetroArch.xcodeproj
|
|
- os: osx
|
|
osx_image: xcode11.2
|
|
script:
|
|
- brew update-reset
|
|
- brew install --force-bottle qt5
|
|
- security create-keychain -p travis build.keychain
|
|
- security default-keychain -s build.keychain
|
|
- security unlock-keychain -p travis build.keychain
|
|
- echo $OSX_CERT | base64 --decode > dev.p12
|
|
- security import dev.p12 -k build.keychain -P $OSX_CERT_PASS -T /usr/bin/codesign
|
|
- rm dev.p12
|
|
- security set-key-partition-list -S "apple-tool:,apple:,codesign:" -s -k travis build.keychain
|
|
- xcodebuild -target RetroArchQt -configuration Release -project pkg/apple/RetroArch_Metal.xcodeproj
|
|
deploy:
|
|
skip_cleanup: true
|
|
provider: script
|
|
script: bash travis_metal_deploy.sh
|
|
on:
|
|
branch: master
|
|
- language: android
|
|
# Android builds are only supported on Trusty
|
|
dist: trusty
|
|
android:
|
|
components:
|
|
- tools
|
|
- build-tools-28.0.3
|
|
- android-28
|
|
install:
|
|
- echo y | sdkmanager "ndk-bundle"
|
|
before_script:
|
|
- export ANDROID_NDK_HOME=$ANDROID_HOME/ndk-bundle
|
|
script:
|
|
- cd pkg/android/phoenix
|
|
- ./gradlew assembleNormalRelease
|
|
|
|
jobs:
|
|
allow_failure:
|
|
- os: osx
|
|
|
|
before_install:
|
|
- |
|
|
if [[ "$CC" =~ ^gcc-8.* ]]; then
|
|
# Install a more recent gcc than the default
|
|
sudo apt-get install -y g++-8
|
|
elif [ "$CC" = clang-6.0 ]; then
|
|
# Install a more recent clang than the default
|
|
sudo apt-get install -y clang-6.0
|
|
elif [ "$CROSS_COMPILE" = i686-w64-mingw32- ]; then
|
|
sudo update-alternatives --set i686-w64-mingw32-g++ /usr/bin/i686-w64-mingw32-g++-posix
|
|
elif [ "$CROSS_COMPILE" = x86_64-w64-mingw32- ]; then
|
|
sudo update-alternatives --set x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++-posix
|
|
fi
|
|
|
|
before_script:
|
|
- |
|
|
if [ -n "$CROSS_COMPILE" ]; then
|
|
ARGS="$ARGS --disable-d3d8 --disable-d3d9 --disable-d3d10 --disable-d3d11 --disable-d3d12"
|
|
fi
|
|
- |
|
|
if [ -n "$DISABLE_MENU" ]; then
|
|
ARGS="$ARGS --disable-menu"
|
|
fi
|
|
- |
|
|
if [ -n "$DISABLE_OVERLAY" ]; then
|
|
ARGS="$ARGS --disable-overlay"
|
|
fi
|
|
- |
|
|
if [ -n "$DISABLE_PATCH" ]; then
|
|
ARGS="$ARGS --disable-patch"
|
|
fi
|
|
- |
|
|
if [ -n "$DISABLE_CHEATS" ]; then
|
|
ARGS="$ARGS --disable-cheats"
|
|
fi
|
|
- |
|
|
if [ -n "$DISABLE_NETWORKING" ]; then
|
|
ARGS="$ARGS --disable-networking"
|
|
fi
|
|
- |
|
|
if [ -n "$DISABLE_CDROM" ]; then
|
|
ARGS="$ARGS --disable-cdrom"
|
|
fi
|
|
- |
|
|
if [ -n "$DISABLE_VIDEO_LAYOUT" ]; then
|
|
ARGS="$ARGS --disable-video_layout"
|
|
fi
|
|
- |
|
|
if [ -n "$DISABLE_THREADS" ]; then
|
|
ARGS="$ARGS --disable-threads --disable-glslang"
|
|
fi
|
|
- |
|
|
if [ -n "$DISABLE_AUDIOMIXER" ]; then
|
|
ARGS="$ARGS --disable-audiomixer"
|
|
fi
|
|
- |
|
|
if [ -n "$ENABLE_GLES" ]; then
|
|
ARGS="$ARGS --enable-opengles"
|
|
fi
|
|
- |
|
|
if [ -n "$ENABLE_GLES3" ]; then
|
|
ARGS="$ARGS --enable-opengles3"
|
|
fi
|
|
- echo "Configure arguments = $ARGS"
|
|
|
|
script:
|
|
- ./configure $ARGS
|
|
- |
|
|
if [ -n "$C89_BUILD" ]; then
|
|
make C89_BUILD=1
|
|
elif [ -n "$CXX_BUILD" ]; then
|
|
make CXX_BUILD=1
|
|
else
|
|
make
|
|
fi
|
|
|
|
env:
|
|
global:
|
|
- ARGS=""
|
|
- MAKEFLAGS="-j2"
|
|
- secure: "qc91ReC3OlzSh2gFaSH6TYzC2qIQvgA2AZff6J13eaH8xijAhuMzttZ0rMQJ0DWCIhPeUb0kIzVyaGoe4MwPALzpw1C1AznIWiZJ53HN+hWCOcS/af7YVPk6HPySnwqrS+Wv3AIIvIKFV2mxv21F/JbT/N+pArlRrp904Xj+KPo="
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- libsdl2-dev
|
|
- libusb-1.0-0-dev
|
|
- qtbase5-dev
|
|
- qtdeclarative5-dev
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
- llvm-toolchain-xenial
|
|
coverity_scan:
|
|
project:
|
|
name: "RetroArch"
|
|
description: "RetroArch is the official reference frontend for the libretro API."
|
|
notification_email: libretro@gmail.com
|
|
build_command_prepend: "./configure; make clean"
|
|
build_command: "make"
|
|
branch_pattern: coverity_scan
|
|
notifications:
|
|
email: true
|