2016-07-20 14:29:24 -04:00
|
|
|
version: "{build}"
|
2015-08-20 00:38:46 +02:00
|
|
|
branches:
|
|
|
|
only:
|
2018-12-01 11:41:13 +00:00
|
|
|
- master
|
2020-05-31 13:01:19 +02:00
|
|
|
- RC_2_0
|
2019-01-12 22:48:20 +01:00
|
|
|
- RC_1_2
|
2018-12-01 11:41:13 +00:00
|
|
|
- RC_1_1
|
2019-11-17 13:33:47 +01:00
|
|
|
image: Visual Studio 2017
|
2015-08-20 00:38:46 +02:00
|
|
|
clone_depth: 1
|
|
|
|
environment:
|
|
|
|
matrix:
|
2018-12-01 11:41:13 +00:00
|
|
|
- cmake: 1
|
|
|
|
- variant: test_debug
|
2019-02-20 13:46:51 +01:00
|
|
|
compiler: msvc-14.1
|
2018-12-01 11:41:13 +00:00
|
|
|
model: 64
|
|
|
|
sim: 1
|
|
|
|
- variant: test_debug
|
2019-02-20 13:46:51 +01:00
|
|
|
compiler: msvc-14.1
|
2018-12-01 11:41:13 +00:00
|
|
|
model: 32
|
|
|
|
bjam: 1
|
|
|
|
- variant: test_release
|
2019-02-20 13:46:51 +01:00
|
|
|
compiler: msvc-14.1
|
2018-12-01 11:41:13 +00:00
|
|
|
model: 64
|
|
|
|
python: 1
|
2018-10-11 11:14:15 +02:00
|
|
|
python_dist: 1
|
2018-12-01 11:41:13 +00:00
|
|
|
crypto: openssl
|
|
|
|
bjam: 1
|
|
|
|
- variant: test_debug
|
|
|
|
compiler: gcc
|
|
|
|
model: 32
|
|
|
|
crypto: openssl
|
|
|
|
bjam: 1
|
2015-08-20 00:38:46 +02:00
|
|
|
|
2018-10-11 11:14:15 +02:00
|
|
|
artifacts:
|
|
|
|
- path: bindings/python/dist/*
|
|
|
|
name: python-module
|
|
|
|
|
2015-08-20 00:38:46 +02:00
|
|
|
install:
|
2018-12-01 11:41:13 +00:00
|
|
|
- git submodule update --init --recursive
|
|
|
|
- set ROOT_DIRECTORY=%CD%
|
|
|
|
- cd %ROOT_DIRECTORY%
|
|
|
|
- if not defined compiler ( set compiler="" )
|
|
|
|
- if not defined crypto ( set crypto=built-in )
|
|
|
|
- cd %ROOT_DIRECTORY%
|
2019-02-20 13:46:51 +01:00
|
|
|
- set BOOST_ROOT=c:\Libraries\boost_1_69_0
|
2018-12-01 11:41:13 +00:00
|
|
|
- set BOOST_BUILD_PATH=%BOOST_ROOT%\tools\build
|
|
|
|
- echo %BOOST_ROOT%
|
|
|
|
- echo %BOOST_BUILD_PATH%
|
2019-11-17 13:33:47 +01:00
|
|
|
- set PATH=%PATH%;%BOOST_BUILD_PATH%
|
2020-05-13 00:41:00 +02:00
|
|
|
- ps: '"using msvc : 14.1 ;`nusing gcc ;`nusing python : 3.6 : c:\\Python36-x64 : c:\\Python36-x64\\include : c:\\Python36-x64\\libs ;`n" | Set-Content $env:HOMEDRIVE\$env:HOMEPATH\user-config.jam'
|
2018-12-01 11:41:13 +00:00
|
|
|
- type %HOMEDRIVE%%HOMEPATH%\user-config.jam
|
|
|
|
- cd %ROOT_DIRECTORY%
|
|
|
|
- set PATH=c:\msys64\mingw32\bin;%PATH%
|
|
|
|
- g++ --version
|
2020-05-12 06:04:04 +00:00
|
|
|
- set PATH=c:\Python36-x64;%PATH%
|
|
|
|
- set PYTHON_INTERPRETER=c:\Python36-x64\python.exe
|
2018-12-01 11:41:13 +00:00
|
|
|
- python --version
|
|
|
|
- echo %ROOT_DIRECTORY%
|
2019-11-17 13:33:47 +01:00
|
|
|
- cd %BOOST_BUILD_PATH%
|
|
|
|
- bootstrap.bat >nul
|
2018-12-01 11:41:13 +00:00
|
|
|
- cd %ROOT_DIRECTORY%
|
2015-10-12 00:04:29 -04:00
|
|
|
|
2015-08-20 00:38:46 +02:00
|
|
|
build_script:
|
2018-12-01 11:41:13 +00:00
|
|
|
# examples
|
|
|
|
- cd %ROOT_DIRECTORY%\examples
|
|
|
|
- if defined bjam (
|
2019-12-16 12:37:57 +01:00
|
|
|
b2.exe --hash openssl-version=pre1.1 warnings=all warnings-as-errors=on -j %NUMBER_OF_PROCESSORS% %compiler% address-model=%model% picker-debugging=on invariant-checks=full variant=%variant% link=shared crypto=%crypto% asserts=on export-extra=on
|
2018-12-01 11:41:13 +00:00
|
|
|
)
|
2018-11-10 01:38:20 +01:00
|
|
|
|
2018-12-01 11:41:13 +00:00
|
|
|
# tools
|
|
|
|
- cd %ROOT_DIRECTORY%\tools
|
|
|
|
- if defined bjam (
|
2019-12-16 12:37:57 +01:00
|
|
|
b2.exe --hash openssl-version=pre1.1 warnings=all warnings-as-errors=on -j %NUMBER_OF_PROCESSORS% %compiler% address-model=%model% picker-debugging=on invariant-checks=full variant=%variant% link=shared crypto=%crypto% asserts=on export-extra=on
|
2018-12-01 11:41:13 +00:00
|
|
|
)
|
2015-10-12 00:04:29 -04:00
|
|
|
|
2018-12-01 11:41:13 +00:00
|
|
|
# test
|
|
|
|
- cd %ROOT_DIRECTORY%\test
|
|
|
|
- if defined bjam (
|
2019-12-16 12:37:57 +01:00
|
|
|
b2.exe --hash openssl-version=pre1.1 warnings=all warnings-as-errors=on -j %NUMBER_OF_PROCESSORS% %compiler% address-model=%model% picker-debugging=on invariant-checks=full variant=%variant% link=shared crypto=%crypto% asserts=on export-extra=on testing.execute=off
|
2018-12-01 11:41:13 +00:00
|
|
|
)
|
2016-05-31 17:48:41 -04:00
|
|
|
|
2018-12-01 11:41:13 +00:00
|
|
|
# python binding
|
|
|
|
- cd %ROOT_DIRECTORY%\bindings\python
|
|
|
|
# we use 64 bit python builds
|
2019-02-20 13:46:51 +01:00
|
|
|
# boost.python itself doesn't build warning free, so we can't build
|
|
|
|
# with warnings-as-errors
|
2018-12-01 11:41:13 +00:00
|
|
|
- if defined python (
|
2019-12-16 12:37:57 +01:00
|
|
|
b2.exe --hash openssl-version=pre1.1 warnings=all -j %NUMBER_OF_PROCESSORS% %compiler% address-model=%model% picker-debugging=on invariant-checks=full variant=%variant% link=shared crypto=%crypto% asserts=on export-extra=on libtorrent-link=shared stage_module stage_dependencies
|
2018-12-01 11:41:13 +00:00
|
|
|
)
|
2018-10-11 11:14:15 +02:00
|
|
|
- if defined python_dist (
|
|
|
|
c:\Python35-x64\python.exe setup.py bdist --format=msi
|
|
|
|
)
|
2016-04-24 09:17:58 -04:00
|
|
|
|
2018-12-01 11:41:13 +00:00
|
|
|
# simulations
|
|
|
|
- cd %ROOT_DIRECTORY%\simulation
|
|
|
|
- if defined sim (
|
2019-12-16 12:37:57 +01:00
|
|
|
b2.exe --hash openssl-version=pre1.1 warnings=all warnings-as-errors=on -j %NUMBER_OF_PROCESSORS% %compiler% address-model=%model% debug-iterators=off picker-debugging=on invariant-checks=full test_debug boost-link=default link=static crypto=built-in define=BOOST_ASIO_DISABLE_IOCP asserts=on testing.execute=off
|
2018-12-01 11:41:13 +00:00
|
|
|
)
|
2016-04-24 09:17:58 -04:00
|
|
|
|
2018-12-01 11:41:13 +00:00
|
|
|
# minimal support for cmake build
|
2019-02-20 13:46:51 +01:00
|
|
|
# we need to build the boost libraries we use with C++14
|
|
|
|
# and stage it for cmake to pick up
|
2018-12-01 11:41:13 +00:00
|
|
|
- if defined cmake (
|
2019-02-20 13:46:51 +01:00
|
|
|
cd %BOOST_ROOT% &&
|
|
|
|
bjam cxxstd=14 release --with-python --with-system --layout=system address-model=64 link=shared stage &&
|
|
|
|
cd %ROOT_DIRECTORY% &&
|
|
|
|
mkdir build &&
|
|
|
|
cd build &&
|
2019-06-08 11:12:18 -07:00
|
|
|
cmake -DBOOST_LIBRARYDIR=%BOOST_ROOT%\stage\lib -DCMAKE_CXX_STANDARD=14 -Dbuild_tests=ON -Dbuild_examples=ON -Dbuild_tools=ON -Dpython-bindings=%python% -Dboost-python-module-name="python" -Dskip-python-runtime-test=true -DPython_ADDITIONAL_VERSIONS="2.7" -G "Visual Studio 15 2017" -A x64 .. &&
|
2019-11-21 09:27:17 +01:00
|
|
|
cmake --build . --config Release --parallel %NUMBER_OF_PROCESSORS% -- -verbosity:minimal
|
2018-12-01 11:41:13 +00:00
|
|
|
)
|
2018-02-04 00:04:23 -05:00
|
|
|
|
2016-04-24 09:17:58 -04:00
|
|
|
test_script:
|
2018-12-01 11:41:13 +00:00
|
|
|
- cd %ROOT_DIRECTORY%\test
|
|
|
|
- if defined bjam (
|
2019-12-16 12:37:57 +01:00
|
|
|
appveyor-retry b2.exe -l500 --hash openssl-version=pre1.1 warnings=all warnings-as-errors=on -j %NUMBER_OF_PROCESSORS% %compiler% address-model=%model% picker-debugging=on invariant-checks=full variant=%variant% link=shared crypto=%crypto% asserts=on export-extra=on win-tests
|
2018-12-01 11:41:13 +00:00
|
|
|
)
|
2016-07-25 17:58:00 -04:00
|
|
|
|
2018-12-01 11:41:13 +00:00
|
|
|
- cd %ROOT_DIRECTORY%\bindings\python
|
|
|
|
# we use 64 bit python build
|
|
|
|
- if defined python (
|
|
|
|
copy dependencies\*.* .
|
2020-05-12 06:04:04 +00:00
|
|
|
& c:\Python36-x64\python.exe test.py -b
|
2018-12-01 11:41:13 +00:00
|
|
|
)
|
2016-07-06 13:52:15 -04:00
|
|
|
|
2018-12-01 11:41:13 +00:00
|
|
|
- if defined cmake (
|
|
|
|
appveyor-retry ctest
|
|
|
|
)
|
2018-11-10 01:38:20 +01:00
|
|
|
|
2018-12-01 11:41:13 +00:00
|
|
|
# simulation tests
|
|
|
|
# debug iterators are turned off here because msvc has issues with noexcept
|
|
|
|
# specifiers when debug iterators are enabled. Specifically, constructors that
|
|
|
|
# allocate memory are still marked as noexcept. That results in program
|
|
|
|
# termination
|
|
|
|
# the IOCP backend in asio appears to have an issue where it hangs under
|
|
|
|
# certain unexpected terminations (through exceptions)
|
|
|
|
- cd %ROOT_DIRECTORY%\simulation
|
|
|
|
- if defined sim (
|
2019-12-16 12:37:57 +01:00
|
|
|
b2.exe --hash openssl-version=pre1.1 warnings-as-errors=on -j %NUMBER_OF_PROCESSORS% %compiler% address-model=%model% debug-iterators=off picker-debugging=on invariant-checks=full test_debug boost-link=default link=static crypto=built-in define=BOOST_ASIO_DISABLE_IOCP asserts=on
|
2018-12-01 11:41:13 +00:00
|
|
|
)
|