Files
bgfx.cmake/.travis.yml
2020-05-11 22:51:52 -04:00

165 lines
4.8 KiB
YAML

language: cpp
addons:
apt_packages:
- libgl1-mesa-dev
homebrew:
packages:
- cmake
update: true
matrix:
include:
- name: "Linux gcc"
os: linux
dist: xenial
compiler: gcc
env:
- AMALGAMATED=OFF
- name: "Linux gcc Amalgamated"
os: linux
dist: xenial
compiler: gcc
env:
- AMALGAMATED=ON
- name: "Linux clang"
os: linux
dist: xenial
compiler: clang
env:
- AMALGAMATED=OFF
- name: "Linux clang Amalgamated"
os: linux
dist: xenial
compiler: clang
env:
- AMALGAMATED=ON
- name: "macOS Xcode 10"
os: osx
osx_image: xcode10
env:
- CMAKE_FLAGS="-GXcode"
- AMALGAMATED=OFF
- name: "macOS Xcode 10 Amalgamated"
os: osx
osx_image: xcode10
env:
- CMAKE_FLAGS="-GXcode"
- AMALGAMATED=ON
- name: "macOS Xcode 10 (Makefiles)"
os: osx
osx_image: xcode10
env:
- AMALGAMATED=OFF
- name: "macOS Xcode 10 Amalgamated (Makefiles)"
os: osx
osx_image: xcode10
env:
- AMALGAMATED=ON
#- name: "iOS Xcode 10"
# os: osx
# osx_image: xcode10
# env:
# - CMAKE_FLAGS="-GXcode -DCMAKE_SYSTEM_NAME=iOS -DBGFX_BUILD_TOOLS=OFF -DCMAKE_OSX_SYSROOT=iphonesimulator"
# - AMALGAMATED=OFF
#- name: "iOS Xcode 10 Amalgamated"
# os: osx
# osx_image: xcode10
# env:
# - CMAKE_FLAGS="-GXcode -DCMAKE_SYSTEM_NAME=iOS -DBGFX_BUILD_TOOLS=OFF -DCMAKE_OSX_SYSROOT=iphonesimulator"
# - AMALGAMATED=ON
- name: "Visual studio 15 2017"
os: windows
env:
- AMALGAMATED=OFF
- name: "Visual studio 15 2017 Amalgamated"
os: windows
env:
- AMALGAMATED=ON
- name: "Emscripten"
os: linux
dist: xenial
language: node_js
services:
- docker
before_script:
- docker run -dit --name emscripten -v $(pwd):/src trzeci/emscripten:sdk-incoming-64bit bash
script:
- docker exec -it emscripten emconfigure cmake . -DBGFX_BUILD_TOOLS=OFF -DBGFX_AMALGAMATED=$AMALGAMATED -DBX_AMALGAMATED=$AMALGAMATED
- docker exec -it emscripten emmake make
env:
- AMALGAMATED=OFF
- name: "Emscripten Amalgamated"
os: linux
dist: xenial
language: node_js
services:
- docker
before_script:
- docker run -dit --name emscripten -v $(pwd):/src trzeci/emscripten:sdk-incoming-64bit bash
script:
- docker exec -it emscripten emconfigure cmake . -DBGFX_BUILD_TOOLS=OFF -DBGFX_AMALGAMATED=$AMALGAMATED -DBX_AMALGAMATED=$AMALGAMATED
- docker exec -it emscripten emmake make
env:
- AMALGAMATED=OFF
- name: "Android armeabi-v7a"
language: android
android: &androidComponents
components:
- tools
- platform-tools
- build-tools-26.0.1
env:
- CMAKE_FLAGS="-DCMAKE_SYSTEM_NAME=Android -DBGFX_BUILD_TOOLS=OFF -DBGFX_BUILD_EXAMPLES=OFF -DCMAKE_ANDROID_NDK=$TRAVIS_BUILD_DIR/android-ndk-r18b -DCMAKE_ANDROID_ARCH_ABI=armeabi-v7a -DCMAKE_ANDROID_NDK_TOOLCHAIN_VERSION=clang -DCMAKE_ANDROID_STL_TYPE=c++_shared -DCMAKE_ANDROID_API=26"
- AMALGAMATED=OFF
install: &androidInstall
- echo y | sdkmanager "cmake;3.10.2.4988404"
- sudo ln -sf /usr/local/android-sdk/cmake/3.10.2.4988404/bin/cmake /usr/bin/cmake
- wget https://dl.google.com/android/repository/android-ndk-r18b-linux-x86_64.zip
- unzip -qq android-ndk-r18b-linux-x86_64.zip
- name: "Android armeabi-v7a Amalgamated"
language: android
android: *androidComponents
env:
- CMAKE_FLAGS="-DCMAKE_SYSTEM_NAME=Android -DBGFX_BUILD_TOOLS=OFF -DBGFX_BUILD_EXAMPLES=OFF -DCMAKE_ANDROID_NDK=$TRAVIS_BUILD_DIR/android-ndk-r18b -DCMAKE_ANDROID_ARCH_ABI=armeabi-v7a -DCMAKE_ANDROID_NDK_TOOLCHAIN_VERSION=clang -DCMAKE_ANDROID_STL_TYPE=c++_shared -DCMAKE_ANDROID_API=26"
- AMALGAMATED=ON
install: *androidInstall
- name: "Android x86"
language: android
android: *androidComponents
env:
- CMAKE_FLAGS="-DCMAKE_SYSTEM_NAME=Android -DBGFX_BUILD_TOOLS=OFF -DBGFX_BUILD_EXAMPLES=OFF -DCMAKE_ANDROID_NDK=$TRAVIS_BUILD_DIR/android-ndk-r18b -DCMAKE_ANDROID_ARCH_ABI=x86 -DCMAKE_ANDROID_NDK_TOOLCHAIN_VERSION=clang -DCMAKE_ANDROID_STL_TYPE=c++_shared -DCMAKE_ANDROID_API=26"
- AMALGAMATED=OFF
install: *androidInstall
- name: "Android x86 Amalgamated"
language: android
android: *androidComponents
env:
- CMAKE_FLAGS="-DCMAKE_SYSTEM_NAME=Android -DBGFX_BUILD_TOOLS=OFF -DBGFX_BUILD_EXAMPLES=OFF -DCMAKE_ANDROID_NDK=$TRAVIS_BUILD_DIR/android-ndk-r18b -DCMAKE_ANDROID_ARCH_ABI=x86 -DCMAKE_ANDROID_NDK_TOOLCHAIN_VERSION=clang -DCMAKE_ANDROID_STL_TYPE=c++_shared -DCMAKE_ANDROID_API=26"
- AMALGAMATED=ON
install: *androidInstall
script:
- mkdir build && cd build
- cmake $CMAKE_FLAGS -DBGFX_INSTALL_EXAMPLES=ON -DBGFX_AMALGAMATED=$AMALGAMATED -DBX_AMALGAMATED=$AMALGAMATED ..
- cmake --build .