xserver/meson_options.txt
Enrico Weigelt, metux IT consult 9f913a3156 meson_options: disable XvMC build by default
XvMC is only helpful for old MPEG2 decoding (and here only some specific
part, the motion compensation). It's only supported by few cards, and needs
special client-side drivers, which need to have direct and pretty low-level
(non-DRI) GPU access (usually involving root access).

Since it's local-only anyways, modern clients can use generic GPU shaders
for various video formats (via standard DRI/mesa) and send whole frames.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-10-13 14:16:38 +02:00

187 lines
10 KiB
Meson

option('xorg', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'Enable Xorg X Server')
option('xorg-sdk', type: 'boolean', value: false,
description: 'Enable Xorg X Server SDK (enabled with xorg)')
option('xephyr', type: 'boolean', value: false,
description: 'Enable Xephyr nested X server')
option('xfake', type: 'boolean', value: false,
description: 'Enable the kdrive fake X server')
option('xfbdev', type: 'boolean', value: false,
description: 'Enable the kdrive framebuffer device X server')
option('xmodesetting', type: 'boolean', value: false,
description: 'Enable the kdrive KMS device X server')
option('glamor', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'Enable glamor (default yes for Xorg builds)')
option('xnest', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'Enable Xnest nested X server')
option('xvfb', type: 'boolean', value: true,
description: 'Enable Xvfb X server')
option('xwin', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'Enable XWin X server')
option('xquartz', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'Enable Xquartz X server')
option('kdrive_kbd', type: 'boolean', value: true,
description: 'Build kbd driver for kdrive')
option('kdrive_mouse', type: 'boolean', value: true,
description: 'Build mouse driver for kdrive')
option('kdrive_evdev', type: 'boolean', value: true,
description: 'Build evdev driver for kdrive')
option('kdrive_tslib', type: 'boolean', value: false,
description: 'Build kdrive tslib touchscreen support')
option('log_dir', type: 'string')
option('module_dir', type: 'string', value: 'xorg/modules',
description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
option('default_font_path', type: 'string')
option('fontrootdir', type: 'string',
description: 'Root directory for legacy fonts. Default: from font-utils.pc or $datadir/fonts/X11')
option('serverconfigdir', type: 'string',
description: 'Miscellaneous server configuration files path. Default: $libdir/xorg')
option('gbm', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'Enable libgbm support (default yes if available)')
option('glx_dri', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'Build the dri-based glx backends. Default: true')
option('glx', type: 'boolean', value: true)
option('xdmcp', type: 'boolean', value: true)
option('xdm-auth-1', type: 'boolean', value: true)
option('ipv6', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto')
option('input_thread', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto')
option('xkb_dir', type: 'string')
option('xkb_output_dir', type: 'string')
option('xkb_bin_dir', type: 'string')
option('xkb_default_rules', type: 'string', value: 'evdev')
option('xkb_default_model', type: 'string', value: 'pc105')
option('xkb_default_layout', type: 'string', value: 'us')
option('xkb_default_variant', type: 'string')
option('xkb_default_options', type: 'string')
option('fallback_input_driver', type: 'string', value: 'auto')
option('dtrace', type: 'boolean', value: false,
description: 'Enable dtrace hooks')
option('listen_tcp', type: 'boolean', value: false,
description: 'Listen on TCP by default')
option('listen_unix', type: 'boolean', value: true,
description: 'Listen on Unix by default')
option('listen_local', type: 'boolean', value: true,
description: 'Listen on local by default')
option('int10', type: 'combo', choices: ['stub', 'x86emu', 'vm86', 'auto', 'false'],
value: 'auto',
description: 'Xorg int10 backend (default: usually x86emu)')
option('suid_wrapper', type: 'boolean', value: false,
description: 'SUID wrapper for legacy driver support')
option('pciaccess', type: 'boolean', value: true,
description: 'Xorg pciaccess support')
option('udev', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'Enable udev hotplugging support')
option('udev_kms', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'Enable udev kms support')
option('hal', type: 'combo', choices: ['true', 'false', 'auto'], value: 'false',
description: 'Enable HAL integration')
option('systemd_notify', type: 'combo', choices: ['true', 'false', 'auto'], value: 'false',
description: 'Enable systemd-notify support')
option('systemd_logind', type: 'combo', choices: ['true', 'false', 'auto'], value: 'false',
description: 'Enable systemd-logind integration')
option('seatd_libseat', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'Enable seatd-libseat integration')
option('vgahw', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'Xorg VGA access module')
option('dpms', type: 'boolean', value: true,
description: 'Xorg DPMS extension')
option('screensaver', type: 'boolean', value: true,
description: 'ScreenSaver extension')
option('xres', type: 'boolean', value: true,
description: 'XRes extension')
option('xselinux', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'XSELINUX extension')
option('namespace', type: 'boolean', value: true,
description: 'Container/namespace extension')
option('xinerama', type: 'boolean', value: true,
description: 'Xinerama extension')
option('xcsecurity', type: 'boolean', value: false,
description: 'Security extension')
option('xv', type: 'boolean', value: true,
description: 'Xv extension')
option('xvmc', type: 'boolean', value: false,
description: 'XvMC extension')
option('dga', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'DGA extension')
option('linux_apm', type: 'boolean', value: true,
description: 'APM support on Linux')
option('linux_acpi', type: 'boolean', value: true,
description: 'ACPI support on Linux')
option('mitshm', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'SHM extension')
option('agp', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'AGP support')
option('sha1', type: 'combo', choices: ['libc', 'CommonCrypto', 'CryptoAPI', 'libmd', 'libsha1', 'libnettle', 'libgcrypt', 'libcrypto', 'auto'], value: 'auto',
description: 'SHA1 implementation')
option('tests', type: 'boolean', value: true,
description: 'Build tests for the X server on platforms that support it')
option('dri1', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto', description: 'Build DRI1 extension (default: auto)')
option('dri2', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto', description: 'Build DRI2 extension (default: auto)')
option('dri3', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto', description: 'Build DRI3 extension (default: auto)')
option('drm', type: 'boolean', value: true,
description: 'Build Xorg with libdrm support')
# Xquartz (MacOS) specific options
option('apple-applications-dir', type: 'string', value: '/Applications/Utilities',
description: 'Applications directory')
option('apple-application-name', type: 'string', value: 'X11',
description: 'Application name')
option('bundle-id-prefix', type: 'string', value: 'net.xlibre',
description: 'RDNS prefix for bundle identifier')
option('bundle-version', type: 'string', value: 'auto',
description: 'The CFBundleVersion for the application bundle')
option('bundle-version-string', type: 'string', value: 'auto',
description: 'The CFBundleShortVersionString for the application bundle')
option('sparkle-feed-url', type: 'string',
description: 'Feed URL for autoupdating with the Sparkle Framework (default: disabled)')
option('sparkle-public-edkey', type: 'string',
description: 'Public EdDSA key for verifying updates from the Sparkle feed (default: disabled)')
option('xpbproxy', type: 'boolean', value: false,
description: 'Build a standalone X pasteboard proxy')
option('libunwind', type: 'boolean', value: false,
description: 'Use libunwind for backtrace reporting')
option('debug_writetoclient', type: 'combo',
choices: ['none', 'caller', 'backtrace'], value: 'none',
description: 'Debug logging of calls to the exported WriteToClient() ' +
'frontend (caller = lightweight return address, ' +
'backtrace = full stack)')
option('docs', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'Build documentation')
option('devel-docs', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'Build development documentation')
option('docs-pdf', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
description: 'Whether to build PDF version of documentation. Setting is ignored if documentation is not built.')
# optional xfree86 DDX drivers
option('xf86-input-inputtest', type: 'boolean', value: true,
description: 'Test input driver support on XLibre')
option('xf86-input-null', type: 'boolean', value: true,
description: 'Null input driver')
# legacy nvidia driver quirks
option('legacy_nvidia_padding', type: 'boolean', value: false,
description: 'EXPERT ONLY: Add a padding to ScreenRec to match an older ABI for legacy NVidia drivers')
option('legacy_nvidia_340x', type: 'boolean', value: true,
description: 'Extra entrypoints for old Nvidia 340x proprietary driver')
# testsuite fine tuning - some things might not run everywhere
option('test_rendercheck_triangles', type: 'boolean', value: false,
description: 'testsuite: run rendercheck triangles tests (might fail on Xephyr)')
option('test_xephyr_gles', type: 'boolean', value: true,
description: 'testsuite: run gles2/gles3 tests on Xephyr (might fail w/o DRI)')