pantry/projects/mpv.io/package.yml
Jacob Heider 2484571106
fix(mpv).darwin
this one is just annoying
2024-04-24 18:24:36 -04:00

93 lines
2.4 KiB
YAML

distributable:
url: git+https://github.com/mpv-player/mpv
ref: ${{version.tag}}
versions:
github: mpv-player/mpv
dependencies:
ffmpeg.org: '*'
libjpeg-turbo.org: 2
libarchive.org: 3
github.com/libass/libass: ^0.17
videolan.org/libplacebo: 6
littlecms.com: 2
luajit.org: 2
mujs.com: 1
freedesktop.org/uchardet: 0
vapoursynth.com: 66
yt-dlp.org: '*'
linux:
alsa-project.org/alsa-lib: 1
github.com/adah1972/libunibreak: 5
warnings:
- macOS12+
build:
dependencies:
mesonbuild.com: 1
ninja-build.org: 1
git-scm.org: 2
invisible-island.net/ncurses: 6
linux:
nixos.org/patchelf: 0
script:
# FIXME: this is an extreme measure, but otherwise swift tries to mix apple's 2008
# ncurses with ours; believe me, i tried many workarounds here.
# ncurses isn't even used by us; it's brought in as part of python being used by
# meson and even if we remove it right here, the bkpyvenv script brings it back when
# running meson using `pkgx +python~3.11`. :(((
- run: |
if test -d $NCURSES_INCLUDE; then
mv $NCURSES_INCLUDE ${NCURSES_INCLUDE}.bak
fi
if: darwin
- meson setup build $ARGS
- meson compile -C build
- meson install -C build
- run: |
if test -d ${NCURSES_INCLUDE}.bak; then
mv ${NCURSES_INCLUDE}.bak $NCURSES_INCLUDE
fi
if: darwin
# for some reason, fix-elf.ts doesn't catch this:
- run: patchelf --replace-needed {{deps.mujs.com.prefix}}/lib/pkgconfig/../../lib/libmujs.so libmujs.so mpv
working-directory: ${{prefix}}/bin
if: linux
env:
ARGS:
- -Djavascript=enabled
- -Dlibmpv=true
- -Dlua=luajit
- -Dlibarchive=enabled
- -Duchardet=enabled
- -Dvapoursynth=enabled
- -Dmanpage-build=disabled
- --sysconfdir={{prefix}}/etc
- --datadir={{prefix}}/share
- --prefix={{prefix}}
- --buildtype=release
darwin:
NCURSES_INCLUDE: ${{deps.invisible-island.net/ncurses.prefix}}/include
linux:
CC: clang
LD: clang
test:
# the swift bits rely on a lib not available on macOS 11; we've seen this before.
# no point in holding it out just for that, though
- run: |
if test "$(sw_vers --productVersion | cut -d . -f 1)" -lt 12; then
exit 0
fi
if: darwin
- mpv --ao=null --vo=null test.wav
- mpv --vf=help | grep vapoursynth
provides:
- bin/mpv