2020-06-22 22:13:13 +00:00
|
|
|
version: 2
|
2020-01-04 14:21:38 +00:00
|
|
|
|
|
|
|
jobs:
|
2020-03-03 21:28:24 +00:00
|
|
|
|
2020-10-30 13:09:28 +00:00
|
|
|
debug_clang:
|
2020-01-04 14:21:38 +00:00
|
|
|
docker:
|
2021-04-18 12:04:46 +00:00
|
|
|
- image: marzer/cpp_dev:0.1.0
|
2020-11-07 09:48:21 +00:00
|
|
|
resource_class: large
|
2020-01-04 14:21:38 +00:00
|
|
|
steps:
|
|
|
|
- checkout
|
2021-10-23 09:22:41 +00:00
|
|
|
- run:
|
|
|
|
name: Installing dependencies
|
|
|
|
command: |
|
|
|
|
pip3 install --upgrade -r tools/requirements.txt
|
2020-01-04 14:21:38 +00:00
|
|
|
- run:
|
|
|
|
name: Checking toml.hpp
|
|
|
|
command: |
|
2021-04-18 12:04:46 +00:00
|
|
|
cd tools && python3 ci_single_header_check.py
|
2020-01-04 14:21:38 +00:00
|
|
|
- run:
|
2020-03-03 21:28:24 +00:00
|
|
|
name: Pulling submodules
|
2020-01-04 14:21:38 +00:00
|
|
|
command: |
|
2021-05-06 08:03:25 +00:00
|
|
|
git submodule update --init --depth 1 external/Catch2 external/tloptional
|
2020-01-04 14:21:38 +00:00
|
|
|
- run:
|
2020-10-30 13:09:28 +00:00
|
|
|
name: Building and testing with clang
|
2020-01-04 14:21:38 +00:00
|
|
|
command: |
|
2021-11-25 18:20:22 +00:00
|
|
|
CXX_LD=lld CXX=clang++ meson build --buildtype=debug -Dpedantic=true -Dbuild_tests=true -Dbuild_examples=true -Dgenerate_cmake_config=false -Db_lto=false -Dasan_examples=true
|
2020-11-07 09:48:21 +00:00
|
|
|
cd build && meson compile -j 4 && meson test --num-processes 1 --verbose
|
2020-01-12 15:37:02 +00:00
|
|
|
|
2020-10-30 13:09:28 +00:00
|
|
|
release_clang:
|
2020-01-11 21:15:24 +00:00
|
|
|
docker:
|
2021-04-18 12:04:46 +00:00
|
|
|
- image: marzer/cpp_dev:0.1.0
|
2020-11-07 09:48:21 +00:00
|
|
|
resource_class: large
|
2020-01-11 21:15:24 +00:00
|
|
|
steps:
|
|
|
|
- checkout
|
|
|
|
- run:
|
2020-03-03 21:28:24 +00:00
|
|
|
name: Pulling submodules
|
2020-01-11 21:15:24 +00:00
|
|
|
command: |
|
2021-05-06 08:03:25 +00:00
|
|
|
git submodule update --init --depth 1 external/Catch2 external/tloptional
|
2020-01-12 15:37:02 +00:00
|
|
|
- run:
|
2020-10-30 13:09:28 +00:00
|
|
|
name: Building and testing with clang
|
2020-04-06 12:57:49 +00:00
|
|
|
command: |
|
2021-11-25 18:20:22 +00:00
|
|
|
CXX_LD=lld CXX=clang++ meson build --buildtype=release -Dpedantic=true -Dbuild_tests=true -Dbuild_examples=true -Dgenerate_cmake_config=false -Db_lto=false -Dasan_examples=true
|
2020-11-07 09:48:21 +00:00
|
|
|
cd build && meson compile -j 4 && meson test --num-processes 1 --verbose
|
2020-04-06 12:57:49 +00:00
|
|
|
|
2020-10-30 13:09:28 +00:00
|
|
|
debug_gcc:
|
2020-04-06 12:57:49 +00:00
|
|
|
docker:
|
2021-04-18 12:04:46 +00:00
|
|
|
- image: marzer/cpp_dev:0.1.0
|
2020-11-07 09:48:21 +00:00
|
|
|
resource_class: large
|
2020-04-06 12:57:49 +00:00
|
|
|
steps:
|
|
|
|
- checkout
|
|
|
|
- run:
|
|
|
|
name: Pulling submodules
|
2020-01-12 15:37:02 +00:00
|
|
|
command: |
|
2021-05-06 08:03:25 +00:00
|
|
|
git submodule update --init --depth 1 external/Catch2 external/tloptional
|
2020-03-03 21:28:24 +00:00
|
|
|
- run:
|
2020-10-30 13:09:28 +00:00
|
|
|
name: Building and testing with gcc
|
2020-03-03 21:28:24 +00:00
|
|
|
command: |
|
2020-10-30 13:09:28 +00:00
|
|
|
CXX_LD=lld CXX=g++ meson build --buildtype=debug -Dpedantic=true -Dbuild_tests=true -Dbuild_examples=true -Dgenerate_cmake_config=false -Db_lto=false
|
2020-11-07 09:48:21 +00:00
|
|
|
cd build && meson compile -j 4 && meson test --num-processes 1 --verbose
|
2020-03-03 21:28:24 +00:00
|
|
|
|
2020-10-30 13:09:28 +00:00
|
|
|
release_gcc:
|
2020-03-03 21:28:24 +00:00
|
|
|
docker:
|
2021-04-18 12:04:46 +00:00
|
|
|
- image: marzer/cpp_dev:0.1.0
|
2020-11-07 09:48:21 +00:00
|
|
|
resource_class: large
|
2020-03-03 21:28:24 +00:00
|
|
|
steps:
|
|
|
|
- checkout
|
|
|
|
- run:
|
|
|
|
name: Pulling submodules
|
|
|
|
command: |
|
2021-05-06 08:03:25 +00:00
|
|
|
git submodule update --init --depth 1 external/Catch2 external/tloptional
|
2020-01-12 15:37:02 +00:00
|
|
|
- run:
|
2020-10-30 13:09:28 +00:00
|
|
|
name: Building and testing with gcc
|
2020-01-12 15:37:02 +00:00
|
|
|
command: |
|
2020-10-30 13:09:28 +00:00
|
|
|
CXX_LD=lld CXX=g++ meson build --buildtype=release -Dpedantic=true -Dbuild_tests=true -Dbuild_examples=true -Dgenerate_cmake_config=false -Db_lto=false
|
2020-11-07 09:48:21 +00:00
|
|
|
cd build && meson compile -j 4 && meson test --num-processes 1 --verbose
|
2020-04-06 12:57:49 +00:00
|
|
|
|
2020-07-18 12:10:19 +00:00
|
|
|
generate_dox:
|
2020-04-06 12:57:49 +00:00
|
|
|
docker:
|
2021-04-18 12:04:46 +00:00
|
|
|
- image: marzer/cpp_dev:0.1.0
|
2020-11-07 09:48:21 +00:00
|
|
|
resource_class: small
|
2020-04-06 12:57:49 +00:00
|
|
|
steps:
|
|
|
|
- checkout
|
2021-04-18 12:04:46 +00:00
|
|
|
- run:
|
|
|
|
name: Installing dependencies
|
|
|
|
command: |
|
2021-10-23 09:22:41 +00:00
|
|
|
pip3 install --upgrade -r tools/requirements.txt
|
2020-01-12 15:37:02 +00:00
|
|
|
- run:
|
2020-07-18 12:10:19 +00:00
|
|
|
name: Generating documentation
|
2020-01-12 15:37:02 +00:00
|
|
|
command: |
|
2021-05-06 08:03:25 +00:00
|
|
|
cd docs && poxy --verbose
|
2020-07-18 12:10:19 +00:00
|
|
|
- persist_to_workspace:
|
|
|
|
root: docs
|
|
|
|
paths: html
|
2020-01-11 21:15:24 +00:00
|
|
|
|
|
|
|
deploy_dox:
|
|
|
|
docker:
|
2020-06-22 22:13:13 +00:00
|
|
|
- image: node:14.4.0
|
2020-11-07 09:48:21 +00:00
|
|
|
resource_class: small
|
2020-01-11 21:15:24 +00:00
|
|
|
steps:
|
|
|
|
- checkout
|
|
|
|
- attach_workspace:
|
|
|
|
at: docs
|
|
|
|
- run:
|
|
|
|
name: Disable jekyll builds
|
|
|
|
command: |
|
|
|
|
touch docs/html/.nojekyll
|
|
|
|
- run:
|
|
|
|
name: Installing dependencies
|
|
|
|
command: |
|
2020-06-22 22:13:13 +00:00
|
|
|
npm install -g --silent gh-pages@3.0.0
|
2020-01-11 21:15:24 +00:00
|
|
|
git config user.email "ci-build@tomlplusplus.com"
|
|
|
|
git config user.name "ci-build"
|
|
|
|
- add_ssh_keys:
|
|
|
|
fingerprints:
|
|
|
|
- "a6:63:c0:a5:89:cf:2d:03:e7:c9:88:5d:c0:8c:39:e0"
|
|
|
|
- run:
|
|
|
|
name: Deploy docs to gh-pages branch
|
|
|
|
command: gh-pages --dotfiles --message "[skip ci] Updates" --dist docs/html
|
|
|
|
|
2020-01-04 14:21:38 +00:00
|
|
|
workflows:
|
|
|
|
version: 2
|
|
|
|
build:
|
|
|
|
jobs:
|
2020-10-30 13:09:28 +00:00
|
|
|
- debug_clang
|
|
|
|
- release_clang
|
|
|
|
- debug_gcc
|
|
|
|
- release_gcc
|
2020-07-18 12:10:19 +00:00
|
|
|
- generate_dox:
|
2020-03-03 21:28:24 +00:00
|
|
|
requires:
|
2020-10-30 13:09:28 +00:00
|
|
|
- debug_clang
|
|
|
|
- release_clang
|
|
|
|
- debug_gcc
|
|
|
|
- release_gcc
|
2020-07-18 12:10:19 +00:00
|
|
|
filters:
|
|
|
|
branches:
|
|
|
|
only: master
|
|
|
|
- deploy_dox:
|
|
|
|
requires:
|
|
|
|
- generate_dox
|