mirror of https://github.com/mpv-player/mpv
121 lines
9.1 KiB
Meson
121 lines
9.1 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: 'include compile timestamp in binary')
|
|
option('tests', type: 'boolean', value: false, description: 'meson unit tests')
|
|
option('fuzzers', type: 'boolean', value: false, description: 'fuzzer binaries')
|
|
# 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('jpeg', type: 'feature', value: 'auto', description: 'libjpeg image writer')
|
|
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 native threading')
|
|
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 (iOS)')
|
|
option('coreaudio', type: 'feature', value: 'auto', description: 'CoreAudio audio output')
|
|
option('avfoundation', type: 'feature', value: 'auto', description: 'AVFoundation 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: 'Direct Rendering Manager (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: 'Generic Buffer Manager (GBM)')
|
|
option('gl', type: 'feature', value: 'enabled', description: 'OpenGL context support')
|
|
option('gl-cocoa', type: 'feature', value: 'auto', description: 'OpenGL Cocoa backend')
|
|
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('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 video output')
|
|
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 DXVA2 hwaccel')
|
|
option('ios-gl', type: 'feature', value: 'auto', description: 'iOS OpenGL ES 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-11-features', type: 'feature', value: 'auto', description: 'macOS 11 SDK Features')
|
|
option('macos-12-features', type: 'feature', value: 'auto', description: 'macOS 12 SDK 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')
|