mirror of
https://github.com/ThePhD/sol2.git
synced 2024-03-22 13:10:44 +08:00
6d2100e814
Add abort_clean so that CI does not get stuck on a message box that can never be answered alignment rules do not apply to stack variables, so the tests cannot have the alignment check in the destructor: only for memory pushed into and coming straight out of Lua
110 lines
4.0 KiB
YAML
110 lines
4.0 KiB
YAML
# # # # sol2
|
|
# The MIT License (MIT)
|
|
#
|
|
# Copyright (c) 2013-2017 Rapptz, ThePhD, and contributors
|
|
#
|
|
# Permission is hereby granted, free of charge, to any person obtaining a copy of
|
|
# this software and associated documentation files (the "Software"), to deal in
|
|
# the Software without restriction, including without limitation the rights to
|
|
# use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
|
# the Software, and to permit persons to whom the Software is furnished to do so,
|
|
# subject to the following conditions:
|
|
#
|
|
# The above copyright notice and this permission notice shall be included in all
|
|
# copies or substantial portions of the Software.
|
|
#
|
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
|
# FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
|
# COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
|
|
version: 1.0.{build}
|
|
|
|
pull_requests:
|
|
do_not_increment_build_number: true
|
|
|
|
image:
|
|
- Visual Studio 2017
|
|
- Visual Studio 2015
|
|
|
|
configuration:
|
|
- Release
|
|
|
|
environment:
|
|
matrix:
|
|
- LUA_VERSION: 5.3.4
|
|
- LUA_VERSION: 5.2.4
|
|
- LUA_VERSION: 5.1.5
|
|
- LUA_VERSION: 5.3.4
|
|
MINGW_VERSION: 6.3.0
|
|
- LUA_VERSION: 5.3.4
|
|
MINGW_VERSION: 5.3.0
|
|
|
|
platform:
|
|
- x86
|
|
- x64
|
|
|
|
matrix:
|
|
allow_failures:
|
|
- MINGW_VERSION: 5.3.0
|
|
- MINGW_VERSION: 6.3.0
|
|
exclude:
|
|
- image: Visual Studio 2017
|
|
MINGW_VERSION: 6.3.0
|
|
- image: Visual Studio 2017
|
|
MINGW_VERSION: 5.3.0
|
|
|
|
init:
|
|
- set arch=
|
|
- if "%PLATFORM%"=="x64" (set arch= Win64)
|
|
- echo %APPVEYOR_BUILD_WORKER_IMAGE%
|
|
- if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2017" (set CMAKE_GENERATOR=Visual Studio 15 2017%arch%)
|
|
- if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2015" (set CMAKE_GENERATOR=Visual Studio 14 2015%arch%)
|
|
- if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2013" (set CMAKE_GENERATOR=Visual Studio 12 2013%arch%)
|
|
- if "%MINGW_VERSION%"=="5.3.0" (set CMAKE_GENERATOR=Ninja)
|
|
- if "%MINGW_VERSION%"=="6.3.0" (set CMAKE_GENERATOR=Ninja)
|
|
- echo "%CMAKE_GENERATOR%"
|
|
|
|
# We need to use CMAKE_BUILD_TYPE=Release since there are no "configuration"
|
|
# toolsets for Ninja or Makefiles as far as cmake is concerned, so
|
|
# the --config / -C switches on builds do nothing...!
|
|
before_build:
|
|
- set python_path=C:\Python36
|
|
- set mingw_path=
|
|
- set build_type=
|
|
- if "%CMAKE_GENERATOR%"=="MinGW Makefiles" (set build_type=-DCMAKE_BUILD_TYPE=Release)
|
|
- if "%CMAKE_GENERATOR%"=="Ninja" (set build_type=-DCMAKE_BUILD_TYPE=Release)
|
|
- if "%MINGW_VERSION%"=="5.3.0" (set mingw_path=C:\mingw-w64\i686-5.3.0-posix-dwarf-rt_v4-rev0)
|
|
- if "%MINGW_VERSION%"=="6.3.0" ( if "%PLATFORM%"=="x64" (set mingw_path=C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1) else ( set mingw_path=C:\mingw-w64\i686-6.3.0-posix-dwarf-rt_v5-rev1))
|
|
- if "%PLATFORM%"=="x64" (set python_path=C:\Python36-x64)
|
|
- set PATH=%python_path%;%PATH%
|
|
- set PATH=%PATH%;%mingw_path%
|
|
- md build-sol2
|
|
- cd build-sol2
|
|
- cmake .. -G "%CMAKE_GENERATOR%" %build_type% -DLUA_VERSION="%LUA_VERSION%" -DBUILD_LUA=ON -DBUILD_LUA_AS_DLL=OFF -DTESTS=ON -DEXAMPLES=ON -DSINGLE=ON -DTESTS_EXAMPLES=ON -DTESTS_SINGLE=ON
|
|
|
|
# We do not build the debug versions because the compiler
|
|
# generates too much debug info for MinGW to handle
|
|
# TODO: fix the damn compilation space and time already
|
|
build_script:
|
|
- if NOT "%build_type%"=="-DCMAKE_BUILD_TYPE=Release" (cmake --build . --config Debug)
|
|
- cmake --build . --config Release
|
|
|
|
test_script:
|
|
- if NOT "%build_type%"=="-DCMAKE_BUILD_TYPE=Release" (ctest -C Debug --output-on-failure)
|
|
- ctest -C Release --output-on-failure
|
|
|
|
notifications:
|
|
- provider: Webhook
|
|
url: https://webhooks.gitter.im/e/1af10e654a918bef7f1e
|
|
method: POST
|
|
on_build_success: false
|
|
on_build_failure: false
|
|
on_build_status_changed: true
|
|
- provider: Email
|
|
on_build_success: false
|
|
on_build_failure: false
|
|
on_build_status_changed: true
|