Skip to content

build-ffmpeg

build-ffmpeg #297

Workflow file for this run

name: build-ffmpeg
on:
push:
branches: main
paths-ignore:
- '**.md'
- '**.rst'
- '**.txt'
pull_request:
branches: main
paths-ignore:
- '**.md'
- '**.rst'
- '**.txt'
workflow_dispatch:
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: true
matrix:
include:
# - os: macos-14
# arch: arm64
# shell: bash
# - os: macos-13
# arch: x86_64
# shell: bash
# - os: ubuntu-latest
# arch: i686
# shell: bash
# - os: ubuntu-latest
# arch: x86_64
# shell: bash
- os: windows-latest
arch: AMD64
shell: 'msys2 {0}'
defaults:
run:
shell: ${{ matrix.shell }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.9"
- name: Build FFmpeg
env:
CIBW_ARCHS: ${{ matrix.arch }}
CIBW_BEFORE_BUILD_WINDOWS: python scripts\build-ffmpegz.py C:\cibw\vendor
CIBW_BUILD: cp39-*
CIBW_REPAIR_WHEEL_COMMAND_LINUX: LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig:/tmp/vendor/lib:$LD_LIBRARY_PATH auditwheel repair -w {dest_dir} {wheel}
CIBW_REPAIR_WHEEL_COMMAND_WINDOWS: delvewheel repair --add-path C:\cibw\vendor\bin -w {dest_dir} {wheel}
CIBW_SKIP: "*musllinux*"
CIBW_TEST_COMMAND: python -c "import dummy"
run: |
pip install cibuildwheel delvewheel
cibuildwheel --output-dir output
rm -f output/*.whl
- name: Setup tmate session
if: ${{ failure() }}
uses: mxschmitt/action-tmate@v3
- name: Upload FFmpeg
uses: actions/upload-artifact@v4
with:
name: output-${{ matrix.os }}-${{ matrix.arch }}
path: output/