mirror of
https://github.com/boostorg/regex.git
synced 2026-06-11 19:51:14 +02:00
Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 4c214cd1d0 | |||
| 84a8576609 | |||
| b9cbbcfa75 | |||
| 62f0e29315 | |||
| a00971274c | |||
| 47d418e3f0 | |||
| 76870bae43 | |||
| 91bd2e8473 | |||
| 5a49d4f15a | |||
| ed6ebbd5a5 |
+116
-50
@@ -27,14 +27,9 @@ jobs:
|
||||
compiler: [ g++-11, g++-12, g++-13 ]
|
||||
standard: [ c++11, c++14, c++17, c++2a ]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[windows];[Windows];[WINDOWS];[apple];[Apple];[APPLE]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Set TOOLSET
|
||||
run: echo ${{ matrix.compiler }} | awk '/^g/ { print "TOOLSET=gcc" } /^clang/ { print "TOOLSET=clang" }' >> $GITHUB_ENV
|
||||
- name: Add repository
|
||||
@@ -75,14 +70,9 @@ jobs:
|
||||
compiler: [ g++ ]
|
||||
standard: [ c++11, c++14, c++17, c++2a ]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[windows];[Windows];[WINDOWS];[apple];[Apple];[APPLE]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Set TOOLSET
|
||||
run: echo ${{ matrix.compiler }} | awk '/^g/ { print "TOOLSET=gcc" } /^clang/ { print "TOOLSET=clang" }' >> $GITHUB_ENV
|
||||
- name: Add repository
|
||||
@@ -100,14 +90,9 @@ jobs:
|
||||
compiler: [ clang++-15 ]
|
||||
standard: [ c++11, c++14, c++17 ]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[windows];[Windows];[WINDOWS];[apple];[Apple];[APPLE]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Set TOOLSET
|
||||
run: echo ${{ matrix.compiler }} | awk '/^g/ { print "TOOLSET=gcc" } /^clang/ { print "TOOLSET=clang" }' >> $GITHUB_ENV
|
||||
- name: Add repository
|
||||
@@ -143,14 +128,9 @@ jobs:
|
||||
ubuntu-jammy-clang-18-modules:
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[windows];[Windows];[WINDOWS];[apple];[Apple];[APPLE]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Grab install script
|
||||
run: wget https://apt.llvm.org/llvm.sh && chmod u+x llvm.sh
|
||||
- name: Install clang 18 packages
|
||||
@@ -183,14 +163,9 @@ jobs:
|
||||
compiler: [ clang++-16, clang++-17, clang++-18 ]
|
||||
standard: [ c++11, c++14, c++17, c++20 ]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[windows];[Windows];[WINDOWS];[apple];[Apple];[APPLE]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Set TOOLSET
|
||||
run: echo ${{ matrix.compiler }} | awk '/^g/ { print "TOOLSET=gcc" } /^clang/ { print "TOOLSET=clang" }' >> $GITHUB_ENV
|
||||
- name: Add repository
|
||||
@@ -231,14 +206,9 @@ jobs:
|
||||
toolset: [ clang ]
|
||||
standard: [ 11, 14, 17, 2a ]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[windows];[Windows];[WINDOWS];[linux];[Linux];[LINUX]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update tools/boostdep
|
||||
@@ -278,14 +248,9 @@ jobs:
|
||||
toolset: [ gcc ]
|
||||
standard: [ 11, 14, 17, 2a ]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[apple];[Apple];[APPLE];[linux];[Linux];[LINUX]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update tools/boostdep
|
||||
@@ -325,14 +290,9 @@ jobs:
|
||||
toolset: [ msvc-14.3 ]
|
||||
standard: [ 14, 17, 20, latest ]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[apple];[Apple];[APPLE];[linux];[Linux];[LINUX]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- uses: TheMrMilchmann/setup-msvc-dev@v3
|
||||
with:
|
||||
arch: x64
|
||||
@@ -370,7 +330,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- name: Checkout main boost
|
||||
@@ -402,7 +362,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- name: Install packages
|
||||
@@ -442,3 +402,109 @@ jobs:
|
||||
cmake -DBOOST_REGEX_STANDALONE=on ..
|
||||
cmake --build .
|
||||
cmake --build . --target check
|
||||
|
||||
posix-cmake-use:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- os: ubuntu-latest
|
||||
- os: macos-latest
|
||||
|
||||
runs-on: ${{matrix.os}}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Install packages
|
||||
if: matrix.install
|
||||
run: sudo apt-get -y install ${{matrix.install}}
|
||||
|
||||
- name: Setup Boost
|
||||
run: |
|
||||
echo GITHUB_REPOSITORY: $GITHUB_REPOSITORY
|
||||
LIBRARY=${GITHUB_REPOSITORY#*/}
|
||||
echo LIBRARY: $LIBRARY
|
||||
echo "LIBRARY=$LIBRARY" >> $GITHUB_ENV
|
||||
echo GITHUB_BASE_REF: $GITHUB_BASE_REF
|
||||
echo GITHUB_REF: $GITHUB_REF
|
||||
REF=${GITHUB_BASE_REF:-$GITHUB_REF}
|
||||
REF=${REF#refs/heads/}
|
||||
echo REF: $REF
|
||||
BOOST_BRANCH=develop && [ "$REF" == "master" ] && BOOST_BRANCH=master || true
|
||||
echo BOOST_BRANCH: $BOOST_BRANCH
|
||||
cd ..
|
||||
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
|
||||
cd boost-root
|
||||
cp -r $GITHUB_WORKSPACE/* libs/$LIBRARY
|
||||
git submodule update --init tools/boostdep
|
||||
python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" $LIBRARY
|
||||
./bootstrap.sh
|
||||
./b2 -d0 headers
|
||||
|
||||
- name: Install Boost --with-library
|
||||
run: |
|
||||
cd ../boost-root
|
||||
./b2 -j3 --with-$LIBRARY --prefix=$HOME/.local install
|
||||
|
||||
- name: Use the installed library
|
||||
run: |
|
||||
cd ../boost-root/libs/$LIBRARY/test/cmake_install_test && mkdir __build__ && cd __build__
|
||||
cmake -DCMAKE_INSTALL_PREFIX=~/.local ..
|
||||
cmake --build .
|
||||
ctest --output-on-failure --no-tests=error
|
||||
|
||||
windows-cmake-use:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- os: windows-latest
|
||||
|
||||
runs-on: ${{matrix.os}}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Setup Boost
|
||||
shell: cmd
|
||||
run: |
|
||||
echo GITHUB_REPOSITORY: %GITHUB_REPOSITORY%
|
||||
for /f %%i in ("%GITHUB_REPOSITORY%") do set LIBRARY=%%~nxi
|
||||
echo LIBRARY: %LIBRARY%
|
||||
echo LIBRARY=%LIBRARY%>>%GITHUB_ENV%
|
||||
echo GITHUB_BASE_REF: %GITHUB_BASE_REF%
|
||||
echo GITHUB_REF: %GITHUB_REF%
|
||||
if "%GITHUB_BASE_REF%" == "" set GITHUB_BASE_REF=%GITHUB_REF%
|
||||
set BOOST_BRANCH=develop
|
||||
for /f %%i in ("%GITHUB_BASE_REF%") do if "%%~nxi" == "master" set BOOST_BRANCH=master
|
||||
echo BOOST_BRANCH: %BOOST_BRANCH%
|
||||
cd ..
|
||||
git clone -b %BOOST_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root
|
||||
cd boost-root
|
||||
xcopy /s /e /q %GITHUB_WORKSPACE% libs\%LIBRARY%\
|
||||
git submodule update --init tools/boostdep
|
||||
python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" %LIBRARY%
|
||||
cmd /c bootstrap
|
||||
b2 -d0 headers
|
||||
|
||||
- name: Install Boost --with-library
|
||||
shell: cmd
|
||||
run: |
|
||||
cd ../boost-root
|
||||
b2 -j3 --with-%LIBRARY% install
|
||||
|
||||
- name: Use the installed library (Debug)
|
||||
shell: cmd
|
||||
run: |
|
||||
cd ../boost-root/libs/%LIBRARY%/test/cmake_install_test && mkdir __build__ && cd __build__
|
||||
cmake -DBoost_ROOT=C:/Boost ..
|
||||
cmake --build . --config Debug
|
||||
ctest --output-on-failure --no-tests=error -C Debug
|
||||
|
||||
- name: Use the installed library (Release)
|
||||
shell: cmd
|
||||
run: |
|
||||
cd ../boost-root/libs/%LIBRARY%/test/cmake_install_test/__build__
|
||||
cmake --build . --config Release
|
||||
ctest --output-on-failure --no-tests=error -C Release
|
||||
|
||||
@@ -0,0 +1,133 @@
|
||||
#
|
||||
# Copyright (c) 2026 Sam Darwin
|
||||
# Copyright (c) 2026 Alexander Grund
|
||||
#
|
||||
# Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
||||
#
|
||||
|
||||
# Instructions
|
||||
#
|
||||
# After running this workflow successfully, go to https://github.com/ORGANIZATION/REPO/settings/pages
|
||||
# and enable github pages on the code-coverage branch.
|
||||
# The pages will be hosted at https://ORGANIZATION.github.io/REPO
|
||||
#
|
||||
|
||||
name: Code Coverage
|
||||
|
||||
permissions:
|
||||
contents:
|
||||
write
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- develop
|
||||
paths:
|
||||
- 'src/**'
|
||||
- 'include/**'
|
||||
- 'build/**'
|
||||
- '.github/workflows/code-coverage.yml'
|
||||
workflow_dispatch:
|
||||
|
||||
concurrency:
|
||||
group: code-coverage-pages
|
||||
cancel-in-progress: false
|
||||
|
||||
env:
|
||||
GIT_FETCH_JOBS: 8
|
||||
NET_RETRY_COUNT: 5
|
||||
# Commit title of the automatically created commits
|
||||
GCOVR_COMMIT_MSG: "Update coverage data"
|
||||
# Should branch coverage be reported? Default to no.
|
||||
BOOST_BRANCH_COVERAGE: 0
|
||||
# Dependencies:
|
||||
# EXTRA_BOOST_LIBRARIES: "myorg/myrepo other/repo3"
|
||||
|
||||
jobs:
|
||||
build:
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- runs-on: "ubuntu-24.04"
|
||||
name: Coverage
|
||||
cxxstd: "20"
|
||||
gcovr_script: './ci-automation/scripts/lcov-jenkins-gcc-13.sh --only-gcovr'
|
||||
|
||||
name: ${{ matrix.name }}
|
||||
runs-on: ${{ matrix.runs-on }}
|
||||
timeout-minutes: 120
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v6
|
||||
|
||||
- name: Check for code-coverage Branch
|
||||
run: |
|
||||
set -xe
|
||||
git config --global user.name cppalliance-bot
|
||||
git config --global user.email cppalliance-bot@example.com
|
||||
git fetch origin
|
||||
if git branch -r | grep origin/code-coverage; then
|
||||
echo "The code-coverage branch exists. Continuing."
|
||||
else
|
||||
echo "The code-coverage branch does not exist. Creating it."
|
||||
git switch --orphan code-coverage
|
||||
git commit --allow-empty -m "$GCOVR_COMMIT_MSG"
|
||||
git push origin code-coverage
|
||||
git checkout "$GITHUB_REF_NAME"
|
||||
fi
|
||||
|
||||
- name: Install Python
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: '3.13'
|
||||
|
||||
- name: Install Python packages
|
||||
run: pip install gcovr
|
||||
|
||||
- name: Checkout ci-automation
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
repository: cppalliance/ci-automation
|
||||
path: ci-automation
|
||||
|
||||
- name: Build and run tests & collect coverage data
|
||||
run: |
|
||||
set -xe
|
||||
ls -al
|
||||
export ORGANIZATION=${GITHUB_REPOSITORY_OWNER}
|
||||
export REPONAME=$(basename ${GITHUB_REPOSITORY})
|
||||
export B2_CXXSTD=${{matrix.cxxstd}}
|
||||
${{matrix.gcovr_script}}
|
||||
|
||||
- name: Checkout GitHub pages branch
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
ref: code-coverage
|
||||
path: gh_pages_dir
|
||||
|
||||
- name: Copy gcovr results
|
||||
run: |
|
||||
set -xe
|
||||
pwd
|
||||
ls -al
|
||||
touch gh_pages_dir/.nojekyll # Prevent GH pages from treating these files as Jekyll pages.
|
||||
mkdir -p gh_pages_dir/develop
|
||||
mkdir -p gh_pages_dir/master
|
||||
rm -rf "gh_pages_dir/${GITHUB_REF_NAME}/gcovr"
|
||||
cp -rp gcovr "gh_pages_dir/${GITHUB_REF_NAME}/"
|
||||
echo -e "<html>\n<head>\n</head>\n<body>\n<a href=\"develop/index.html\">develop</a><br>\n<a href=\"master/index.html\">master</a><br>\n</body>\n</html>\n" > gh_pages_dir/index.html
|
||||
# In the future: echo -e "<html>\n<head>\n</head>\n<body>\n<a href=gcovr/index.html>gcovr</a><br>\n</body>\n</html>\n" > gh_pages_dir/develop/index.html
|
||||
echo -e "<html>\n<head>\n<meta http-equiv=\"refresh\" content=\"0; url=./gcovr/index.html\">\n</head>\n<body>\n</body>\n</html>\n" > gh_pages_dir/develop/index.html
|
||||
cp gh_pages_dir/develop/index.html gh_pages_dir/master/index.html
|
||||
cd gh_pages_dir
|
||||
git add .
|
||||
git commit --amend -m "$GCOVR_COMMIT_MSG"
|
||||
git push -f origin code-coverage
|
||||
@@ -10,7 +10,6 @@ constant boost_dependencies :
|
||||
/boost/concept_check//boost_concept_check
|
||||
/boost/config//boost_config
|
||||
/boost/predef//boost_predef
|
||||
/boost/static_assert//boost_static_assert
|
||||
/boost/throw_exception//boost_throw_exception
|
||||
/boost/type_traits//boost_type_traits ;
|
||||
|
||||
@@ -26,6 +25,5 @@ explicit
|
||||
;
|
||||
|
||||
call-if : boost-library regex
|
||||
: install boost_regex_old
|
||||
: install boost_regex boost_regex_old
|
||||
;
|
||||
|
||||
|
||||
@@ -2,15 +2,14 @@
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt
|
||||
|
||||
cmake_minimum_required(VERSION 3.5...3.16)
|
||||
cmake_minimum_required(VERSION 3.5...3.31)
|
||||
|
||||
project(cmake_install_test LANGUAGES CXX)
|
||||
|
||||
find_package(boost_regex REQUIRED)
|
||||
find_package(boost_core REQUIRED)
|
||||
find_package(Boost COMPONENTS regex REQUIRED)
|
||||
|
||||
add_executable(quick ../quick.cpp)
|
||||
target_link_libraries(quick Boost::regex Boost::core)
|
||||
target_link_libraries(quick Boost::regex)
|
||||
|
||||
enable_testing()
|
||||
add_test(quick quick)
|
||||
|
||||
@@ -10,7 +10,6 @@ add_subdirectory(../.. boostorg/reegx)
|
||||
add_subdirectory(../../../config boostorg/config)
|
||||
add_subdirectory(../../../core boostorg/core)
|
||||
add_subdirectory(../../../assert boostorg/assert)
|
||||
add_subdirectory(../../../static_assert boostorg/static_assert)
|
||||
add_subdirectory(../../../throw_exception boostorg/throw_exception)
|
||||
add_subdirectory(../../../predef boostorg/predef)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user