Skip to content

Add support for modular build structure. #332

Add support for modular build structure.

Add support for modular build structure. #332

Workflow file for this run

name: Coverage
on:
pull_request:
branches:
- master
- develop
paths-ignore:
- 'doc/**'
- 'examples/**'
- '*.md'
env:
B2_OPTS: -q -j2 warnings-as-errors=on
GCC_VERSION: 11
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref }}
cancel-in-progress: true
jobs:
cov:
runs-on: macos-11
steps:
- uses: actions/checkout@v4
- name: Fetch Boost superproject
run: |
cd ..
git clone -b $GITHUB_BASE_REF --depth 5 https://github.com/boostorg/boost.git
cd boost
mv -f $GITHUB_WORKSPACE/* libs/histogram
git submodule update --init --depth 5 tools/build tools/boostdep
python tools/boostdep/depinst/depinst.py --git_args "--depth 5 --jobs 3" histogram
mv -f * $GITHUB_WORKSPACE
- name: Prepare b2
run: |
./bootstrap.sh
./b2 headers
# simulate bundled boost by moving the headers instead of symlinking
rm -rf boost/histogram*
mv -f libs/histogram/include/boost/* boost
- name: Test cxxstd=latest coverage=on
run: |
cd libs/histogram
# don't compile examples in coverage build, coverage must come from tests alone
../../b2 $B2_OPTS toolset=gcc-${GCC_VERSION} cxxstd=latest coverage=on test//all
- name: Process coverage data
run: |
cd libs/histogram
GCOV=gcov-${GCC_VERSION} tools/cov.py
- uses: coverallsapp/[email protected]
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
path-to-lcov: libs/histogram/coverage.info