Release Lock Sooner in SCRRegistryExtension::Remove and Clear #1027
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: BuildAndTestNix | |
on: | |
push: | |
branches: [ development, c\+\+14-compliant, master ] | |
pull_request: | |
branches: [ development, c\+\+14-compliant ] | |
workflow_dispatch: | |
env: | |
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.) | |
BUILD_TYPE: Release | |
BUILD_DIR: ${{github.workspace}}/build | |
BUILD_CONFIGURATION: 0 | |
WITH_COVERAGE: 1 | |
MY_COVERAGE: gcov | |
jobs: | |
linux_minimum_supported_gcc_build: | |
name: Build and Test [ubuntu-20.04, Minimum GCC] | |
runs-on: ubuntu-20.04 | |
env: | |
BUILD_CONFIGURATION: 0 | |
WITH_COVERAGE: 0 | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
submodules: true | |
- name: Install Dependencies | |
run: | | |
sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
sudo apt-get update | |
sudo apt-get -yq --no-install-suggests --no-install-recommends install gcc-7 g++-7 valgrind | |
- name: Build and Test | |
run: ctest -VV -S ${{github.workspace}}/cmake/usCTestScript_github.cmake | |
env: | |
CC: gcc-7 | |
CXX: g++-7 | |
linux_clang_build: | |
name: Build and Test [ubuntu-20.04, Supported Clang] | |
runs-on: ubuntu-20.04 | |
env: | |
BUILD_CONFIGURATION: 0 | |
WITH_COVERAGE: 0 | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
submodules: true | |
- name: Install Dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get -yq --no-install-suggests --no-install-recommends install valgrind lld | |
- name: Build and Test | |
run: ctest -VV -S ${{github.workspace}}/cmake/usCTestScript_github.cmake | |
env: | |
CC: clang | |
CXX: clang++ | |
build_nix: | |
name: Build and Test [${{matrix.os}},Configuration=${{matrix.buildconfiguration}}] | |
runs-on: ${{matrix.os}} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-22.04, macOS-11, macos-12] | |
# build configurations: | |
# 0 = threading ON / shared lib ON | |
# 1 = threading ON / shared lib OFF | |
# 2 = threading OFF / shared lib ON | |
# 3 = threading OFF/ shared lib OFF | |
buildconfiguration: [0,1,2,3] | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
submodules: true | |
- name: Install Dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y valgrind | |
if: ${{matrix.os == 'ubuntu-22.04'}} | |
- name: Build And Test | |
run: ctest -VV -S ${{github.workspace}}/cmake/usCTestScript_github.cmake | |
env: | |
BUILD_CONFIGURATION: ${{matrix.buildconfiguration}} | |
BUILD_DIR: ${{github.workspace}}/build_${{matrix.buildconfiguration}} | |
- name: Code Coverage | |
run: bash <(curl -s https://codecov.io/bash) -X gcov -s ${{github.workspace}}/build_${{matrix.buildconfiguration}} | |
build_nix_deterministic_bundles: | |
name: Build and Test [${{matrix.os}},Configuration=0,Deterministic] | |
runs-on: ${{matrix.os}} | |
env: | |
BUILD_CONFIGURATION: 0 | |
BUILD_WITH_DETERMINISTIC: 1 | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-22.04, macos-latest] | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
submodules: true | |
- name: Install Dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y valgrind | |
if: ${{matrix.os == 'ubuntu-22.04'}} | |
- name: Build And Test | |
run: ctest -VV -S ${{github.workspace}}/cmake/usCTestScript_github.cmake | |
env: | |
BUILD_DIR: ${{github.workspace}}/build_0 | |