Files
voukoder-ffmpeg/.github/workflows/libx264.yml
Daniel Stankewitz f5a74179a5 separate files
2022-07-12 18:59:20 +02:00

59 lines
1.9 KiB
YAML

name: libx264
on:
workflow_call:
inputs:
env:
type: string
required: true
default: 'windows-2022'
description: 'Environment'
config:
type: string
required: true
default: 'debug'
description: 'Configuration'
env:
vsPath: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\
cFlags: ${{ inputs.config == 'release' && '-MD' || '-MDd' }}
jobs:
libx264:
runs-on: ${{ inputs.env }}
steps:
- name: Set up GIT
run: |
git config --global core.autocrlf false
git config --global core.eol lf
- name: Checkout X264
uses: actions/checkout@v3.0.0
with:
repository: mirror/x264
ref: master
path: x264
- name: Check cache
id: libx264-cache
uses: actions/cache@v3
with:
path: dist
key: libx264-${{ inputs.env }}-${{ inputs.config }}-${{ hashFiles('x264') }}
- name: Set up MSYS2
if: steps.libx264-cache.outputs.cache-hit != 'true'
uses: msys2/setup-msys2@v2
with:
install: base-devel binutils autotools automake mingw-w64-x86_64-cmake nasm
path-type: inherit
- name: Build X264
if: steps.libx264-cache.outputs.cache-hit != 'true'
shell: cmd
run: |
call "${{ env.vsPath }}VC\Auxiliary\Build\vcvars64.bat"
md build build\include build\lib build\lib\pkgconfig dist
D:\a\_temp\setup-msys2\msys2.cmd -c 'cd x264 ; CC=cl ./configure --prefix=$(realpath ../build) --disable-cli --enable-static --enable-pic --libdir=../build/lib ; make -j ; make install-lib-static ; cd ../build ; tar czf ../dist/libx264.tgz *'
- name: Publish artifact
uses: actions/upload-artifact@v2
with:
name: libx264-${{ inputs.env }}-${{ inputs.config }}
path: dist/libx264.tgz