2018-09-28 13:27:38 +08:00
|
|
|
# # # # sol3
|
2017-12-20 17:58:32 +08:00
|
|
|
# The MIT License (MIT)
|
|
|
|
#
|
2021-03-06 14:03:23 +08:00
|
|
|
# Copyright (c) 2013-2021 Rapptz, ThePhD, and contributors
|
2017-12-20 17:58:32 +08:00
|
|
|
#
|
|
|
|
# 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.
|
|
|
|
|
2019-05-24 15:46:26 +08:00
|
|
|
version: 3.0.2-{build}
|
2017-12-20 17:58:32 +08:00
|
|
|
|
2017-12-26 12:27:22 +08:00
|
|
|
max_jobs: 4
|
|
|
|
|
2017-12-20 17:58:32 +08:00
|
|
|
pull_requests:
|
|
|
|
do_not_increment_build_number: true
|
|
|
|
|
2017-12-27 06:46:01 +08:00
|
|
|
# Ordering is important!
|
|
|
|
# specifying VS 2015 first makes all the 2015 jobs run first
|
|
|
|
# we need this so the MinGW jobs can run first
|
|
|
|
# In general, the matrix seems to order by appearance of first-order
|
|
|
|
# dimensions (Image, Platform, Configuration) and then
|
|
|
|
# the order of whatever elements are in the matrix
|
|
|
|
image:
|
|
|
|
- Visual Studio 2017
|
2020-03-31 12:22:46 +08:00
|
|
|
- Visual Studio 2019
|
2017-12-27 06:46:01 +08:00
|
|
|
|
|
|
|
# Run x64 first, x86 second
|
|
|
|
platform:
|
|
|
|
- x64
|
|
|
|
- x86
|
|
|
|
|
2017-12-24 09:34:34 +08:00
|
|
|
environment:
|
2017-12-24 10:18:52 +08:00
|
|
|
matrix:
|
2019-03-25 11:10:03 +08:00
|
|
|
- SOL2_LUA_VERSION: luajit-2.0.5
|
|
|
|
SOL2_BUILD_NINJA: 1
|
2019-03-25 14:14:52 +08:00
|
|
|
- SOL2_LUA_VERSION: luajit-2.1.0-beta3
|
2019-03-25 11:10:03 +08:00
|
|
|
SOL2_BUILD_NINJA: 1
|
2019-03-24 00:09:51 +08:00
|
|
|
- SOL2_LUA_VERSION: 5.3.5
|
2019-03-25 07:41:04 +08:00
|
|
|
SOL2_BUILD_NINJA: 1
|
2019-03-25 14:14:52 +08:00
|
|
|
MINGW_VERSION: 7.3.0
|
2019-03-24 00:09:51 +08:00
|
|
|
- SOL2_LUA_VERSION: 5.3.5
|
2019-03-25 07:41:04 +08:00
|
|
|
SOL2_BUILD_NINJA: 1
|
2019-03-23 04:28:17 +08:00
|
|
|
MINGW_VERSION: 8.1.0
|
2019-03-25 14:14:52 +08:00
|
|
|
- SOL2_LUA_VERSION: luajit-2.0.5
|
2019-03-25 07:41:04 +08:00
|
|
|
SOL2_BUILD_NINJA: 1
|
2019-03-23 04:28:17 +08:00
|
|
|
MINGW_VERSION: 8.1.0
|
2019-03-25 14:14:52 +08:00
|
|
|
- SOL2_LUA_VERSION: luajit-2.1.0-beta3
|
2019-03-25 07:41:04 +08:00
|
|
|
SOL2_BUILD_NINJA: 1
|
2019-03-25 14:14:52 +08:00
|
|
|
MINGW_VERSION: 8.1.0
|
2020-03-31 12:22:46 +08:00
|
|
|
- SOL2_LUA_VERSION: 5.4.0-beta
|
2019-03-24 00:09:51 +08:00
|
|
|
- SOL2_LUA_VERSION: 5.3.5
|
|
|
|
- SOL2_LUA_VERSION: 5.2.4
|
|
|
|
- SOL2_LUA_VERSION: 5.1.5
|
2017-12-20 17:58:32 +08:00
|
|
|
|
2017-12-26 00:44:04 +08:00
|
|
|
matrix:
|
2019-03-24 00:36:20 +08:00
|
|
|
#fast_finish: true
|
2017-12-26 00:44:04 +08:00
|
|
|
allow_failures:
|
2017-12-26 12:27:22 +08:00
|
|
|
# 32-bit builds are temperamental with exceptions
|
|
|
|
- platform: x86
|
2019-03-26 04:52:25 +08:00
|
|
|
- SOL2_LUA_VERSION: luajit-2.0.5
|
|
|
|
- SOL2_LUA_VERSION: luajit-2.1.0-beta3
|
2017-12-26 00:44:04 +08:00
|
|
|
exclude:
|
2019-03-23 04:28:17 +08:00
|
|
|
# Get rid of x86 builds for non-latest (no reason to redo that work)
|
2020-03-31 12:22:46 +08:00
|
|
|
- platform: x86
|
|
|
|
SOL2_LUA_VERSION: 5.4.0-beta
|
2017-12-26 09:18:29 +08:00
|
|
|
- platform: x86
|
2019-03-24 00:09:51 +08:00
|
|
|
SOL2_LUA_VERSION: 5.3.5
|
|
|
|
- platform: x86
|
|
|
|
SOL2_LUA_VERSION: 5.2.4
|
2017-12-26 09:18:29 +08:00
|
|
|
- platform: x86
|
2019-03-24 00:09:51 +08:00
|
|
|
SOL2_LUA_VERSION: 5.1.5
|
2017-12-26 00:44:04 +08:00
|
|
|
|
2017-12-20 17:58:32 +08:00
|
|
|
init:
|
2017-12-27 06:54:46 +08:00
|
|
|
# # Ninja
|
2017-12-26 09:18:29 +08:00
|
|
|
# make sure we have Ninja
|
2017-12-26 09:24:26 +08:00
|
|
|
- set top_level=%cd%
|
|
|
|
- cd ..
|
2017-12-26 09:18:29 +08:00
|
|
|
- md tools
|
|
|
|
- cd tools
|
2017-12-27 06:56:50 +08:00
|
|
|
- set ninja_path=%cd%\ninja
|
2017-12-26 09:18:29 +08:00
|
|
|
- set NINJA_URL="https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-win.zip"
|
|
|
|
- appveyor DownloadFile %NINJA_URL% -FileName ninja.zip
|
|
|
|
- 7z x ninja.zip -o%cd%\ninja
|
2017-12-26 09:24:26 +08:00
|
|
|
- cd "%top_level%"
|
2017-12-27 06:54:46 +08:00
|
|
|
# # PATH
|
|
|
|
# manipulations to manupulations need to be done here
|
|
|
|
- set python_path=C:\Python36
|
|
|
|
- set mingw_path=
|
|
|
|
- set llvm_path=
|
2019-03-24 01:11:51 +08:00
|
|
|
- if "%MINGW_VERSION%"=="7.3.0" (if "%PLATFORM%"=="x64" (set mingw_path=C:\mingw-w64\x86_64-7.3.0-posix-seh-rt_v5-rev0\mingw64\bin) else ( set mingw_path=C:\mingw-w64\i686-7.3.0-posix-seh-rt_v5-rev0\mingw32\bin))
|
2020-03-31 12:22:46 +08:00
|
|
|
- if "%MINGW_VERSION%"=="8.1.0" (if "%PLATFORM%"=="x64" (set mingw_path=C:\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin) else ( set mingw_path=C:\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\bin))
|
2017-12-27 06:54:46 +08:00
|
|
|
- if "%PLATFORM%"=="x64" (set python_path=C:\Python36-x64)
|
2017-12-27 06:59:02 +08:00
|
|
|
- set PATH=%python_path%;%PATH%
|
2017-12-27 06:54:46 +08:00
|
|
|
- set PATH=%mingw_path%;%PATH%
|
|
|
|
- set PATH=%llvm_path%;%PATH%
|
2017-12-27 06:56:50 +08:00
|
|
|
- set PATH=%ninja_path%;%PATH%
|
2017-12-27 06:54:46 +08:00
|
|
|
- echo PATH=%PATH%
|
|
|
|
# # Generators and CMake arguments
|
|
|
|
# configure the generator appropriately
|
2019-03-24 23:59:10 +08:00
|
|
|
- set CMAKE_GENERATOR=Ninja
|
|
|
|
- set arch= x86
|
|
|
|
- set parallelism=
|
2019-03-25 11:10:03 +08:00
|
|
|
- set build_compiler=
|
2019-03-24 23:59:10 +08:00
|
|
|
- if "%PLATFORM%"=="x64" (set arch= Win64)
|
2020-03-31 12:22:46 +08:00
|
|
|
- if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2019" (set CMAKE_GENERATOR=Visual Studio 16 2019%arch%)
|
2019-03-25 07:34:54 +08:00
|
|
|
- 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 "%SOL2_BUILD_NINJA%"=="1" (set CMAKE_GENERATOR=Ninja) else (set parallelism=/maxcpucount)
|
2019-03-25 11:11:59 +08:00
|
|
|
- if "%SOL2_BUILD_NINJA%"=="1" (set build_compiler=-DCMAKE_CXX_COMPILER=cl.exe -DCMAKE_C_COMPILER=cl.exe)
|
2017-12-27 10:05:27 +08:00
|
|
|
- set vcvars_script="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
|
2019-03-25 11:10:03 +08:00
|
|
|
- if "%PLATFORM%"=="x86" (set vcvars_script="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86)
|
2019-03-24 23:59:10 +08:00
|
|
|
- if "%MINGW_VERSION%"=="7.3.0" (set CMAKE_GENERATOR=Ninja&&set build_compiler=-DCMAKE_CXX_COMPILER=g++.exe -DCMAKE_C_COMPILER=gcc.exe)
|
|
|
|
- if "%MINGW_VERSION%"=="8.1.0" (set CMAKE_GENERATOR=Ninja&&set build_compiler=-DCMAKE_CXX_COMPILER=g++.exe -DCMAKE_C_COMPILER=gcc.exe)
|
2017-12-27 06:54:46 +08:00
|
|
|
# # Last printouts
|
|
|
|
# print out generator information
|
2019-03-25 11:10:03 +08:00
|
|
|
- echo Appveyor Image is %APPVEYOR_BUILD_WORKER_IMAGE%
|
|
|
|
- echo vcvars_script is %vcvars_script%
|
|
|
|
- echo cmake generator is %CMAKE_GENERATOR%
|
|
|
|
- echo build_compiler is %build_compiler%
|
|
|
|
- echo parallelism is %parallelism%
|
2017-12-27 06:54:46 +08:00
|
|
|
# print out useful tool information
|
2017-12-26 09:18:29 +08:00
|
|
|
- ninja --version
|
|
|
|
- cmake --version
|
2017-12-20 17:58:32 +08:00
|
|
|
|
|
|
|
before_build:
|
2017-12-24 09:34:34 +08:00
|
|
|
- md build-sol2
|
|
|
|
- cd build-sol2
|
2019-03-26 23:30:00 +08:00
|
|
|
- echo %vcvars_script%
|
2019-11-13 12:44:03 +08:00
|
|
|
- cd && %vcvars_script%
|
2019-03-25 07:34:54 +08:00
|
|
|
- cmake .. -G "%CMAKE_GENERATOR%" %build_compiler% -DCMAKE_BUILD_TYPE=Release "-DSOL2_LUA_VERSION=%SOL2_LUA_VERSION%" -DSOL2_PLATFORM=%PLATFORM% -DSOL2_CI=ON -DSOL2_BUILD_LUA=ON -DBUILD_LUA_AS_DLL=ON -DSOL2_TESTS=ON -DSOL2_EXAMPLES=ON -DSOL2_TESTS_EXAMPLES=ON
|
2017-12-20 17:58:32 +08:00
|
|
|
|
2017-12-24 10:36:31 +08:00
|
|
|
build_script:
|
2019-03-24 23:59:10 +08:00
|
|
|
- cmake --build . --config Release -- %parallelism%
|
2017-12-24 09:34:34 +08:00
|
|
|
|
|
|
|
test_script:
|
2017-12-24 16:24:07 +08:00
|
|
|
- ctest -C Release --output-on-failure
|
2017-12-24 10:18:52 +08:00
|
|
|
|
|
|
|
notifications:
|
|
|
|
- provider: Webhook
|
2019-03-23 04:28:17 +08:00
|
|
|
url: http://skyhook.glitch.me/api/webhooks/427786348108185611/y2nTmghqltv1SKX2DclEMEKyZtRcwKFlwfZpB_mL1A0nZTVS5MSfumqDKq30-gvWgeL5/appveyor
|
2017-12-24 10:18:52 +08:00
|
|
|
method: POST
|
2018-01-10 21:49:28 +08:00
|
|
|
on_build_success: true
|
|
|
|
on_build_failure: true
|
2017-12-25 01:32:23 +08:00
|
|
|
on_build_status_changed: true
|