Support fast_float 7.0.0 #619
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: Windows | |
on: | |
push: | |
branches: | |
- master | |
- v*/dev | |
- ci/* | |
paths: | |
- '.github/workflows/windows.yml' | |
- 'benchmark/**' | |
- 'cmake/**' | |
- 'examples/**' | |
- 'include/**' | |
- 'src/**' | |
- 'tests/unittests/**' | |
- '**/CMakeLists.txt' | |
pull_request: | |
branches: | |
- master | |
- v*/dev | |
- ci/* | |
paths: | |
- '.github/workflows/windows.yml' | |
- 'benchmark/**' | |
- 'cmake/**' | |
- 'examples/**' | |
- 'include/**' | |
- 'src/**' | |
- 'tests/unittests/**' | |
- '**/CMakeLists.txt' | |
workflow_dispatch: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref_name }}-${{ github.ref_type == 'branch' && github.sha }}-${{ github.event_name == 'workflow_dispatch' }}-${{ github.event_name == 'schedule' }}-${{ github.event.schedule }} | |
cancel-in-progress: true | |
env: | |
CCACHE_ABSSTDERR: true | |
CCACHE_COMPRESS: true | |
CCACHE_COMPRESSLEVEL: 6 | |
CCACHE_DIR: D:/ccache | |
CCACHE_MAXSIZE: 50M | |
CCACHE_NOHASHDIR: true | |
CCACHE_SLOPPINESS: "pch_defines,time_macros" | |
CCACHE_UNIFY: true | |
CMAKE_C_COMPILER_LAUNCHER: ccache | |
CMAKE_CXX_COMPILER_LAUNCHER: ccache | |
jobs: | |
msvc: | |
runs-on: windows-${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ 2019, 2022 ] | |
platform: [ Win32, x64 ] | |
type: [ Debug, Release ] | |
std: [ 17 ] | |
include: | |
- os: 2019 | |
platform: x64 | |
type: Debug | |
std: 20 | |
- os: 2022 | |
platform: x64 | |
type: Debug | |
std: 20 | |
exclude: | |
# Segfaulting in the tests, not locally reproducible | |
- os: 2022 | |
platform: Win32 | |
type: Release | |
std: 17 | |
- os: 2022 | |
platform: x64 | |
type: Release | |
std: 17 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Create Build Environment | |
run: | | |
cmake -E make_directory ${{ runner.workspace }}/build | |
choco install ccache | |
- name: Load ccache | |
uses: actions/cache@v4 | |
with: | |
path: ${{ env.CCACHE_DIR }} | |
key: ccache-${{ github.workflow }}-win${{ matrix.os }}-msvc${{ matrix.platform }}-std${{ matrix.std }}-${{ matrix.type }}-${{ github.sha }} | |
restore-keys: | | |
ccache-${{ github.workflow }}-win${{ matrix.os }}-msvc${{ matrix.platform }}-std${{ matrix.std }}-${{ matrix.type }}-${{ github.ref }} | |
ccache-${{ github.workflow }}-win${{ matrix.os }}-msvc${{ matrix.platform }}-std${{ matrix.std }}-${{ matrix.type }}-${{ github.base_ref }} | |
ccache-${{ github.workflow }}-win${{ matrix.os }}-msvc${{ matrix.platform }}-std${{ matrix.std }}-${{ matrix.type }} | |
- name: Setup ccache | |
run: | | |
ccache --version | |
ccache --zero-stats | |
ccache --show-stats | |
ccache --show-config | |
- name: Run CMake | |
working-directory: ${{ runner.workspace }}/build | |
shell: bash | |
run: | | |
cmake -A ${{ matrix.platform }} -DCMAKE_CXX_STANDARD=${{ matrix.std }} -DSCN_CI=ON $GITHUB_WORKSPACE | |
- name: Build | |
working-directory: ${{ runner.workspace }}/build | |
run: cmake --build . --config ${{ matrix.type }} --parallel | |
- name: Show ccache stats | |
run: | | |
ccache --show-stats | |
- name: Test | |
working-directory: ${{ runner.workspace }}/build | |
run: ctest -C ${{ matrix.type }} --output-on-failure | |
clang-cl: | |
runs-on: windows-${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ 2019, 2022 ] | |
std: [ 17, 20 ] | |
platform: [ x64 ] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Create Build Environment | |
run: | | |
cmake -E make_directory ${{ runner.workspace }}/build | |
choco install ccache | |
- name: Load ccache | |
uses: actions/cache@v4 | |
with: | |
path: ${{ env.CCACHE_DIR }} | |
key: ccache-${{ github.workflow }}-win${{ matrix.os }}-clangcl${{ matrix.platform }}-std${{ matrix.std }}-${{ matrix.type }}-${{ github.sha }} | |
restore-keys: | | |
ccache-${{ github.workflow }}-win${{ matrix.os }}-clangcl${{ matrix.platform }}-std${{ matrix.std }}-${{ matrix.type }}-${{ github.ref }} | |
ccache-${{ github.workflow }}-win${{ matrix.os }}-clangcl${{ matrix.platform }}-std${{ matrix.std }}-${{ matrix.type }}-${{ github.base_ref }} | |
ccache-${{ github.workflow }}-win${{ matrix.os }}-clangcl${{ matrix.platform }}-std${{ matrix.std }}-${{ matrix.type }} | |
- name: Setup ccache | |
run: | | |
ccache --version | |
ccache --zero-stats | |
ccache --show-stats | |
ccache --show-config | |
- name: Run CMake | |
working-directory: ${{ runner.workspace }}/build | |
shell: bash | |
run: | | |
cmake -T ClangCL -DCMAKE_CXX_STANDARD=${{ matrix.std }} -DCMAKE_BUILD_TYPE=Debug \ | |
-DSCN_CI=ON -DSCN_PEDANTIC=ON -DSCN_WERROR=ON $GITHUB_WORKSPACE | |
- name: Build | |
working-directory: ${{ runner.workspace }}/build | |
run: cmake --build . --config Debug --parallel | |
- name: Show ccache stats | |
run: | | |
ccache --show-stats | |
- name: Test | |
working-directory: ${{ runner.workspace }}/build | |
run: ctest -C Debug --output-on-failure | |
msys: | |
runs-on: windows-2022 | |
defaults: | |
run: | |
shell: msys2 {0} | |
strategy: | |
fail-fast: false | |
matrix: | |
sys: | |
# MSYS recommended default: | |
# gcc, ucrt, libstdc++ | |
- ucrt64 | |
# gcc, msvcrt, libstdc++ | |
- mingw32 | |
- mingw64 | |
# llvm, ucrt, libc++ | |
- clang32 | |
- clang64 | |
# gcc, cygwin, libstdc++ (64-bit) | |
- msys | |
exclude: | |
# Buggy float parsing | |
- sys: clang32 | |
- sys: clang64 | |
- sys: msys | |
steps: | |
- uses: msys2/setup-msys2@v2 | |
with: | |
update: true | |
msystem: ${{ matrix.sys }} | |
install: >- | |
git | |
make | |
pacboy: >- | |
toolchain:p | |
cmake:p | |
ccache:p | |
ninja:p | |
python:p | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Load ccache | |
uses: actions/cache@v4 | |
with: | |
path: ${{ env.CCACHE_DIR }} | |
key: ccache-${{ github.workflow }}-win2022-msys-${{ matrix.sys }}-${{ github.sha }} | |
restore-keys: | | |
ccache-${{ github.workflow }}-win2022-msys-${{ matrix.sys }}-${{ github.ref }} | |
ccache-${{ github.workflow }}-win2022-msys-${{ matrix.sys }}-${{ github.base_ref }} | |
ccache-${{ github.workflow }}-win2022-msys-${{ matrix.sys }} | |
- name: Setup ccache | |
run: | | |
ccache --version | |
ccache --zero-stats | |
ccache --show-stats | |
ccache --show-config | |
- name: Build and test | |
run: | | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug \ | |
-DSCN_DISABLE_TOP_PROJECT=ON -DSCN_PEDANTIC=ON -DSCN_TESTS=ON -DSCN_EXAMPLES=ON .. | |
cmake --build . --parallel -- -k 0 | |
ctest --output-on-failure | |
- name: Show ccache stats | |
run: | | |
ccache --show-stats |