mutter/meson_options.txt
Jonas Ådahl e5e58f8075
cogl: Add libsysprof capture based tracing
Add the ability to add tracing instrumentation to the code. When
enabled, trace entries will generate a file with timing information
that will be processable by sysprof for generating visualization of
traces over time.

While enabled by default at compile time, it is possible to disable the
expansion of the macros completely by passing --disable-tracing to
./configure.

Tracing is so far only actually done if actually enabled on explicitly
specified threads.

This will be used by Mutter passing the write end of a pipe, where the
read end is sent to Sysprof itself via the D-Bus method 'Capture()'.

By passing that, we have to detect EPIPE that is sent when Sysprof stops
recording. Fortunately, we already ignore the signal at meta_init(), so
no need to add a custom signal handler.

https://gitlab.gnome.org/GNOME/mutter/merge_requests/197
2019-05-31 11:55:56 -03:00

155 lines
2.9 KiB
Meson

option('opengl',
type: 'boolean',
value: true,
description: 'Enable OpenGL'
)
option('opengl_libname',
type: 'string',
value: 'libGL.so.1',
description: 'OpenGL library file name'
)
option('gles2_libname',
type: 'string',
value: 'libGLESv2.so',
description: 'GLESv2 library file name'
)
option('gles2',
type: 'boolean',
value: true,
description: 'Enable GLES2 support'
)
option('egl',
type: 'boolean',
value: true,
description: 'Enable EGL support'
)
option('glx',
type: 'boolean',
value: true,
description: 'Enable GLX support'
)
option('wayland',
type: 'boolean',
value: true,
description: 'Enable Wayland support'
)
option('native_backend',
type: 'boolean',
value: true,
description: 'Enable the native backend'
)
option('remote_desktop',
type: 'boolean',
value: true,
description: 'Enable remote desktop and screen cast support'
)
option('egl_device',
type: 'boolean',
value: false,
description: 'Enable EGLDevice and EGLStream renderer support'
)
option('wayland_eglstream',
type: 'boolean',
value: false,
description: 'Enable Wayland EGLStream support client support'
)
option('udev',
type: 'boolean',
value: true,
description: 'Enable udev support when using the X11 backend'
)
option('libwacom',
type: 'boolean',
value: true,
description: 'Enable libwacom support'
)
option('pango_ft2',
type: 'boolean',
value: true,
description: 'Enable PangoFt2 support'
)
option('startup_notification',
type: 'boolean',
value: true,
description: 'Enable startup notification support'
)
option('sm',
type: 'boolean',
value: true,
description: 'Enable X11 session management support'
)
option('introspection',
type: 'boolean',
value: true,
description: 'Enable GObject introspection'
)
option('cogl_tests',
type: 'boolean',
value: true,
description: 'Enable cogl tests'
)
option('clutter_tests',
type: 'boolean',
value: true,
description: 'Enable clutter tests'
)
option('core_tests',
type: 'boolean',
value: true,
description: 'Enable mutter core tests'
)
option('tests',
type: 'boolean',
value: true,
description: 'Enable tests globally. Specific test suites can be controlled with core_tests, clutter_tests, and cogl_tests'
)
option('profiler',
type: 'boolean',
value: true,
description: 'Enable Sysprof tracing'
)
option('installed_tests',
type: 'boolean',
value: true,
description: 'Enable mutter installed tests'
)
option('verbose',
type: 'boolean',
value: true,
description: 'Enable verbose logging ability'
)
option('xwayland_path',
type: 'string',
value: '',
description: 'Path to Xwayland executable'
)
option('xwayland_grab_default_access_rules',
type: 'string',
value: 'gnome-boxes,remote-viewer,virt-viewer,virt-manager,vinagre,vncviewer,Xephyr',
description: 'Comma delimited list of applications ressources or class allowed to issue X11 grabs in Xwayland'
)