Clone of mesa.
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

meson_options.txt 9.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375
  1. # Copyright © 2017-2019 Intel Corporation
  2. # Permission is hereby granted, free of charge, to any person obtaining a copy
  3. # of this software and associated documentation files (the "Software"), to deal
  4. # in the Software without restriction, including without limitation the rights
  5. # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  6. # copies of the Software, and to permit persons to whom the Software is
  7. # furnished to do so, subject to the following conditions:
  8. # The above copyright notice and this permission notice shall be included in
  9. # all copies or substantial portions of the Software.
  10. # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  11. # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  12. # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  13. # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  14. # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  15. # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  16. # SOFTWARE.
  17. option(
  18. 'platforms',
  19. type : 'array',
  20. value : ['auto'],
  21. choices : [
  22. '', 'auto', 'x11', 'wayland', 'drm', 'surfaceless', 'haiku', 'android',
  23. 'windows',
  24. ],
  25. description : 'window systems to support. If this is set to `auto`, all platforms applicable will be enabled.'
  26. )
  27. option(
  28. 'dri3',
  29. type : 'combo',
  30. value : 'auto',
  31. choices : ['auto', 'true', 'false'],
  32. description : 'enable support for dri3'
  33. )
  34. option(
  35. 'dri-drivers',
  36. type : 'array',
  37. value : ['auto'],
  38. choices : ['', 'auto', 'i915', 'i965', 'r100', 'r200', 'nouveau', 'swrast'],
  39. description : 'List of dri drivers to build. If this is set to auto all drivers applicable to the target OS/architecture will be built'
  40. )
  41. option(
  42. 'dri-drivers-path',
  43. type : 'string',
  44. value : '',
  45. description : 'Location to install dri drivers. Default: $libdir/dri.'
  46. )
  47. option(
  48. 'dri-search-path',
  49. type : 'string',
  50. value : '',
  51. description : 'Locations to search for dri drivers, passed as colon separated list. Default: dri-drivers-path.'
  52. )
  53. option(
  54. 'gallium-drivers',
  55. type : 'array',
  56. value : ['auto'],
  57. choices : [
  58. '', 'auto', 'kmsro', 'radeonsi', 'r300', 'r600', 'nouveau', 'freedreno',
  59. 'swrast', 'v3d', 'vc4', 'etnaviv', 'tegra', 'i915', 'svga', 'virgl',
  60. 'swr', 'panfrost', 'iris', 'lima', 'zink'
  61. ],
  62. description : 'List of gallium drivers to build. If this is set to auto all drivers applicable to the target OS/architecture will be built'
  63. )
  64. option(
  65. 'gallium-extra-hud',
  66. type : 'boolean',
  67. value : false,
  68. description : 'Enable HUD block/NIC I/O HUD status support',
  69. )
  70. option(
  71. 'gallium-vdpau',
  72. type : 'combo',
  73. value : 'auto',
  74. choices : ['auto', 'true', 'false'],
  75. description : 'enable gallium vdpau state tracker.',
  76. )
  77. option(
  78. 'vdpau-libs-path',
  79. type : 'string',
  80. value : '',
  81. description : 'path to put vdpau libraries. defaults to $libdir/vdpau.'
  82. )
  83. option(
  84. 'gallium-xvmc',
  85. type : 'combo',
  86. value : 'auto',
  87. choices : ['auto', 'true', 'false'],
  88. description : 'enable gallium xvmc state tracker.',
  89. )
  90. option(
  91. 'xvmc-libs-path',
  92. type : 'string',
  93. value : '',
  94. description : 'path to put xvmc libraries. defaults to $libdir.'
  95. )
  96. option(
  97. 'gallium-omx',
  98. type : 'combo',
  99. value : 'auto',
  100. choices : ['auto', 'disabled', 'bellagio', 'tizonia'],
  101. description : 'enable gallium omx state tracker.',
  102. )
  103. option(
  104. 'omx-libs-path',
  105. type : 'string',
  106. value : '',
  107. description : 'path to put omx libraries. defaults to omx-bellagio pkg-config pluginsdir.'
  108. )
  109. option(
  110. 'gallium-va',
  111. type : 'combo',
  112. value : 'auto',
  113. choices : ['auto', 'true', 'false'],
  114. description : 'enable gallium va state tracker.',
  115. )
  116. option(
  117. 'va-libs-path',
  118. type : 'string',
  119. value : '',
  120. description : 'path to put va libraries. defaults to $libdir/dri.'
  121. )
  122. option(
  123. 'gallium-xa',
  124. type : 'combo',
  125. value : 'auto',
  126. choices : ['auto', 'true', 'false'],
  127. description : 'enable gallium xa state tracker.',
  128. )
  129. option(
  130. 'gallium-nine',
  131. type : 'boolean',
  132. value : false,
  133. description : 'build gallium "nine" Direct3D 9.x state tracker.',
  134. )
  135. option(
  136. 'gallium-opencl',
  137. type : 'combo',
  138. choices : ['icd', 'standalone', 'disabled'],
  139. value : 'disabled',
  140. description : 'build gallium "clover" OpenCL state tracker.',
  141. )
  142. option(
  143. 'opencl-spirv',
  144. type : 'boolean',
  145. value : false,
  146. description : 'build gallium "clover" OpenCL state tracker with SPIR-V binary support.',
  147. )
  148. option(
  149. 'd3d-drivers-path',
  150. type : 'string',
  151. value : '',
  152. description : 'Location of D3D drivers. Default: $libdir/d3d',
  153. )
  154. option(
  155. 'vulkan-drivers',
  156. type : 'array',
  157. value : ['auto'],
  158. choices : ['', 'auto', 'amd', 'freedreno', 'intel'],
  159. description : 'List of vulkan drivers to build. If this is set to auto all drivers applicable to the target OS/architecture will be built'
  160. )
  161. option(
  162. 'shader-cache',
  163. type : 'combo',
  164. value : 'auto',
  165. choices : ['auto', 'true', 'false'],
  166. description : 'Build with on-disk shader cache support'
  167. )
  168. option(
  169. 'vulkan-icd-dir',
  170. type : 'string',
  171. value : '',
  172. description : 'Location relative to prefix to put vulkan icds on install. Default: $datadir/vulkan/icd.d'
  173. )
  174. option(
  175. 'vulkan-overlay-layer',
  176. type : 'boolean',
  177. value : false,
  178. description : 'Whether to build the vulkan overlay layer'
  179. )
  180. option(
  181. 'shared-glapi',
  182. type : 'combo',
  183. value : 'auto',
  184. choices : ['auto', 'true', 'false'],
  185. description : 'Whether to build a shared or static glapi. Defaults to false on Windows, true elsewhere'
  186. )
  187. option(
  188. 'gles1',
  189. type : 'combo',
  190. value : 'auto',
  191. choices : ['auto', 'true', 'false'],
  192. description : 'Build support for OpenGL ES 1.x'
  193. )
  194. option(
  195. 'gles2',
  196. type : 'combo',
  197. value : 'auto',
  198. choices : ['auto', 'true', 'false'],
  199. description : 'Build support for OpenGL ES 2.x and 3.x'
  200. )
  201. option(
  202. 'opengl',
  203. type : 'boolean',
  204. value : true,
  205. description : 'Build support for OpenGL (all versions)'
  206. )
  207. option(
  208. 'gbm',
  209. type : 'combo',
  210. value : 'auto',
  211. choices : ['auto', 'true', 'false'],
  212. description : 'Build support for gbm platform'
  213. )
  214. option(
  215. 'glx',
  216. type : 'combo',
  217. value : 'auto',
  218. choices : ['auto', 'disabled', 'dri', 'xlib', 'gallium-xlib'],
  219. description : 'Build support for GLX platform'
  220. )
  221. option(
  222. 'egl',
  223. type : 'combo',
  224. value : 'auto',
  225. choices : ['auto', 'true', 'false'],
  226. description : 'Build support for EGL platform'
  227. )
  228. option(
  229. 'glvnd',
  230. type : 'boolean',
  231. value : false,
  232. description : 'Enable GLVND support.'
  233. )
  234. option(
  235. 'glx-read-only-text',
  236. type : 'boolean',
  237. value : false,
  238. description : 'Disable writable .text section on x86 (decreases performance)'
  239. )
  240. option(
  241. 'llvm',
  242. type : 'combo',
  243. value : 'auto',
  244. choices : ['auto', 'true', 'false'],
  245. description : 'Build with LLVM support.'
  246. )
  247. option(
  248. 'shared-llvm',
  249. type : 'boolean',
  250. value : true,
  251. description : 'Whether to link llvm shared or statically.'
  252. )
  253. option(
  254. 'valgrind',
  255. type : 'combo',
  256. value : 'auto',
  257. choices : ['auto', 'true', 'false'],
  258. description : 'Build with valgrind support'
  259. )
  260. option(
  261. 'libunwind',
  262. type : 'combo',
  263. value : 'auto',
  264. choices : ['auto', 'true', 'false'],
  265. description : 'Use libunwind for stack-traces'
  266. )
  267. option(
  268. 'lmsensors',
  269. type : 'combo',
  270. value : 'auto',
  271. choices : ['auto', 'true', 'false'],
  272. description : 'Enable HUD lmsensors support.'
  273. )
  274. option(
  275. 'build-tests',
  276. type : 'boolean',
  277. value : false,
  278. description : 'Build unit tests. Currently this will build *all* unit tests, which may build more than expected.'
  279. )
  280. option(
  281. 'install-intel-gpu-tests',
  282. type : 'boolean',
  283. value : false,
  284. description : 'Build and install Intel unit tests which require the GPU. This option is for developers and the Intel CI system only.'
  285. )
  286. option(
  287. 'selinux',
  288. type : 'boolean',
  289. value : false,
  290. description : 'Build an SELinux-aware Mesa'
  291. )
  292. option(
  293. 'osmesa',
  294. type : 'combo',
  295. value : 'none',
  296. choices : ['none', 'classic', 'gallium'],
  297. description : 'Build OSmesa.'
  298. )
  299. option(
  300. 'osmesa-bits',
  301. type : 'combo',
  302. value : '8',
  303. choices : ['8', '16', '32'],
  304. description : 'Number of channel bits for OSMesa.'
  305. )
  306. option(
  307. 'swr-arches',
  308. type : 'array',
  309. value : ['avx', 'avx2'],
  310. choices : ['avx', 'avx2', 'knl', 'skx'],
  311. description : 'Architectures to build SWR support for.',
  312. )
  313. option(
  314. 'tools',
  315. type : 'array',
  316. value : [],
  317. choices : ['drm-shim', 'etnaviv', 'freedreno', 'glsl', 'intel', 'intel-ui', 'nir', 'nouveau', 'xvmc', 'lima', 'all'],
  318. description : 'List of tools to build. (Note: `intel-ui` selects `intel`)',
  319. )
  320. option(
  321. 'power8',
  322. type : 'combo',
  323. value : 'auto',
  324. choices : ['auto', 'true', 'false'],
  325. description : 'Enable power8 optimizations.',
  326. )
  327. option(
  328. 'xlib-lease',
  329. type : 'combo',
  330. value : 'auto',
  331. choices : ['auto', 'true', 'false'],
  332. description : 'Enable VK_EXT_acquire_xlib_display.'
  333. )
  334. option(
  335. 'glx-direct',
  336. type : 'boolean',
  337. value : true,
  338. description : 'Enable direct rendering in GLX and EGL for DRI',
  339. )
  340. option(
  341. 'I-love-half-baked-turnips',
  342. type : 'boolean',
  343. value : false,
  344. description : 'Allow work-in-progress freedreno vulkan driver to be enabled',
  345. )
  346. option('egl-lib-suffix',
  347. type : 'string',
  348. value : '',
  349. description : 'Suffix to append to EGL library name. Default: none.'
  350. )
  351. option(
  352. 'gles-lib-suffix',
  353. type : 'string',
  354. value : '',
  355. description : 'Suffix to append to GLES library names. Default: none.'
  356. )
  357. option(
  358. 'platform-sdk-version',
  359. type : 'integer',
  360. min : 25,
  361. max : 28,
  362. value : 25,
  363. description : 'Android Platform SDK version. Default: Nougat version.'
  364. )
  365. option(
  366. 'zstd',
  367. type : 'combo',
  368. choices : ['auto', 'true', 'false'],
  369. value : 'auto',
  370. description : 'Use ZSTD instead of ZLIB in some cases.'
  371. )