# https://travis-ci.org language: cpp env: - PPSSPP_BUILD_TYPE=Linux CMAKE=TRUE - PPSSPP_BUILD_TYPE=Android - PPSSPP_BUILD_TYPE=Blackberry CMAKE=TRUE - PPSSPP_BUILD_TYPE=Symbian compiler: - gcc matrix: include: - compiler: clang env: PPSSPP_BUILD_TYPE=Linux CMAKE=TRUE before_install: - git submodule update --init --recursive - sudo apt-get install aria2 -qq - download_extract() { aria2c -x 16 $1 -o $2 && tar -xf $2; } # Travis uses CMake 2.8.7. We require 2.8.8. Grab latest - if [ "$CMAKE" == "TRUE" ]; then sudo apt-get install lib32stdc++6 -qq && aria2c -x 16 http://www.cmake.org/files/v2.8/cmake-2.8.12.1-Linux-i386.sh && chmod a+x cmake-2.8.12.1-Linux-i386.sh && sudo ./cmake-2.8.12.1-Linux-i386.sh --skip-license --prefix=/usr; fi install: # Linux Setup - if [ "$PPSSPP_BUILD_TYPE" == "Linux" ]; then sudo apt-get install libsdl1.2-dev -qq; # Android NDK - elif [ "$PPSSPP_BUILD_TYPE" == "Android" ]; then NDK_VER=android-ndk-r9b && sudo apt-get install ant -qq && download_extract http://dl.google.com/android/ndk/${NDK_VER}-linux-x86_64.tar.bz2 ${NDK_VER}-linux-x86_64.tar.bz2 && export ANDROID_HOME=$(pwd)/${NDK_VER} NDK=$(pwd)/${NDK_VER} && if [[ "$CXX" == *clang* ]]; then export NDK_TOOLCHAIN_VERSION=clang; fi; # Blackberry NDK: 10.2.0.1155 - elif [ "$PPSSPP_BUILD_TYPE" == "Blackberry" ]; then download_extract https://googledrive.com/host/0B5UBD4wjtpZ-QVdzSElobzNTOU0 libs.tar.gz && download_extract https://googledrive.com/host/0B5UBD4wjtpZ-NV80UzFYMVRkSXM tools.tar.gz && export QNX_TARGET="$(pwd)/target_10_2_0_1155/qnx6" QNX_HOST="$(pwd)/host_10_2_0_15/linux/x86" && PATH="$QNX_HOST/usr/bin:$PATH"; # Symbian NDK: Belle - elif [ "$PPSSPP_BUILD_TYPE" == "Symbian" ]; then sudo apt-get install lib32stdc++6 lib32bz2-1.0 -qq && download_extract https://googledrive.com/host/0B5UBD4wjtpZ-T0Iwa0F3b2JqREE ndk.tar.bz2 && sed -i "s!/SDKs!$(pwd)/SDKs!" SDKs/SymbianSR1Qt474/bin/qt.conf && sed -i "s!0xF00000!0x1000000!" tools/sbs/lib/config/gcce.xml && cp ffmpeg/symbian/armv6/lib/* SDKs/SymbianSR1Qt474/epoc32/release/armv5/urel/ && export EPOCROOT=$(pwd)/SDKs/SymbianSR1Qt474 SBS_GCCE463BIN=$(pwd)/tools/gcce4/bin && PATH=$SBS_GCCE463BIN:$(pwd)/tools/sbs/bin:$EPOCROOT/epoc32/tools:$(pwd)/tools:$EPOCROOT/bin:$(pwd)/tools/sbs/linux-x86_64-libc2_15/bin:$PATH; fi script: # Compile PPSSPP - if [ "$PPSSPP_BUILD_TYPE" == "Linux" ]; then ./b.sh --headless; - elif [ "$PPSSPP_BUILD_TYPE" == "Android" ]; then pushd android && ./ab.sh && popd; - elif [ "$PPSSPP_BUILD_TYPE" == "Blackberry" ]; then ./b.sh --no-package; - elif [ "$PPSSPP_BUILD_TYPE" == "Symbian" ]; then pushd Qt && qmake -spec symbian-sbsv2 PPSSPPQt.pro && make release-gcce -j4 && make sis && popd; fi after_success: - if [ "$PPSSPP_BUILD_TYPE" == "Linux" ]; then ./test.py; fi