X-Git-Url: https://git.libre-soc.org/?p=mesa.git;a=blobdiff_plain;f=meson_options.txt;h=913dd4974497073a28e3e6381acefe21bb798a10;hp=44d46fe0b3249c1f00dbe879f19c15ca8f87e39a;hb=6456f71f765ce5139970445ae71172462c268a33;hpb=48f64e591f31b1e0114b64a470144059bdb09ac3 diff --git a/meson_options.txt b/meson_options.txt index 44d46fe0b32..913dd497449 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -1,4 +1,4 @@ -# Copyright © 2017 Intel Corporation +# Copyright © 2017-2019 Intel Corporation # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -20,51 +20,153 @@ option( 'platforms', - type : 'string', - value : 'auto', - description : 'comma separated list of window systems to support. If this is set to auto all platforms applicable to the OS will be enabled.' + type : 'array', + value : ['auto'], + choices : [ + 'auto', 'x11', 'wayland', 'drm', 'surfaceless', 'haiku', 'android', + 'windows', + ], + description : 'window systems to support. If this is set to `auto`, all platforms applicable will be enabled.' ) option( 'dri3', type : 'combo', value : 'auto', - choices : ['auto', 'true', 'false'], + choices : ['auto', 'true', 'false', 'disabled', 'enabled'], description : 'enable support for dri3' ) option( 'dri-drivers', - type : 'string', - value : 'auto', - description : 'comma separated list of dri drivers to build. If this is set to auto all drivers applicable to the target OS/architecture will be built' + type : 'array', + value : ['auto'], + choices : ['auto', 'i915', 'i965', 'r100', 'r200', 'nouveau', 'swrast'], + description : 'List of dri drivers to build. If this is set to auto all drivers applicable to the target OS/architecture will be built' ) option( 'dri-drivers-path', type : 'string', value : '', - description : 'Location of dri drivers. Default: $libdir/dri.' + description : 'Location to install dri drivers. Default: $libdir/dri.' +) +option( + 'dri-search-path', + type : 'string', + value : '', + description : 'Locations to search for dri drivers, passed as colon separated list. Default: dri-drivers-path.' ) option( 'gallium-drivers', + type : 'array', + value : ['auto'], + choices : [ + 'auto', 'kmsro', 'radeonsi', 'r300', 'r600', 'nouveau', 'freedreno', + 'swrast', 'v3d', 'vc4', 'etnaviv', 'tegra', 'i915', 'svga', 'virgl', + 'swr', 'panfrost', 'iris', 'lima', 'zink' + ], + description : 'List of gallium drivers to build. If this is set to auto all drivers applicable to the target OS/architecture will be built' +) +option( + 'gallium-extra-hud', + type : 'boolean', + value : false, + description : 'Enable HUD block/NIC I/O HUD status support', +) +option( + 'gallium-vdpau', + type : 'combo', + value : 'auto', + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], + description : 'enable gallium vdpau frontend.', +) +option( + 'vdpau-libs-path', type : 'string', + value : '', + description : 'path to put vdpau libraries. defaults to $libdir/vdpau.' +) +option( + 'gallium-xvmc', + type : 'combo', value : 'auto', - description : 'comma separated list of gallium drivers to build. If this is set to auto all drivers applicable to the target OS/architecture will be built' + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], + description : 'enable gallium xvmc frontend.', ) option( - 'gallium-media', + 'xvmc-libs-path', type : 'string', value : '', - description : 'comma separated list of gallium media APIs to build (omx,va,vdpau,xvmc).' + description : 'path to put xvmc libraries. defaults to $libdir.' ) option( - 'vulkan-drivers', + 'gallium-omx', + type : 'combo', + value : 'auto', + choices : ['auto', 'disabled', 'bellagio', 'tizonia'], + description : 'enable gallium omx frontend.', +) +option( + 'omx-libs-path', type : 'string', + value : '', + description : 'path to put omx libraries. defaults to omx-bellagio pkg-config pluginsdir.' +) +option( + 'gallium-va', + type : 'combo', value : 'auto', - description : 'comma separated list of vulkan drivers to build. If this is set to auto all drivers applicable to the target OS/architecture will be built' + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], + description : 'enable gallium va frontend.', ) option( - 'shader-cache', + 'va-libs-path', + type : 'string', + value : '', + description : 'path to put va libraries. defaults to $libdir/dri.' +) +option( + 'gallium-xa', + type : 'combo', + value : 'auto', + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], + description : 'enable gallium xa frontend.', +) +option( + 'gallium-nine', type : 'boolean', - value : true, + value : false, + description : 'build gallium "nine" Direct3D 9.x frontend.', +) +option( + 'gallium-opencl', + type : 'combo', + choices : ['icd', 'standalone', 'disabled'], + value : 'disabled', + description : 'build gallium "clover" OpenCL frontend.', +) +option( + 'opencl-spirv', + type : 'boolean', + value : false, + description : 'build gallium "clover" OpenCL frontend with SPIR-V binary support.', +) +option( + 'd3d-drivers-path', + type : 'string', + value : '', + description : 'Location of D3D drivers. Default: $libdir/d3d', +) +option( + 'vulkan-drivers', + type : 'array', + value : ['auto'], + choices : ['auto', 'amd', 'freedreno', 'intel'], + description : 'List of vulkan drivers to build. If this is set to auto all drivers applicable to the target OS/architecture will be built' +) +option( + 'shader-cache', + type : 'combo', + value : 'auto', + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], description : 'Build with on-disk shader cache support' ) option( @@ -74,21 +176,36 @@ option( description : 'Location relative to prefix to put vulkan icds on install. Default: $datadir/vulkan/icd.d' ) option( - 'shared-glapi', + 'vulkan-overlay-layer', type : 'boolean', - value : true, - description : 'Whether to build a shared or static glapi' + value : false, + description : 'Whether to build the vulkan overlay layer' ) option( - 'gles1', + 'vulkan-device-select-layer', type : 'boolean', - value : true, + value : false, + description : 'Whether to build the vulkan device select layer' +) +option( + 'shared-glapi', + type : 'combo', + value : 'auto', + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], + description : 'Whether to build a shared or static glapi. Defaults to false on Windows, true elsewhere' +) +option( + 'gles1', + type : 'combo', + value : 'auto', + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], description : 'Build support for OpenGL ES 1.x' ) option( 'gles2', - type : 'boolean', - value : true, + type : 'combo', + value : 'auto', + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], description : 'Build support for OpenGL ES 2.x and 3.x' ) option( @@ -101,7 +218,7 @@ option( 'gbm', type : 'combo', value : 'auto', - choices : ['auto', 'true', 'false'], + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], description : 'Build support for gbm platform' ) option( @@ -115,7 +232,7 @@ option( 'egl', type : 'combo', value : 'auto', - choices : ['auto', 'true', 'false'], + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], description : 'Build support for EGL platform' ) option( @@ -125,32 +242,46 @@ option( description : 'Enable GLVND support.' ) option( - 'asm', - type : 'boolean', - value : true, - description : 'Build assembly code if possible' + 'glx-read-only-text', + type : 'boolean', + value : false, + description : 'Disable writable .text section on x86 (decreases performance)' ) option( 'llvm', type : 'combo', value : 'auto', - choices : ['auto', 'true', 'false'], + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], description : 'Build with LLVM support.' ) +option( + 'shared-llvm', + type : 'combo', + value : 'auto', + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], + description : 'Whether to link LLVM shared or statically.' +) option( 'valgrind', type : 'combo', value : 'auto', - choices : ['auto', 'true', 'false'], + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], description : 'Build with valgrind support' ) option( 'libunwind', type : 'combo', value : 'auto', - choices : ['auto', 'true', 'false'], + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], description : 'Use libunwind for stack-traces' ) +option( + 'lmsensors', + type : 'combo', + value : 'auto', + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], + description : 'Enable HUD lmsensors support.' +) option( 'build-tests', type : 'boolean', @@ -158,10 +289,10 @@ option( description : 'Build unit tests. Currently this will build *all* unit tests, which may build more than expected.' ) option( - 'texture-float', + 'install-intel-gpu-tests', type : 'boolean', value : false, - description : 'Enable floating point textures and renderbuffers. This option may be patent encumbered, please read docs/patents.txt and consult with your lawyer before turning this on.' + description : 'Build and install Intel unit tests which require the GPU. This option is for developers and the Intel CI system only.' ) option( 'selinux', @@ -183,3 +314,76 @@ option( choices : ['8', '16', '32'], description : 'Number of channel bits for OSMesa.' ) +option( + 'swr-arches', + type : 'array', + value : ['avx', 'avx2'], + choices : ['avx', 'avx2', 'knl', 'skx'], + description : 'Architectures to build SWR support for.', +) +option( + 'shared-swr', + type : 'boolean', + value : true, + description : 'Whether to link SWR shared or statically.', +) + +option( + 'tools', + type : 'array', + value : [], + choices : ['drm-shim', 'etnaviv', 'freedreno', 'glsl', 'intel', 'intel-ui', 'nir', 'nouveau', 'xvmc', 'lima', 'panfrost', 'all'], + description : 'List of tools to build. (Note: `intel-ui` selects `intel`)', +) +option( + 'power8', + type : 'combo', + value : 'auto', + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], + description : 'Enable power8 optimizations.', +) +option( + 'xlib-lease', + type : 'combo', + value : 'auto', + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], + description : 'Enable VK_EXT_acquire_xlib_display.' +) +option( + 'glx-direct', + type : 'boolean', + value : true, + description : 'Enable direct rendering in GLX and EGL for DRI', +) +option( + 'prefer-iris', + type : 'boolean', + value : true, + description : 'Prefer new Intel iris driver over older i965 driver' +) +option('egl-lib-suffix', + type : 'string', + value : '', + description : 'Suffix to append to EGL library name. Default: none.' +) +option( + 'gles-lib-suffix', + type : 'string', + value : '', + description : 'Suffix to append to GLES library names. Default: none.' +) +option( + 'platform-sdk-version', + type : 'integer', + min : 25, + max : 28, + value : 25, + description : 'Android Platform SDK version. Default: Nougat version.' +) +option( + 'zstd', + type : 'combo', + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], + value : 'auto', + description : 'Use ZSTD instead of ZLIB in some cases.' +)