remove unneeded cast #898
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: ci | |
env: | |
HOMEBREW_NO_INSTALL_CLEANUP: 1 | |
CTEST_NO_TESTS_ACTION: error | |
CTEST_PARALLEL_LEVEL: 0 | |
CMAKE_INSTALL_PREFIX: ~/libs | |
CMAKE_PREFIX_PATH: ~/libs | |
on: | |
push: | |
paths: | |
- "**.c" | |
- "**.h" | |
- "**.cpp" | |
- "**.f90" | |
- "**/CMakeLists.txt" | |
- "**.cmake" | |
- ".github/workflows/ci.yml" | |
- "!concepts/**" | |
jobs: | |
# waiting for public release https://github.com/actions/runner-images/issues/9691#issuecomment-2099267078 | |
linux-new: | |
runs-on: ubuntu-24.04 | |
timeout-minutes: 15 | |
strategy: | |
matrix: | |
gcc-version: [12, 13, 14] | |
shared: [true, false] | |
cpp: [true, false] | |
env: | |
CC: gcc-${{ matrix.gcc-version }} | |
CXX: g++-${{ matrix.gcc-version }} | |
FC: gfortran-${{ matrix.gcc-version }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/workflows/composite-action | |
linux-flang: | |
# waiting for Clang 19 + Flang. Flang 19 is needed. | |
runs-on: ubuntu-24.04 | |
timeout-minutes: 15 | |
strategy: | |
matrix: | |
clang-version: [18] | |
cpp: [true, false] | |
shared: [true, false] | |
env: | |
CC: clang-${{ matrix.clang-version }} | |
CXX: clang++-${{ matrix.clang-version }} | |
FC: gfortran-14 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/workflows/composite-action | |
gcc-9-10-11: | |
runs-on: ubuntu-22.04 | |
timeout-minutes: 15 | |
strategy: | |
fail-fast: false | |
matrix: | |
gcc-version: [9, 10, 11] | |
shared: [false] | |
cpp: [true, false] | |
include: | |
- gcc-version: 11 | |
shared: true | |
cpp: true | |
env: | |
CC: gcc-${{ matrix.gcc-version }} | |
CXX: g++-${{ matrix.gcc-version }} | |
FC: gfortran-${{ matrix.gcc-version }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/workflows/composite-action | |
gcc-8: | |
runs-on: ubuntu-20.04 | |
timeout-minutes: 15 | |
strategy: | |
matrix: | |
gcc-version: [8] | |
shared: [false] | |
cpp: [true, false] | |
env: | |
CC: gcc-${{ matrix.gcc-version }} | |
CXX: g++-${{ matrix.gcc-version }} | |
FC: gfortran-${{ matrix.gcc-version }} | |
steps: | |
- name: install compilers | |
run: | | |
sudo apt update | |
sudo apt install --no-install-recommends ninja-build ${{ env.CC }} ${{ env.CXX }} ${{ env.FC }} | |
- uses: actions/checkout@v4 | |
- uses: ./.github/workflows/composite-action | |
valgrind-memory: | |
runs-on: ubuntu-latest | |
continue-on-error: true | |
timeout-minutes: 10 | |
strategy: | |
matrix: | |
cpp: [true, false] | |
steps: | |
- name: install valgrind | |
run: | | |
sudo apt update | |
sudo apt install --no-install-recommends valgrind | |
- uses: actions/checkout@v4 | |
- run: ctest -Dopts="-Dffilesystem_cpp:BOOL=${{ matrix.cpp }}" -S memcheck.cmake -V | |
- name: upload Valgrind log | |
if: ${{ failure() }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: valgrind-log | |
path: build-Valgrind/Testing/Temporary/MemoryChecker.*.log | |
#------------------------------ | |
clang-tidy: | |
runs-on: ubuntu-24.04 | |
needs: linux-new | |
timeout-minutes: 10 | |
strategy: | |
matrix: | |
cpp: [false,true] | |
steps: | |
- uses: actions/checkout@v4 | |
- run: >- | |
cmake --preset tidy | |
-Dffilesystem_cpp:BOOL=${{ matrix.cpp }} | |
-Dffilesystem_fortran:BOOL=off | |
- run: cmake --build --preset tidy | |
#------------------------------ | |
# disabled coverage due to broken Jinja import | |
# linux-coverage: | |
# runs-on: ubuntu-latest | |
# needs: linux-new | |
# timeout-minutes: 10 | |
# steps: | |
# - uses: actions/checkout@v4 | |
# - uses: actions/setup-python@v5 | |
# with: | |
# python-version: '3.9' | |
# - name: install Gcovr | |
# run: pip install gcovr | |
# - run: cmake --preset coverage | |
# - run: cmake --build --preset coverage | |
# - name: Code coverage | |
# run: cmake --build --preset run-coverage | |
# - uses: actions/upload-artifact@v4 | |
# with: | |
# name: coverage-report-html | |
# path: build-coverage/coverage/ | |
mac: | |
runs-on: macos-latest | |
timeout-minutes: 10 | |
strategy: | |
matrix: | |
compiler: [ {cpp: clang++, c: clang} ] | |
shared: [true, false] | |
cpp: [true, false] | |
# {cpp: g++-13, c: gcc-13}, unstable on CI (good on real mac) | |
env: | |
CC: ${{ matrix.compiler.c }} | |
CXX: ${{ matrix.compiler.cpp }} | |
FC: gfortran-13 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/workflows/composite-action |