diff --git a/.drone.star b/.drone.star index e8a4c3d..d66188d 100644 --- a/.drone.star +++ b/.drone.star @@ -3,25 +3,24 @@ # Distributed under the Boost Software License, Version 1.0. # https://www.boost.org/LICENSE_1_0.txt -globalenv={ 'B2_CI_VERSION': '1', 'B2_VARIANT': 'debug,release' } +globalenv={ 'UBSAN_OPTIONS': 'print_stacktrace=1' } linuxglobalimage="cppalliance/droneubuntu1604:1" windowsglobalimage="cppalliance/dronevs2019" def main(ctx): return [ - linux_cxx("GCC 32/64 bit", "g++", packages="g++-multilib", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++', 'CXXSTD': '03,11,14', 'ADDRMD': '32,64', 'DRONE_JOB_UUID': 'b6589fc6ab'}, globalenv=globalenv), - linux_cxx("GCC 4.4", "g++", packages="g++-4.4", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-4.4', 'CXXSTD': '98,0x', 'DRONE_JOB_UUID': '1b64538924'}, globalenv=globalenv), - linux_cxx("GCC 4.6", "g++", packages="g++-4.6", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-4.6', 'CXXSTD': '03,0x', 'DRONE_JOB_UUID': 'ac3478d69a'}, globalenv=globalenv), - linux_cxx("GCC 10 UBSAN", "g++-10", packages="g++-10", buildtype="boost", buildscript="drone", image="cppalliance/droneubuntu1804:1", environment={'UBSAN': '1', 'TOOLSET': 'gcc', 'COMPILER': 'g++-10', 'CXXSTD': '03,11,14,17,20', 'UBSAN_OPTIONS': 'print_stacktrace=1', 'LINKFLAGS': '-fuse-ld=gold', 'DRONE_JOB_UUID': 'c1dfd96eea'}, globalenv=globalenv), - linux_cxx("Clang 3.3", "/usr/bin/clang++", packages="clang-3.3", buildtype="boost", buildscript="drone", image="cppalliance/droneubuntu1404:1", environment={'TOOLSET': 'clang', 'COMPILER': '/usr/bin/clang++', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': '902ba3cda1'}, globalenv=globalenv), - linux_cxx("Clang 3.4", "/usr/bin/clang++", packages="clang-3.4", buildtype="boost", buildscript="drone", image="cppalliance/droneubuntu1404:1", environment={'TOOLSET': 'clang', 'COMPILER': '/usr/bin/clang++', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': 'fe5dbbcea5'}, globalenv=globalenv), - linux_cxx("Clang 11 UBSAN", "clang++-11", packages="clang-11", llvm_os="xenial", llvm_ver="11", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'UBSAN': '1', 'TOOLSET': 'clang', 'COMPILER': 'clang++-11', 'CXXSTD': '03,11,14,17,20', 'UBSAN_OPTIONS': 'print_stacktrace=1', 'DRONE_JOB_UUID': '0ade7c2cf9'}, globalenv=globalenv), - linux_cxx("Clang libc++ UBSAN", "clang++-libc++", packages="libc++-dev", buildtype="boost", buildscript="drone", image="cppalliance/droneubuntu1804:1", environment={'UBSAN': '1', 'TOOLSET': 'clang', 'COMPILER': 'clang++-libc++', 'CXXSTD': '03,11,14,17,2a', 'UBSAN_OPTIONS': 'print_stacktrace=1', 'DRONE_JOB_UUID': 'b1d5781111'}, globalenv=globalenv), - osx_cxx("Clang UBSAN", "clang++", packages="", buildtype="boost", buildscript="drone", xcode_version="12.2", environment={'UBSAN': '1', 'TOOLSET': 'clang', 'COMPILER': 'clang++', 'CXXSTD': '03,11,14,1z', 'UBSAN_OPTIONS': 'print_stacktrace=1', 'DRONE_JOB_UUID': '0716d9708d'}, globalenv=globalenv), - windows_cxx("msvc-14.0", "", image="cppalliance/dronevs2015", buildtype="boost", buildscript="drone", environment={"B2_TOOLSET": "msvc-14.0", "B2_CXXSTD": "14,latest"}, globalenv=globalenv), - windows_cxx("msvc-14.1", "", image="cppalliance/dronevs2017", buildtype="boost", buildscript="drone", environment={"B2_TOOLSET": "msvc-14.1", "B2_CXXSTD": "14,17,latest"}, globalenv=globalenv), - windows_cxx("msvc-14.2", "", image="cppalliance/dronevs2019", buildtype="boost", buildscript="drone", environment={"B2_TOOLSET": "msvc-14.2", "B2_CXXSTD": "14,17,20,latest"}, globalenv=globalenv), - windows_cxx("msvc-14.3", "", image="cppalliance/dronevs2022:1", buildtype="boost", buildscript="drone", environment={"B2_TOOLSET": "msvc-14.3", "B2_CXXSTD": "14,17,20,latest"}, globalenv=globalenv) + linux_cxx("GCC 32/64 bit", "g++", packages="g++-multilib", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++', 'CXXSTD': '03,11,14', 'ADDRMD': '32,64'}, globalenv=globalenv), + linux_cxx("GCC 4.4", "g++", packages="g++-4.4", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-4.4', 'CXXSTD': '98,0x'}, globalenv=globalenv), + linux_cxx("GCC 4.6", "g++", packages="g++-4.6", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-4.6', 'CXXSTD': '03,0x'}, globalenv=globalenv), + linux_cxx("GCC 10 UBSAN", "g++-10", packages="g++-10", buildscript="drone", image="cppalliance/droneubuntu1804:1", environment={'UBSAN': '1', 'TOOLSET': 'gcc', 'COMPILER': 'g++-10', 'CXXSTD': '03,11,14,17,20', 'LINKFLAGS': '-fuse-ld=gold'}, globalenv=globalenv), + linux_cxx("Clang 3.3", "/usr/bin/clang++", packages="clang-3.3", buildscript="drone", image="cppalliance/droneubuntu1404:1", environment={'TOOLSET': 'clang', 'COMPILER': '/usr/bin/clang++', 'CXXSTD': '03,11'}, globalenv=globalenv), + linux_cxx("Clang 3.4", "/usr/bin/clang++", packages="clang-3.4", buildscript="drone", image="cppalliance/droneubuntu1404:1", environment={'TOOLSET': 'clang', 'COMPILER': '/usr/bin/clang++', 'CXXSTD': '03,11'}, globalenv=globalenv), + linux_cxx("Clang 11 UBSAN", "clang++-11", packages="clang-11", llvm_os="xenial", llvm_ver="11", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'UBSAN': '1', 'TOOLSET': 'clang', 'COMPILER': 'clang++-11', 'CXXSTD': '03,11,14,17,20'}, globalenv=globalenv), + osx_cxx("Clang UBSAN", "clang++", packages="", buildtype="boost", buildscript="drone", xcode_version="12.2", environment={'UBSAN': '1', 'TOOLSET': 'clang', 'COMPILER': 'clang++', 'CXXSTD': '03,11,14,1z'}, globalenv=globalenv), + windows_cxx("msvc-14.0", "", image="cppalliance/dronevs2015", buildscript="drone", environment={"TOOLSET": "msvc-14.0", "CXXSTD": "14,latest"}, globalenv=globalenv), + windows_cxx("msvc-14.1", "", image="cppalliance/dronevs2017", buildscript="drone", environment={"TOOLSET": "msvc-14.1", "CXXSTD": "14,17,latest"}, globalenv=globalenv), + windows_cxx("msvc-14.2", "", image="cppalliance/dronevs2019", buildscript="drone", environment={"TOOLSET": "msvc-14.2", "CXXSTD": "14,17,20,latest"}, globalenv=globalenv), + windows_cxx("msvc-14.3", "", image="cppalliance/dronevs2022:1", buildscript="drone", environment={"TOOLSET": "msvc-14.3", "CXXSTD": "14,17,20,latest"}, globalenv=globalenv) ] # from https://github.com/boostorg/boost-ci diff --git a/.drone/drone.bat b/.drone/drone.bat index 6f67a6c..150b35f 100644 --- a/.drone/drone.bat +++ b/.drone/drone.bat @@ -1,5 +1,4 @@ @ECHO ON -setlocal enabledelayedexpansion set TRAVIS_OS_NAME=windows @@ -9,24 +8,19 @@ IF "!DRONE_BRANCH!" == "" ( SET TRAVIS_BRANCH=!DRONE_BRANCH! ) -echo '==================================> INSTALL' -REM there seems to be some problem with b2 bootstrap on Windows -REM when CXX env variable is set -SET "CXX=" - -git clone https://github.com/boostorg/boost-ci.git boost-ci-cloned --depth 1 -cp -prf boost-ci-cloned/ci . -rm -rf boost-ci-cloned -REM source ci/travis/install.sh -REM The contents of install.sh below: - for /F %%i in ("%DRONE_REPO%") do @set SELF=%%~nxi -SET BOOST_CI_TARGET_BRANCH=!TRAVIS_BRANCH! -SET BOOST_CI_SRC_FOLDER=%cd% -call ci\common_install.bat +set BOOST_BRANCH=develop +if "%TRAVIS_BRANCH%" == "master" set BOOST_BRANCH=master +cd .. +git clone -b %BOOST_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root +cd boost-root +git submodule update --init tools/boostdep +xcopy /s /e /q %APPVEYOR_BUILD_FOLDER% libs\%SELF%\ +python tools/boostdep/depinst/depinst.py %SELF% +cmd /c bootstrap +b2 -d0 headers -echo '==================================> COMPILE' - -set B2_TARGETS=libs/!SELF!/test libs/!SELF!/example -call !BOOST_ROOT!\libs\!SELF!\ci\build.bat +if not "%CXXSTD%" == "" set CXXSTD=cxxstd=%CXXSTD% +if not "%ADDRMD%" == "" set ADDRMD=address-model=%ADDRMD% +b2 -j3 libs/%SELF%/test toolset=%TOOLSET% %CXXSTD% %ADDRMD% variant=debug,release embed-manifest-via=linker diff --git a/.drone/drone.sh b/.drone/drone.sh index 062cf12..0e4a50f 100755 --- a/.drone/drone.sh +++ b/.drone/drone.sh @@ -23,7 +23,7 @@ git submodule update --init tools/boostdep cp -r $TRAVIS_BUILD_DIR/* libs/system python tools/boostdep/depinst/depinst.py system ./bootstrap.sh -./b2 headers +./b2 -d0 headers echo '==================================> SCRIPT'