From 136f4c929077be1a9f9d9f824bb95c56293500f3 Mon Sep 17 00:00:00 2001 From: sdarwin Date: Wed, 30 Dec 2020 14:02:40 +0000 Subject: [PATCH] drone --- .drone.star | 30 ++++++++++++++++++++++++++++ .drone/after-success.sh | 3 +++ .drone/before-install.sh | 3 +++ .drone/before-script.sh | 3 +++ .drone/boost.sh | 43 ++++++++++++++++++++++++++++++++++++++++ 5 files changed, 82 insertions(+) create mode 100644 .drone.star create mode 100755 .drone/after-success.sh create mode 100755 .drone/before-install.sh create mode 100755 .drone/before-script.sh create mode 100755 .drone/boost.sh diff --git a/.drone.star b/.drone.star new file mode 100644 index 0000000..db3f161 --- /dev/null +++ b/.drone.star @@ -0,0 +1,30 @@ +# Use, modification, and distribution are +# subject to the Boost Software License, Version 1.0. (See accompanying +# file LICENSE.txt) +# +# Copyright Rene Rivera 2020. + +# For Drone CI we use the Starlark scripting language to reduce duplication. +# As the yaml syntax for Drone CI is rather limited. +# +# +globalenv={} +linuxglobalimage="cppalliance/droneubuntu1604:1" +windowsglobalimage="cppalliance/dronevs2019" + +def main(ctx): + return [ + linux_cxx("TOOLSET=gcc CXXSTD=03,11 Job 0", "g++", packages="", buildtype="boost", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'CXXSTD': '03,11', 'TRAVIS_COMPILER': 'g++', 'DRONE_JOB_UUID': 'b6589fc6ab'}, globalenv=globalenv), + linux_cxx("TOOLSET=gcc CXXSTD=98,0x Job 1", "g++", packages="g++-4.4", buildtype="boost", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'CXXSTD': '98,0x', 'TRAVIS_COMPILER': 'g++-4.4', 'DRONE_JOB_UUID': '356a192b79'}, globalenv=globalenv), + linux_cxx("TOOLSET=gcc CXXSTD=03,0x Job 2", "g++", packages="g++-4.6", buildtype="boost", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'CXXSTD': '03,0x', 'TRAVIS_COMPILER': 'g++-4.6', 'DRONE_JOB_UUID': 'da4b9237ba'}, globalenv=globalenv), + linux_cxx("TOOLSET=gcc CXXSTD=03,11,14,1z Job 3", "g++", packages="g++-5", buildtype="boost", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'CXXSTD': '03,11,14,1z', 'TRAVIS_COMPILER': 'g++-5', 'DRONE_JOB_UUID': '77de68daec'}, globalenv=globalenv), + linux_cxx("TOOLSET=gcc CXXSTD=03,11,14,1z Job 4", "g++", packages="g++-6", buildtype="boost", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'CXXSTD': '03,11,14,1z', 'TRAVIS_COMPILER': 'g++-6', 'DRONE_JOB_UUID': '1b64538924'}, globalenv=globalenv), + linux_cxx("TOOLSET=gcc CXXSTD=03,11,14,17 Job 5", "g++", packages="g++-7", buildtype="boost", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'CXXSTD': '03,11,14,17', 'TRAVIS_COMPILER': 'g++-7', 'DRONE_JOB_UUID': 'ac3478d69a'}, globalenv=globalenv), + linux_cxx("TOOLSET=gcc CXXSTD=03,11,14,17 Job 6", "g++", packages="g++-8", buildtype="boost", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'CXXSTD': '03,11,14,17', 'TRAVIS_COMPILER': 'g++-8', 'DRONE_JOB_UUID': 'c1dfd96eea'}, globalenv=globalenv), + linux_cxx("TOOLSET=clang CXXSTD=03,11,14,1z Job 7", "clang++", packages="", buildtype="boost", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'CXXSTD': '03,11,14,1z', 'TRAVIS_COMPILER': 'clang++', 'DRONE_JOB_UUID': '902ba3cda1'}, globalenv=globalenv), + linux_cxx("TOOLSET=clang CXXSTD=03,11,14 Job 8", "clang++", packages="libc++-dev", buildtype="boost", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'CXXSTD': '03,11,14', 'TRAVIS_COMPILER': 'clang++-libc++', 'DRONE_JOB_UUID': 'fe5dbbcea5'}, globalenv=globalenv), + osx_cxx("TOOLSET=clang CXXSTD=03,11,14,1z Job 9", "clang++", packages="", buildtype="boost", environment={'TOOLSET': 'clang', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_OS_NAME': 'osx', 'TRAVIS_COMPILER': 'clang++', 'DRONE_JOB_UUID': '0ade7c2cf9'}, globalenv=globalenv), + ] + +# from https://github.com/boostorg/boost-ci +load("@boost_ci//ci/drone/:functions.star", "linux_cxx","windows_cxx","osx_cxx","freebsd_cxx") diff --git a/.drone/after-success.sh b/.drone/after-success.sh new file mode 100755 index 0000000..7a693aa --- /dev/null +++ b/.drone/after-success.sh @@ -0,0 +1,3 @@ +#!/bin/bash + + diff --git a/.drone/before-install.sh b/.drone/before-install.sh new file mode 100755 index 0000000..7a693aa --- /dev/null +++ b/.drone/before-install.sh @@ -0,0 +1,3 @@ +#!/bin/bash + + diff --git a/.drone/before-script.sh b/.drone/before-script.sh new file mode 100755 index 0000000..7a693aa --- /dev/null +++ b/.drone/before-script.sh @@ -0,0 +1,3 @@ +#!/bin/bash + + diff --git a/.drone/boost.sh b/.drone/boost.sh new file mode 100755 index 0000000..f5931c6 --- /dev/null +++ b/.drone/boost.sh @@ -0,0 +1,43 @@ +#!/bin/bash + +set -ex +export TRAVIS_BUILD_DIR=$(pwd) +export TRAVIS_BRANCH=$DRONE_BRANCH +export TRAVIS_OS_NAME=${DRONE_JOB_OS_NAME:-linux} +export VCS_COMMIT_ID=$DRONE_COMMIT +export GIT_COMMIT=$DRONE_COMMIT +export DRONE_CURRENT_BUILD_DIR=$(pwd) +export PATH=~/.local/bin:/usr/local/bin:$PATH + +echo '==================================> BEFORE_INSTALL' + +. .drone/before-install.sh + +echo '==================================> INSTALL' + +BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true +cd .. +git clone -b $BOOST_BRANCH https://github.com/boostorg/boost.git boost-root +cd boost-root +git submodule update --init tools/boost_install +git submodule update --init libs/headers +git submodule update --init tools/build +git submodule update --init libs/config +git submodule update --init tools/boostdep +cp -r $TRAVIS_BUILD_DIR/* libs/heap +python tools/boostdep/depinst/depinst.py heap +./bootstrap.sh +./b2 headers + +echo '==================================> BEFORE_SCRIPT' + +. $DRONE_CURRENT_BUILD_DIR/.drone/before-script.sh + +echo '==================================> SCRIPT' + +echo "using $TOOLSET : : $TRAVIS_COMPILER ;" > ~/user-config.jam +./b2 -j3 libs/heap/test toolset=$TOOLSET cxxstd=$CXXSTD + +echo '==================================> AFTER_SUCCESS' + +. $DRONE_CURRENT_BUILD_DIR/.drone/after-success.sh