Skip to content

Commit

Permalink
Merge pull request #217 from Flamefire/drone-ci
Browse files Browse the repository at this point in the history
Add Drone CI
  • Loading branch information
Flamefire authored Feb 8, 2024
2 parents 097696d + 116b589 commit 550fe7a
Show file tree
Hide file tree
Showing 2 changed files with 71 additions and 4 deletions.
67 changes: 67 additions & 0 deletions .drone.star
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# Copyright 2020 Rene Rivera
# Copyright 2022-2023 Alexander Grund
#
# Distributed under the Boost Software License, Version 1.0.
# https://www.boost.org/LICENSE_1_0.txt

# For Drone CI we use the Starlark scripting language to reduce duplication.
# As the yaml syntax for Drone CI is rather limited.

# Base environment for all jobs
globalenv={'B2_CI_VERSION': '1', 'B2_VARIANT': 'release'}

# Wrapper function to apply the globalenv to all jobs
def job(
# job specific environment options
env={},
**kwargs):
real_env = dict(globalenv)
real_env.update(env)
return job_impl(env=real_env, **kwargs)

def main(ctx):
return [
job(compiler='clang-13', cxxstd='11,14,17,20,2b', os='ubuntu-22.04', install='libicu-dev'),
job(compiler='clang-14', cxxstd='11,14,17,20,2b', os='ubuntu-22.04', install='libicu-dev'),
job(compiler='clang-15', cxxstd='11,14,17,20,2b', os='ubuntu-22.04', install='libicu-dev', add_llvm=True),

job(compiler='gcc-11', cxxstd='11,14,17,20,2b', os='ubuntu-22.04', install='libicu-dev'),
job(compiler='gcc-12', cxxstd='11,14,17,20,2b', os='ubuntu-22.04', install='libicu-dev'),

# Sanitizers
job(name='ASAN', asan=True,
compiler='gcc-12', cxxstd='11,14,17,20', os='ubuntu-22.04', install='libicu-dev'),
job(name='UBSAN', ubsan=True,
compiler='gcc-12', cxxstd='11,14,17,20', os='ubuntu-22.04', install='libicu-dev'),
job(name='Clang 14 w/ sanitizers', asan=True, ubsan=True,
compiler='clang-14', cxxstd='11,14,17,20', os='ubuntu-22.04', install='libicu-dev'),

# libc++
job(compiler='clang-15', cxxstd='11,14,17,20', os='ubuntu-22.04', stdlib='libc++', install='libicu-dev libc++-15-dev libc++abi-15-dev', add_llvm=True),

# FreeBSD
job(compiler='clang-10', cxxstd='11,14,17,20', os='freebsd-13.1'),
job(compiler='clang-15', cxxstd='11,14,17,20', os='freebsd-13.1'),
# ICU is linked against libc++, so either don't use ICU or use libc++. The latter doesn't seem to work well (segfaults)
job(compiler='gcc-11', cxxstd='11,14,17,20', os='freebsd-13.1', testflags='boost.locale.icu=off', linkflags='-Wl,-rpath=/usr/local/lib/gcc11'),
# OSX
job(compiler='clang', cxxstd='11,14,17,2a', os='osx-xcode-10.1'),
job(compiler='clang', cxxstd='11,14,17,2a', os='osx-xcode-10.3'),
job(compiler='clang', cxxstd='11,14,17,2a', os='osx-xcode-12'),
job(compiler='clang', cxxstd='11,14,17,20', os='osx-xcode-12.5.1'),
job(compiler='clang', cxxstd='11,14,17,20', os='osx-xcode-13.4.1'),
# Don't work yet -> #206 ?
# job(compiler='clang', cxxstd='11,14,17,20,2b', os='osx-xcode-14.3.1'),
# job(compiler='clang', cxxstd='11,14,17,20,2b', os='osx-xcode-15.0.1'),
# ARM64
job(compiler='clang-12', cxxstd='11,14,17,20', os='ubuntu-20.04', arch='arm64', add_llvm=True),
job(compiler='gcc-11', cxxstd='11,14,17,20', os='ubuntu-20.04', arch='arm64'),
# S390x
job(compiler='clang-12', cxxstd='11,14,17,20', os='ubuntu-20.04', arch='s390x', add_llvm=True),
job(compiler='gcc-11', cxxstd='11,14,17,20', os='ubuntu-20.04', arch='s390x'),
# Windows
job(compiler='msvc-14.3', cxxstd='14,17,20,latest', os='windows'),
]

# from https://github.com/boostorg/boost-ci
load("@boost_ci//ci/drone/:functions.star", "linux_cxx", "windows_cxx", "osx_cxx", "freebsd_cxx", "job_impl")
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,10 @@ Distributed under the [Boost Software License, Version 1.0](https://www.boost.or

### Build Status

Branch | GH Actions | Appveyor | codecov.io | Deps | Docs | Tests |
:-------------: | ---------- | -------- | ---------- | ---- | ---- | ----- |
[`master`](https://github.com/boostorg/locale/tree/master) | [![CI](https://github.com/boostorg/locale/actions/workflows/ci.yml/badge.svg?branch=master)](https://github.com/boostorg/locale/actions/workflows/ci.yml) | [![Build status](https://ci.appveyor.com/api/projects/status/github/boostorg/locale?branch=master&svg=true)](https://ci.appveyor.com/project/Flamefire/locale/branch/master) | [![codecov](https://codecov.io/gh/boostorg/locale/branch/master/graph/badge.svg)](https://codecov.io/gh/boostorg/locale/branch/master) | [![Deps](https://img.shields.io/badge/deps-master-brightgreen.svg)](https://pdimov.github.io/boostdep-report/master/locale.html) | [![Documentation](https://img.shields.io/badge/docs-master-brightgreen.svg)](https://www.boost.org/doc/libs/master/libs/locale/doc/html/index.html) | [![Enter the Matrix](https://img.shields.io/badge/matrix-master-brightgreen.svg)](http://www.boost.org/development/tests/master/developer/locale.html)
[`develop`](https://github.com/boostorg/locale/tree/develop) | [![CI](https://github.com/boostorg/locale/actions/workflows/ci.yml/badge.svg?branch=develop)](https://github.com/boostorg/locale/actions/workflows/ci.yml) | [![Build status](https://ci.appveyor.com/api/projects/status/github/boostorg/locale?branch=develop&svg=true)](https://ci.appveyor.com/project/Flamefire/locale/branch/develop) | [![codecov](https://codecov.io/gh/boostorg/locale/branch/develop/graph/badge.svg)](https://codecov.io/gh/boostorg/locale/branch/develop) | [![Deps](https://img.shields.io/badge/deps-develop-brightgreen.svg)](https://pdimov.github.io/boostdep-report/develop/locale.html) | [![Documentation](https://img.shields.io/badge/docs-develop-brightgreen.svg)](https://www.boost.org/doc/libs/develop/libs/locale/doc/html/index.html) | [![Enter the Matrix](https://img.shields.io/badge/matrix-develop-brightgreen.svg)](http://www.boost.org/development/tests/develop/developer/locale.html)
Branch | GH Actions | Appveyor | Drone | codecov.io | Deps | Docs | Tests |
:-------------: | ---------- | -------- | ----- | ---------- | ---- | ---- | ----- |
[`master`](https://github.com/boostorg/locale/tree/master) | [![CI](https://github.com/boostorg/locale/actions/workflows/ci.yml/badge.svg?branch=master)](https://github.com/boostorg/locale/actions/workflows/ci.yml) | [![Build status](https://ci.appveyor.com/api/projects/status/github/boostorg/locale?branch=master&svg=true)](https://ci.appveyor.com/project/Flamefire/locale/branch/master) | [![Build Status](https://drone.cpp.al/api/badges/boostorg/locale/status.svg?ref=refs/heads/master)](https://drone.cpp.al/boostorg/locale) | [![codecov](https://codecov.io/gh/boostorg/locale/branch/master/graph/badge.svg)](https://codecov.io/gh/boostorg/locale/branch/master) | [![Deps](https://img.shields.io/badge/deps-master-brightgreen.svg)](https://pdimov.github.io/boostdep-report/master/locale.html) | [![Documentation](https://img.shields.io/badge/docs-master-brightgreen.svg)](https://www.boost.org/doc/libs/master/libs/locale/doc/html/index.html) | [![Enter the Matrix](https://img.shields.io/badge/matrix-master-brightgreen.svg)](http://www.boost.org/development/tests/master/developer/locale.html)
[`develop`](https://github.com/boostorg/locale/tree/develop) | [![CI](https://github.com/boostorg/locale/actions/workflows/ci.yml/badge.svg?branch=develop)](https://github.com/boostorg/locale/actions/workflows/ci.yml) | [![Build status](https://ci.appveyor.com/api/projects/status/github/boostorg/locale?branch=develop&svg=true)](https://ci.appveyor.com/project/Flamefire/locale/branch/develop) | [![Build Status](https://drone.cpp.al/api/badges/boostorg/locale/status.svg?ref=refs/heads/develop)](https://drone.cpp.al/boostorg/locale) | [![codecov](https://codecov.io/gh/boostorg/locale/branch/develop/graph/badge.svg)](https://codecov.io/gh/boostorg/locale/branch/develop) | [![Deps](https://img.shields.io/badge/deps-develop-brightgreen.svg)](https://pdimov.github.io/boostdep-report/develop/locale.html) | [![Documentation](https://img.shields.io/badge/docs-develop-brightgreen.svg)](https://www.boost.org/doc/libs/develop/libs/locale/doc/html/index.html) | [![Enter the Matrix](https://img.shields.io/badge/matrix-develop-brightgreen.svg)](http://www.boost.org/development/tests/develop/developer/locale.html)

### Directories

Expand Down

0 comments on commit 550fe7a

Please sign in to comment.