0
0
mirror of https://github.com/mpv-player/mpv.git synced 2024-09-20 03:52:22 +02:00
mpv/meson_options.txt
Dudemanguy 343a5fd345 player: remove all rpi-specific code
vo_rpi and its related code has pretty much historically been a
disaster in mpv. The build regularly gets broken and since nobody uses
it, it takes months for anyone to notice. There was also that time where
fullscreen was broken for about a year and a half. Also building in waf
was entirely broken for about a couple of years or so due to mysterious
reasons no one ever figured out (meson magically fixed it).

Anyways, once again the build is broken due to rpi being forgotten about
again, but instead of pretending to support this crap. Just drop it all.
Nowadays, mmal hwdec is a relic since these devices are better off using
the v4l2m2m ffmpeg fork instead which actually uses KMS properly. RPI 1
and 2 probably can't do this and will remain broken but oh well blame
Broadcom for being special snowflakes and not using standard APIs (my
rockpro worked out of the box; just saying). RPI 2 is nearly 10 years
old anyways, so I think you can afford a new SBC by now. If we were
nicer, there would be a deprecation period, but this is broken in the
last major release anyway so too late.

Closes #13402.
2024-02-05 17:41:06 +00:00

117 lines
8.7 KiB
Meson

# booleans
option('gpl', type: 'boolean', value: true, description: 'GPL (version 2 or later) build')
option('cplayer', type: 'boolean', value: true, description: 'mpv CLI player')
option('libmpv', type: 'boolean', value: false, description: 'libmpv library')
option('build-date', type: 'boolean', value: true, description: 'whether to include binary compile time')
option('tests', type: 'boolean', value: false, description: 'meson unit tests')
# Reminder: normally always built, but enabled by MPV_LEAK_REPORT.
# Building it can be disabled only by defining NDEBUG through CFLAGS.
option('ta-leak-report', type: 'boolean', value: false, description: 'enable ta leak report by default (development only)')
# misc features
option('cdda', type: 'feature', value: 'disabled', description: 'cdda support (libcdio)')
option('cplugins', type: 'feature', value: 'auto', description: 'C plugins')
option('dvbin', type: 'feature', value: 'auto', description: 'DVB input module')
option('dvdnav', type: 'feature', value: 'disabled', description: 'dvdnav support')
option('iconv', type: 'feature', value: 'auto', description: 'iconv')
option('javascript', type: 'feature', value: 'auto', description: 'Javascript (MuJS backend)')
option('lcms2', type: 'feature', value: 'auto', description: 'LCMS2 support')
option('libarchive', type: 'feature', value: 'auto', description: 'libarchive wrapper for reading zip files and more')
option('libavdevice', type: 'feature', value: 'auto', description: 'libavdevice')
option('libbluray', type: 'feature', value: 'auto', description: 'Bluray support')
option('lua',
type: 'combo',
choices: ['lua', 'lua52', 'lua5.2', 'lua-5.2', 'luajit', 'lua51',
'lua5.1', 'lua-5.1', 'auto', 'enabled', 'disabled'],
value: 'auto',
description: 'Lua'
)
option('pthread-debug', type: 'feature', value: 'disabled', description: 'pthread runtime debugging wrappers')
option('rubberband', type: 'feature', value: 'auto', description: 'librubberband support')
option('sdl2', type: 'feature', value: 'disabled', description: 'SDL2')
option('sdl2-gamepad', type: 'feature', value: 'auto', description: 'SDL2 gamepad input')
option('uchardet', type: 'feature', value: 'auto', description: 'uchardet support')
option('uwp', type: 'feature', value: 'disabled', description: 'Universal Windows Platform')
option('vapoursynth', type: 'feature', value: 'auto', description: 'VapourSynth filter bridge')
option('vector', type: 'feature', value: 'auto', description: 'GCC vector instructions')
option('win32-threads', type: 'feature', value: 'auto', description: 'win32 threads')
option('zimg', type: 'feature', value: 'auto', description: 'libzimg support (high quality software scaler)')
option('zlib', type: 'feature', value: 'auto', description: 'zlib')
# audio output features
option('alsa', type: 'feature', value: 'auto', description: 'ALSA audio output')
option('audiounit', type: 'feature', value: 'auto', description: 'AudioUnit output for iOS')
option('coreaudio', type: 'feature', value: 'auto', description: 'CoreAudio audio output')
option('jack', type: 'feature', value: 'auto', description: 'JACK audio output')
option('openal', type: 'feature', value: 'disabled', description: 'OpenAL audio output')
option('opensles', type: 'feature', value: 'auto', description: 'OpenSL ES audio output')
option('oss-audio', type: 'feature', value: 'auto', description: 'OSSv4 audio output')
option('pipewire', type: 'feature', value: 'auto', description: 'PipeWire audio output')
option('pulse', type: 'feature', value: 'auto', description: 'PulseAudio audio output')
option('sdl2-audio', type: 'feature', value: 'auto', description: 'SDL2 audio output')
option('sndio', type: 'feature', value: 'auto', description: 'sndio audio output')
option('wasapi', type: 'feature', value: 'auto', description: 'WASAPI audio output')
# video output features
option('caca', type: 'feature', value: 'auto', description: 'CACA')
option('cocoa', type: 'feature', value: 'auto', description: 'Cocoa')
option('d3d11', type: 'feature', value: 'auto', description: 'Direct3D 11 video output')
option('direct3d', type: 'feature', value: 'auto', description: 'Direct3D support')
option('dmabuf-wayland', type: 'feature', value: 'auto', description: 'dmabuf-wayland video output')
option('drm', type: 'feature', value: 'auto', description: 'DRM')
option('egl', type: 'feature', value: 'auto', description: 'EGL 1.4')
option('egl-android', type: 'feature', value: 'auto', description: 'Android EGL support')
option('egl-angle', type: 'feature', value: 'auto', description: 'OpenGL ANGLE headers')
option('egl-angle-lib', type: 'feature', value: 'auto', description: 'OpenGL Win32 ANGLE library')
option('egl-angle-win32', type: 'feature', value: 'auto', description: 'OpenGL Win32 ANGLE Backend')
option('egl-drm', type: 'feature', value: 'auto', description: 'OpenGL DRM EGL Backend')
option('egl-wayland', type: 'feature', value: 'auto', description: 'OpenGL Wayland Backend')
option('egl-x11', type: 'feature', value: 'auto', description: 'OpenGL X11 EGL Backend')
option('gbm', type: 'feature', value: 'auto', description: 'GBM')
option('gl', type: 'feature', value: 'enabled', description: 'OpenGL context support')
option('gl-cocoa', type: 'feature', value: 'auto', description: 'gl-cocoa')
option('gl-dxinterop', type: 'feature', value: 'auto', description: 'OpenGL/DirectX Interop Backend')
option('gl-win32', type: 'feature', value: 'auto', description: 'OpenGL Win32 Backend')
option('gl-x11', type: 'feature', value: 'disabled', description: 'OpenGL X11/GLX (deprecated/legacy)')
option('jpeg', type: 'feature', value: 'auto', description: 'JPEG support')
option('sdl2-video', type: 'feature', value: 'auto', description: 'SDL2 video output')
option('shaderc', type: 'feature', value: 'auto', description: 'libshaderc SPIR-V compiler')
option('sixel', type: 'feature', value:'auto', description: 'Sixel')
option('spirv-cross', type: 'feature', value: 'auto', description: 'SPIRV-Cross SPIR-V shader converter')
option('plain-gl', type: 'feature', value: 'auto', description: 'OpenGL without platform-specific code (e.g. for libmpv)')
option('vdpau', type: 'feature', value: 'auto', description: 'VDPAU acceleration')
option('vdpau-gl-x11', type: 'feature', value: 'auto', description: 'VDPAU with OpenGL/X11')
option('vaapi', type: 'feature', value: 'auto', description: 'VAAPI acceleration')
option('vaapi-drm', type: 'feature', value: 'auto', description: 'VAAPI (DRM support)')
option('vaapi-wayland', type: 'feature', value: 'auto', description: 'VAAPI (Wayland support)')
option('vaapi-win32', type: 'feature', value: 'auto', description: 'VAAPI (Windows support)')
option('vaapi-x11', type: 'feature', value: 'auto', description: 'VAAPI (X11 support)')
option('vulkan', type: 'feature', value: 'auto', description: 'Vulkan context support')
option('wayland', type: 'feature', value: 'auto', description: 'Wayland')
option('x11', type: 'feature', value: 'auto', description: 'X11')
option('xv', type: 'feature', value: 'auto', description: 'Xv video output')
# hwaccel features
option('android-media-ndk', type: 'feature', value: 'auto', description: 'Android Media APIs')
option('cuda-hwaccel', type: 'feature', value: 'auto', description: 'CUDA acceleration')
option('cuda-interop', type: 'feature', value: 'auto', description: 'CUDA with graphics interop')
option('d3d-hwaccel', type: 'feature', value: 'auto', description: 'D3D11VA hwaccel')
option('d3d9-hwaccel', type: 'feature', value: 'auto', description: 'DXVA2 hwaccel')
option('gl-dxinterop-d3d9', type: 'feature', value: 'auto', description: 'OpenGL/DirectX Interop Backend DXVA2 interop')
option('ios-gl', type: 'feature', value: 'auto', description: 'iOS OpenGL ES hardware decoding interop support')
option('videotoolbox-gl', type: 'feature', value: 'auto', description: 'Videotoolbox with OpenGL')
option('videotoolbox-pl', type: 'feature', value: 'auto', description: 'Videotoolbox with libplacebo')
option('vulkan-interop', type: 'feature', value: 'auto', description: 'Vulkan graphics interop')
# macOS features
option('macos-cocoa-cb', type: 'feature', value: 'auto', description: 'macOS libmpv backend')
option('macos-media-player', type: 'feature', value: 'auto', description: 'macOS Media Player support')
option('macos-touchbar', type: 'feature', value: 'auto', description: 'macOS Touch Bar support')
option('swift-build', type: 'feature', value: 'auto', description: 'macOS Swift build tools')
option('swift-flags', type: 'string', description: 'Optional Swift compiler flags')
# manpages
option('html-build', type: 'feature', value: 'disabled', description: 'html manual generation')
option('manpage-build', type: 'feature', value: 'auto', description: 'manpage generation')
option('pdf-build', type: 'feature', value: 'disabled', description: 'pdf manual generation')