Skip to content

BEHOLD! Feature test macros! #171

BEHOLD! Feature test macros!

BEHOLD! Feature test macros! #171

Workflow file for this run

name: Windows
on: [push, pull_request, workflow_dispatch]
jobs:
build:
runs-on: windows-latest
defaults:
run:
shell: msys2 {0}
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- uses: msys2/setup-msys2@v2
with:
msystem: UCRT64
update: true
install: >-
autoconf
automake
base-devel
git
libtool
mingw-w64-ucrt-x86_64-cmake
mingw-w64-ucrt-x86_64-dav1d
mingw-w64-ucrt-x86_64-lcms2
mingw-w64-ucrt-x86_64-libjxl
mingw-w64-ucrt-x86_64-meson
mingw-w64-ucrt-x86_64-nasm
mingw-w64-ucrt-x86_64-toolchain
mingw-w64-ucrt-x86_64-vapoursynth
mingw-w64-ucrt-x86_64-vulkan-headers
mingw-w64-ucrt-x86_64-xxhash
- name: Install nv-codec-headers
run: |
git clone https://github.com/FFmpeg/nv-codec-headers.git --depth 1
pushd nv-codec-headers
make install -j$(nproc) PREFIX=/ucrt64
popd
rm -rf nv-codec-headers
- name: Install XEVD
run: |
git clone https://github.com/mpeg5/xevd.git
pushd xevd
cmake --install-prefix /ucrt64 -S . -B build
ninja -C build install
popd
rm -rf xevd
mv /ucrt64/lib/xevd/libxevd.a /ucrt64/lib
- name: Install FFmpeg
run: |
git clone https://git.ffmpeg.org/ffmpeg.git --depth 1
pushd ffmpeg
./configure --prefix=/ucrt64 --enable-gpl --enable-version3 --disable-programs --disable-doc --disable-avdevice --disable-swresample --disable-swscale --disable-postproc --disable-avfilter --disable-encoders --disable-muxers --enable-lcms2 --enable-libdav1d --enable-libjxl --enable-libxevd --disable-nvenc --pkg-config-flags=--static --disable-debug
make install -j$(nproc)
popd
rm -rf ffmpeg
- name: Build
run: |
meson setup -Ddefault_library=static -Dprefer_static=true -Db_lto=true -Dcpp_link_args=-static build
ninja -C build
strip build/bestsource.dll
- uses: actions/upload-artifact@v4
with:
name: bestsource
path: build/bestsource.dll