mirror of
https://github.com/ThePhD/sol2.git
synced 2024-03-22 13:10:44 +08:00
eb1560d12a
improve exception documentation improve state_view default handlers add SAFE_PROPAGATION defines for compiling C++ as Lua add examples for automatic operator registrations and as_container fix tutorial code change tests to not throw unless absolutely necessary provide synchronization for file writing in tests provide thread safety around thread tests for REQUIRE add ostream automatic support change 5.1 compat to only kick in luaL_loadbufferx and luaL_loadfilex when LuaJIT is version 2.0.1 and lower
269 lines
7.8 KiB
YAML
269 lines
7.8 KiB
YAML
language: cpp
|
|
sudo: required
|
|
dist: trusty
|
|
|
|
git:
|
|
depth: 5
|
|
|
|
before_install:
|
|
- source ./install.deps.sh
|
|
|
|
install:
|
|
- install_os_deps
|
|
|
|
script:
|
|
- echo "Configuration info:"
|
|
- export_compiler_vars
|
|
- ninja --version
|
|
- ./bootstrap.py --ci && ninja
|
|
|
|
notifications:
|
|
webhooks:
|
|
urls:
|
|
- https://webhooks.gitter.im/e/b864d553270a069d26c8
|
|
on_success: change # options: [always|never|change] default: always
|
|
on_failure: always # options: [always|never|change] default: always
|
|
on_start: never # options: [always|never|change] default: always
|
|
email:
|
|
on_success: change
|
|
on_failure: change
|
|
|
|
matrix:
|
|
fast_finish: true
|
|
include:
|
|
# linux machines
|
|
# gcc
|
|
- os: linux
|
|
env: COMPILER=g++-4.9 LUA_VERSION=lua52
|
|
compiler: gcc
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- gcc-4.9
|
|
- g++-4.9
|
|
- ninja-build
|
|
- liblua5.2-dev
|
|
|
|
# gcc-5
|
|
- os: linux
|
|
env: COMPILER=g++-5 LUA_VERSION=lua52
|
|
compiler: gcc
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- gcc-5
|
|
- g++-5
|
|
- ninja-build
|
|
- liblua5.2-dev
|
|
|
|
# gcc-5
|
|
- os: linux
|
|
env: COMPILER=g++-5 LUA_VERSION=luajit51
|
|
compiler: gcc
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- gcc-5
|
|
- g++-5
|
|
- ninja-build
|
|
- libluajit-5.1-dev
|
|
|
|
# clang
|
|
- os: linux
|
|
env:
|
|
- LUA_VERSION=lua52
|
|
- LLVM_VERSION=3.6.0
|
|
- LLVM_ARCHIVE_PATH=$HOME/clang+llvm.tar.xz
|
|
- COMPILER=clang++
|
|
- CPPFLAGS="-I $HOME/clang-$LLVM_VERSION/include/c++/v1"
|
|
- CXXFLAGS=-lc++
|
|
- PATH=$HOME/clang-$LLVM_VERSION/bin:$PATH
|
|
- LD_LIBRARY_PATH=$HOME/clang-$LLVM_VERSION/lib:$LD_LIBRARY_PATH
|
|
before_install:
|
|
- wget http://llvm.org/releases/$LLVM_VERSION/clang+llvm-$LLVM_VERSION-x86_64-linux-gnu-ubuntu-14.04.tar.xz -O $LLVM_ARCHIVE_PATH
|
|
- mkdir $HOME/clang-$LLVM_VERSION
|
|
- tar xf $LLVM_ARCHIVE_PATH -C $HOME/clang-$LLVM_VERSION --strip-components 1
|
|
- export PATH=$HOME/clang+llvm/bin:$PATH
|
|
- source ./install.deps.sh
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- gcc-4.9
|
|
- g++-4.9
|
|
- ninja-build
|
|
- liblua5.2-dev
|
|
|
|
- os: linux
|
|
env:
|
|
- LUA_VERSION=luajit51
|
|
- LLVM_VERSION=3.6.0
|
|
- LLVM_ARCHIVE_PATH=$HOME/clang+llvm.tar.xz
|
|
- COMPILER=clang++
|
|
- CPPFLAGS="-I $HOME/clang-$LLVM_VERSION/include/c++/v1"
|
|
- CXXFLAGS=-lc++
|
|
- PATH=$HOME/clang-$LLVM_VERSION/bin:$PATH
|
|
- LD_LIBRARY_PATH=$HOME/clang-$LLVM_VERSION/lib:$LD_LIBRARY_PATH
|
|
before_install:
|
|
- wget http://llvm.org/releases/$LLVM_VERSION/clang+llvm-$LLVM_VERSION-x86_64-linux-gnu-ubuntu-14.04.tar.xz -O $LLVM_ARCHIVE_PATH
|
|
- mkdir $HOME/clang-$LLVM_VERSION
|
|
- tar xf $LLVM_ARCHIVE_PATH -C $HOME/clang-$LLVM_VERSION --strip-components 1
|
|
- export PATH=$HOME/clang+llvm/bin:$PATH
|
|
- source ./install.deps.sh
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- gcc-4.9
|
|
- g++-4.9
|
|
- ninja-build
|
|
- libluajit-5.1-dev
|
|
|
|
- os: linux
|
|
env:
|
|
- LUA_VERSION=lua52
|
|
- LLVM_VERSION=3.7.0
|
|
- LLVM_ARCHIVE_PATH=$HOME/clang+llvm.tar.xz
|
|
- COMPILER=clang++
|
|
- CPPFLAGS="-I $HOME/clang-$LLVM_VERSION/include/c++/v1"
|
|
- CXXFLAGS=-lc++
|
|
- PATH=$HOME/clang-$LLVM_VERSION/bin:$PATH
|
|
- LD_LIBRARY_PATH=$HOME/clang-$LLVM_VERSION/lib:$LD_LIBRARY_PATH
|
|
before_install:
|
|
- wget http://llvm.org/releases/$LLVM_VERSION/clang+llvm-$LLVM_VERSION-x86_64-linux-gnu-ubuntu-14.04.tar.xz -O $LLVM_ARCHIVE_PATH
|
|
- mkdir $HOME/clang-$LLVM_VERSION
|
|
- tar xf $LLVM_ARCHIVE_PATH -C $HOME/clang-$LLVM_VERSION --strip-components 1
|
|
- export PATH=$HOME/clang+llvm/bin:$PATH
|
|
- source ./install.deps.sh
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- gcc-4.9
|
|
- g++-4.9
|
|
- ninja-build
|
|
- liblua5.2-dev
|
|
|
|
- os: linux
|
|
env:
|
|
- LUA_VERSION=lua52
|
|
- LLVM_VERSION=3.8.0
|
|
- LLVM_ARCHIVE_PATH=$HOME/clang+llvm.tar.xz
|
|
- COMPILER=clang++
|
|
- CPPFLAGS="-I $HOME/clang-$LLVM_VERSION/include/c++/v1"
|
|
- CXXFLAGS=-lc++
|
|
- PATH=$HOME/clang-$LLVM_VERSION/bin:$PATH
|
|
- LD_LIBRARY_PATH=$HOME/clang-$LLVM_VERSION/lib:$LD_LIBRARY_PATH
|
|
before_install:
|
|
- wget http://llvm.org/releases/$LLVM_VERSION/clang+llvm-$LLVM_VERSION-x86_64-linux-gnu-ubuntu-14.04.tar.xz -O $LLVM_ARCHIVE_PATH
|
|
- mkdir $HOME/clang-$LLVM_VERSION
|
|
- tar xf $LLVM_ARCHIVE_PATH -C $HOME/clang-$LLVM_VERSION --strip-components 1
|
|
- export PATH=$HOME/clang+llvm/bin:$PATH
|
|
- source ./install.deps.sh
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- gcc-4.9
|
|
- g++-4.9
|
|
- ninja-build
|
|
- liblua5.2-dev
|
|
|
|
- os: linux
|
|
env:
|
|
- LUA_VERSION=lua52
|
|
- LLVM_VERSION=3.9.0
|
|
- LLVM_ARCHIVE_PATH=$HOME/clang+llvm.tar.xz
|
|
- COMPILER=clang++
|
|
- CPPFLAGS="-I $HOME/clang-$LLVM_VERSION/include/c++/v1"
|
|
- CXXFLAGS=-lc++
|
|
- PATH=$HOME/clang-$LLVM_VERSION/bin:$PATH
|
|
- LD_LIBRARY_PATH=$HOME/clang-$LLVM_VERSION/lib:$LD_LIBRARY_PATH
|
|
before_install:
|
|
- wget http://llvm.org/releases/$LLVM_VERSION/clang+llvm-$LLVM_VERSION-x86_64-linux-gnu-ubuntu-14.04.tar.xz -O $LLVM_ARCHIVE_PATH
|
|
- mkdir $HOME/clang-$LLVM_VERSION
|
|
- tar xf $LLVM_ARCHIVE_PATH -C $HOME/clang-$LLVM_VERSION --strip-components 1
|
|
- export PATH=$HOME/clang+llvm/bin:$PATH
|
|
- source ./install.deps.sh
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- gcc-4.9
|
|
- g++-4.9
|
|
- ninja-build
|
|
- liblua5.2-dev
|
|
|
|
- os: linux
|
|
env:
|
|
- LUA_VERSION=lua52
|
|
- LLVM_VERSION=4.0.0
|
|
- LLVM_ARCHIVE_PATH=$HOME/clang+llvm.tar.xz
|
|
- COMPILER=clang++
|
|
- CPPFLAGS="-I $HOME/clang-$LLVM_VERSION/include/c++/v1"
|
|
- CXXFLAGS=-lc++
|
|
- PATH=$HOME/clang-$LLVM_VERSION/bin:$PATH
|
|
- LD_LIBRARY_PATH=$HOME/clang-$LLVM_VERSION/lib:$LD_LIBRARY_PATH
|
|
before_install:
|
|
- wget http://llvm.org/releases/$LLVM_VERSION/clang+llvm-$LLVM_VERSION-x86_64-linux-gnu-ubuntu-14.04.tar.xz -O $LLVM_ARCHIVE_PATH
|
|
- mkdir $HOME/clang-$LLVM_VERSION
|
|
- tar xf $LLVM_ARCHIVE_PATH -C $HOME/clang-$LLVM_VERSION --strip-components 1
|
|
- export PATH=$HOME/clang+llvm/bin:$PATH
|
|
- source ./install.deps.sh
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- gcc-4.9
|
|
- g++-4.9
|
|
- ninja-build
|
|
- liblua5.2-dev
|
|
|
|
- os: osx
|
|
osx_image: xcode7.3
|
|
compiler: gcc
|
|
env: COMPILER=g++-4.9 LUA_VERSION=lua53
|
|
|
|
- os: osx
|
|
osx_image: xcode8.3
|
|
compiler: gcc
|
|
env: COMPILER=g++-5 LUA_VERSION=luajit
|
|
|
|
- os: osx
|
|
osx_image: xcode8.3
|
|
compiler: gcc
|
|
env: COMPILER=g++-5 LUA_VERSION=lua52
|
|
|
|
- os: osx
|
|
osx_image: xcode8.3
|
|
compiler: gcc
|
|
env: COMPILER=g++-5 LUA_VERSION=lua53
|
|
|
|
- os: osx
|
|
osx_image: xcode8.3
|
|
compiler: clang
|
|
env: COMPILER=appleclang LUA_VERSION=lua53
|
|
|
|
allow_failures:
|
|
- os: osx
|
|
compiler: clang
|
|
compiler: gcc
|