Skip to content

fix

fix #23

Workflow file for this run

name: C Standard
on:
workflow_dispatch:
push:
pull_request:
jobs:
# main:
# name: ${{ matrix.os }} + ${{ matrix.compiler }} + ${{ matrix.builder }} -std=${{ matrix.std }}
# runs-on: ${{ matrix.os }}
# strategy:
# fail-fast: false
# matrix:
# os:
# - ubuntu-latest
# - macos-latest
# compiler:
# - gcc
# - clang
# builder:
# - configure
# - cmake
# std:
# - c89
# - gnu89
# # c94 is iso9899:199409 for both gcc & clang
# - iso9899:199409
# - c99
# - gnu99
# - c11
# - gnu11
# - c17
# - gnu17
# - c2x
# - gnu2x
# steps:
# - name: Checkout repository
# uses: actions/checkout@v4
# with:
# show-progress: 'false'
# - name: Install packages (Ubuntu)
# if: matrix.os == 'ubuntu-latest'
# run: |
# sudo apt-get update
# - name: Generate project files (configure)
# if: matrix.builder == 'configure'
# run: |
# ./configure
# env:
# CC: ${{ matrix.compiler }}
# CFLAGS: -std=${{ matrix.std }} -Werror
# - name: Compile source code (configure)
# if: matrix.builder == 'configure'
# run: make -j2
# - name: Run test cases (configure)
# if: matrix.builder == 'configure'
# run: |
# make test
# make cover
# - name: Generate project files (cmake)
# if: matrix.builder == 'cmake'
# run: |
# cmake -S . -B . -D CMAKE_BUILD_TYPE=Release -D ZLIB_BUILD_EXAMPLES=OFF
# env:
# CC: ${{ matrix.compiler }}
# CFLAGS: -std=${{ matrix.std }} -Werror
# - name: Compile source code (cmake)
# if: matrix.builder == 'cmake'
# run: cmake --build . --config Release
# - name: Run test cases (cmake)
# if: matrix.builder == 'cmake'
# run: ctest -C Release --output-on-failure --max-width 120
msvc:
name: ${{ matrix.os }} ${{ matrix.cmake-args.name }} + msvc ${{ matrix.std.name }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- windows-latest
cmake-args:
- name: 32-bit
value: -A Win32
- name: 64-bit
value: -A x64
std:
- name: default
value: ""
- name: C11
value: /std:c11
# - name: C17
# value: /std:c17
# - name: latest
# value: /std:clatest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
show-progress: 'false'
- name: Generate project files (cmake)
run: |
cmake -S . -B . ${{ matrix.cmake-args.value }} -D CMAKE_BUILD_TYPE=Release
env:
CC: cl
CFLAGS: ${{ matrix.std.value }} /WX
- name: Compile source code (cmake)
run: cmake --build . --config Release
- name: Run test cases (cmake)
run: ctest -C Release --output-on-failure --max-width 120