Fix build with gcc-15 and -std=c23 #6
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: Build | |
on: [push, pull_request] | |
jobs: | |
build: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os: ubuntu-latest | |
platform: linux | |
- os: macos-latest | |
platform: macos | |
ffmpeg_version: ffmpeg5 | |
- os: macos-latest | |
platform: macos | |
ffmpeg_version: ffmpeg6 | |
- os: macos-latest | |
platform: macos | |
ffmpeg_version: ffmpeg7 | |
- os: windows-latest | |
platform: windows-mingw | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup | |
shell: bash | |
run: | | |
setupScript='ci/${{ matrix.platform }}/setup.sh' | |
[ ! -f "$setupScript" ] || "$setupScript" | |
- name: Configure Apt packages | |
if: ${{ matrix.platform == 'linux' }} | |
run: | | |
sudo apt-get install -y autoconf libtool git build-essential libargtable2-dev libavformat-dev libswscale-dev libsdl1.2-dev | |
- name: Configure Brew packages ffmpeg7 | |
if: ${{ matrix.ffmpeg_version == 'ffmpeg7' }} | |
run: | | |
brew install autoconf automake libtool pkgconf argtable ffmpeg sdl12-compat | |
- name: Configure Brew packages ffmpeg6 | |
if: ${{ matrix.ffmpeg_version == 'ffmpeg6' }} | |
run: | | |
brew install autoconf automake libtool pkgconf argtable ffmpeg@6 sdl12-compat | |
brew link ffmpeg@6 | |
- name: Configure Brew packages ffmpeg5 | |
if: ${{ matrix.ffmpeg_version == 'ffmpeg5' }} | |
run: | | |
brew install autoconf automake libtool pkgconf argtable ffmpeg@5 sdl12-compat | |
brew link ffmpeg@5 | |
- name: Setup msys2 | |
uses: msys2/setup-msys2@v2 | |
if: ${{ matrix.platform == 'windows-mingw' }} | |
with: | |
update: true | |
install: >- | |
mingw-w64-x86_64-gcc | |
mingw-w64-x86_64-make | |
mingw-w64-x86_64-autotools | |
mingw-w64-x86_64-libtool | |
mingw-w64-x86_64-pkg-config | |
mingw-w64-x86_64-yasm | |
mingw-w64-x86_64-argtable | |
mingw-w64-x86_64-ffmpeg | |
- name: Put MSYS2_MinGW64 on PATH | |
if: ${{ matrix.platform == 'windows-mingw' }} | |
run: | | |
echo "${{ runner.temp }}/msys64/mingw64/bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append | |
- name: Configure and build Posix | |
if: ${{ matrix.platform != 'windows-mingw' }} | |
run: | | |
./autogen.sh | |
./configure | |
make | |
- name: Configure and build Windows | |
if: ${{ matrix.platform == 'windows-mingw' }} | |
run: | | |
msys2 -c './autogen.sh' | |
msys2 -c './configure' | |
msys2 -c 'make' |