xref: /aosp_15_r20/external/crosvm/third_party/virglrenderer/meson_options.txt (revision bbecb9d118dfdb95f99bd754f8fa9be01f189df3)
1#############################################################################
2#
3# Copyright (C) 2019 Collabora Ltd
4#
5# Permission is hereby granted, free of charge, to any person obtaining a
6# copy of this software and associated documentation files (the "Software"),
7# to deal in the Software without restriction, including without limitation
8# the rights to use, copy, modify, merge, publish, distribute, sublicense,
9# and/or sell copies of the Software, and to permit persons to whom the
10# Software is furnished to do so, subject to the following conditions:
11#
12# The above copyright notice and this permission notice shall be included
13# in all copies or substantial portions of the Software.
14#
15# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
16# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
18# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
19# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
20# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
21# OTHER DEALINGS IN THE SOFTWARE.
22#
23
24option(
25  'platforms',
26  type : 'array',
27  value : ['auto'],
28  choices : [
29    'egl', 'glx', 'auto'
30  ],
31  description : 'Platforms support, set to auto to enable all.'
32)
33
34option(
35  'minigbm_allocation',
36  type : 'boolean',
37  value : 'false',
38  description : 'enable support for minigbm_allocations'
39)
40
41option(
42  'venus-experimental',
43  type : 'boolean',
44  value : 'false',
45  description : 'enable support for venus'
46)
47
48option(
49  'venus-validate',
50  type : 'boolean',
51  value : 'false',
52  description : 'enable the validation layer for venus'
53)
54
55option(
56  'check-gl-errors',
57  type : 'boolean',
58  value : 'true',
59  description : 'treat host-side gl errors as fatal'
60)
61
62# NOTE: expecting some slight fencing changes between host and guest
63# once ring_idx is plumbed through crosvm (ie. synchronizing between
64# host CPU and guest CPU will be a separate fence timeline)
65option(
66  'drm-msm-experimental',
67  type : 'boolean',
68  value : 'false',
69  description : 'enable support for msm drm native context'
70)
71
72option(
73  'render-server',
74  type : 'boolean',
75  value : 'false',
76  description : 'enable support for render server'
77)
78
79option(
80  'render-server-worker',
81  type : 'combo',
82  value : 'process',
83  choices : ['process', 'thread', 'minijail'],
84  description : 'how a context in render server is serviced'
85)
86
87option(
88  'video',
89  type : 'boolean',
90  value : 'false',
91  description : 'enable support for hardware video acceleration'
92)
93
94option(
95  'tests',
96  type : 'boolean',
97  value : 'false',
98  description : 'enable unit tests'
99)
100
101option(
102  'fuzzer',
103  type : 'boolean',
104  value : 'false',
105  description : 'enable unit tests'
106)
107
108option(
109  'valgrind',
110  type : 'boolean',
111  value : 'false',
112  description : 'enable running unit tests with valgrind'
113)
114
115option(
116  'tracing',
117  type : 'combo',
118  value : 'none',
119  choices : [ 'percetto', 'perfetto', 'stderr', 'none' ],
120  description : 'enable emitting traces using the selected backend'
121)
122