1name: C/Fortran 2 3on: 4 push: 5 branches: 6 - main 7 pull_request: 8 9jobs: 10 test: 11 strategy: 12 matrix: 13 os: [ubuntu-24.04, macos-15] 14 compiler: [gcc, clang] 15 exclude: 16 # "gcc" on macOS is a symlink to Apple Clang, same as "clang" 17 - os: macos-15 18 compiler: gcc 19 include: 20 # macOS: test with real GCC (not Apple Clang symlink) 21 - os: macos-15 22 compiler: gcc-15 23 # macOS: test with Homebrew LLVM 24 - os: macos-15 25 compiler: llvm 26 27 runs-on: ${{ matrix.os }} 28 29 steps: 30 - name: Environment setup 31 uses: actions/checkout@v4 32 - name: Set LLVM compiler path 33 if: matrix.compiler == 'llvm' 34 run: echo "CC=$(brew --prefix llvm@18)/bin/clang" >> $GITHUB_ENV 35 - name: Set compiler 36 if: matrix.compiler != 'llvm' 37 run: echo "CC=${{ matrix.compiler }}" >> $GITHUB_ENV 38 - name: Show compiler version 39 run: $CC --version | head -1 40 - name: Build and test libCEED 41 env: 42 FC: gfortran-14 43 run: | 44 make info 45 make -j 46 make prove -j2 47