# 2023 Android Open Source Project
# Copyright © 2017-2019 Intel Corporation
# SPDX-License-Identifier: MIT

option(
  'platforms',
  type : 'array',
  value : ['auto'],
  choices : [
    'auto', 'x11', 'wayland', 'haiku', 'android', 'windows',
  ],
  description : 'window systems to support. If this is set to `auto`, all ' +
                'platforms applicable will be enabled.'
)

option(
  'egl-native-platform',
  type : 'combo',
  value : 'auto',
  choices : [
    'auto', 'x11', 'wayland', 'haiku', 'android', 'windows',
    'surfaceless', 'drm',
  ],
  description : 'the window system EGL assumes for EGL_DEFAULT_DISPLAY',
)

option(
  'android-stub',
  type : 'boolean',
  value : false,
  description : 'Build against android-stub',
)

option(
  'android-libbacktrace',
  type : 'feature',
  description : 'Use Android\'s libbacktrace',
)

option(
  'dri3',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'enable support for dri3'
)

option(
  'dri-drivers-path',
  type : 'string',
  value : '',
  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(
  'expat',
  type : 'feature',
  value : 'auto',
  description : 'Controls the use of expat. ' +
                'Cannot be disabled if xmlconfig is enabled.'
)

option(
  'gallium-drivers',
  type : 'array',
  value : [],
  choices : [
    'auto', 'kmsro', 'radeonsi', 'r300', 'r600', 'nouveau', 'freedreno',
    'swrast', 'v3d', 'vc4', 'etnaviv', 'tegra', 'i915', 'svga', 'virgl',
    'panfrost', 'iris', 'lima', 'zink', 'd3d12', 'asahi', 'crocus',
  ],
  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 : 'feature',
  deprecated: {'true': 'enabled', 'false': '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-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 : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'enable gallium va frontend.',
)

option(
  'va-libs-path',
  type : 'string',
  value : '',
  description : 'path to put va libraries. defaults to $libdir/dri.'
)

option(
  'gallium-xa',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'enable gallium xa frontend.',
)

option(
  'gallium-nine',
  type : 'boolean',
  value : false,
  description : 'build gallium "nine" Direct3D 9.x frontend.',
)

option(
  'gallium-d3d10umd',
  type : 'boolean',
  value : false,
  description : 'build gallium D3D10 WDDM UMD frontend.',
)

option(
  'gallium-opencl',
  type : 'combo',
  choices : ['icd', 'standalone', 'disabled'],
  value : 'disabled',
  description : 'build gallium "clover" OpenCL frontend.',
)

option(
  'gallium-rusticl',
  type : 'boolean',
  value : false,
  description : 'build gallium "rusticl" OpenCL frontend.',
)

option(
  'gallium-windows-dll-name',
  type : 'string',
  value : 'libgallium_wgl',
  description : 'name of gallium megadriver DLL built for Windows. ' +
                'defaults to libgallium_wgl.dll to match DRI',
)

option(
  'opencl-spirv',
  type : 'boolean',
  value : false,
  description : 'build gallium "clover" OpenCL frontend with SPIR-V ' +
                'binary support.',
)

option(
  'static-libclc',
  type : 'array',
  value : [],
  choices : ['spirv', 'spirv64', 'all'],
  description : 'Link libclc SPIR-V statically.',
)

option(
  'opencl-external-clang-headers',
  type : 'feature',
  description : 'Use system Clang headers at runtime for OpenCL kernel ' +
                'compilation.',
)

option(
  'd3d-drivers-path',
  type : 'string',
  value : '',
  description : 'Location of D3D drivers. Default: $libdir/d3d',
)

option(
  'vulkan-drivers',
  type : 'array',
  value : ['gfxstream-experimental'],
  choices : ['auto', 'amd', 'broadcom', 'freedreno', 'intel', 'intel_hasvk',
             'panfrost', 'swrast', 'virtio', 'imagination-experimental',
             'microsoft-experimental', 'nouveau-experimental', 'gfxstream-experimental'],
  description : 'List of vulkan drivers to build. If this is set to auto ' +
                'all drivers applicable to the target OS/architecture ' +
                'will be built'
)

# Note that currently turnip supports msm and kgsl, while the gallium driver
# support msm and virtio.  This is a temporary situation with virtio support
# for turnip and kgsl support for gallium planned/in-progress.
option(
  'freedreno-kmds',
  type : 'array',
  value : ['msm'],
  choices : ['msm', 'kgsl', 'virtio'],
  description : 'List of kernel-mode drivers to enable for freedreno ' +
                'gallium and vulkan driver',
)

option(
  'imagination-srv',
  type : 'boolean',
  value : false,
  description : 'Enable Services backend for Imagination Technologies ' +
                'vulkan driver',
)

option(
  'shader-cache',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'Build with on-disk shader cache support.',
)

option(
  'shader-cache-default',
  type : 'boolean',
  value : true,
  description : 'If set to false, the feature is only activated when ' +
                'environment variable MESA_SHADER_CACHE_DISABLE is set ' +
                'to false',
)

option(
  'shader-cache-max-size',
  type : 'string',
  value : '',
  description : 'Default value for MESA_SHADER_CACHE_MAX_SIZE enviroment ' +
                'variable. If set, determines the maximum size of the ' +
                'on-disk cache of compiled shader programs, can be overriden ' +
                'by enviroment variable if needed. Should be set to a number ' +
                'optionally followed by ``K``, ``M``, or ``G`` to specify ' +
                'a size in kilobytes, megabytes, or gigabytes. By default, ' +
                'gigabytes will be assumed. And if unset, a maximum size of ' +
                '1GB will be used.'
)

option(
  'vulkan-icd-dir',
  type : 'string',
  value : '',
  description : 'Location relative to prefix to put vulkan icds on install. ' +
                'Default: $datadir/vulkan/icd.d'
)

option(
  'moltenvk-dir',
  type : 'string',
  value : '',
  description : 'Location of the MoltenVk SDK. Default: '
)

option(
  'vulkan-layers',
  type : 'array',
  value : [],
  choices : ['device-select', 'intel-nullhw', 'overlay'],
  description : 'List of vulkan layers to build'
)

option(
  'shared-glapi',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'Whether to build a shared or static glapi. Defaults to ' +
                'disabled on Windows, enabled elsewhere'
)

option(
  'gles1',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'Build support for OpenGL ES 1.x'
)

option(
  'gles2',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'Build support for OpenGL ES 2.x and 3.x'
)

option(
  'opengl',
  type : 'boolean',
  value : false,
  description : 'Build support for desktop OpenGL'
)

option(
  'gbm',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'Build support for gbm platform'
)

option(
  'gbm-backends-path',
  type : 'string',
  value : '',
  description : 'Locations to search for gbm backends, passed as colon ' +
                'separated list. Default: $libdir/gbm.'
)

option(
  'glx',
  type : 'combo',
  value : 'auto',
  choices : ['auto', 'disabled', 'dri', 'xlib'],
  description : 'Build support for GLX platform'
)

option(
  'egl',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'Build support for EGL platform'
)

option(
  'glvnd',
  type : 'boolean',
  value : false,
  description : 'Enable GLVND support.'
)

option(
  'microsoft-clc',
  type : 'feature',
  value : 'auto',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'Build support for the Microsoft CLC to DXIL compiler'
)

option(
  'spirv-to-dxil',
  type : 'boolean',
  value : false,
  description : 'Build support for the SPIR-V to DXIL library'
)

option(
  'glvnd-vendor-name',
  type : 'string',
  value : 'mesa',
  description : 'Vendor name string to use for glvnd libraries'
)

option(
   'glx-read-only-text',
   type : 'boolean',
   value : false,
   description : 'Disable writable .text section on x86 (decreases performance)'
)

option(
  'llvm',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'Build with LLVM support.'
)

option(
  'shared-llvm',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'Whether to link LLVM shared or statically.'
)

option(
  'draw-use-llvm',
  type : 'boolean',
  value : true,
  description : 'Whether to use LLVM for the Gallium draw module, if LLVM ' +
                'is included.'
)

option(
  'valgrind',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'Build with valgrind support'
)

option(
  'libunwind',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'Use libunwind for stack-traces'
)

option(
  'lmsensors',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'Enable HUD lmsensors support.'
)

option(
  'build-tests',
  type : 'boolean',
  value : false,
  description : 'Build unit tests. Currently this will build *all* unit ' +
                'tests except the ACO tests, which may build more than expected.'
)

option(
  'enable-glcpp-tests',
  type : 'boolean',
  value : true,
  description : 'Build glcpp unit tests. These are flaky on CI.'
)

option(
  'build-aco-tests',
  type : 'boolean',
  value : false,
  description : 'Build ACO tests. These require RADV and glslang but not ' +
                'an AMD GPU.'
)

option(
  'install-intel-gpu-tests',
  type : 'boolean',
  value : false,
  description : 'Build and install Intel unit tests which require the GPU. ' +
                'This option is for developers and the Intel CI system only.'
)

option(
  'selinux',
  type : 'boolean',
  value : false,
  description : 'Build an SELinux-aware Mesa.  This currently disables ' +
                'execmem support at runtime unless SELinux is configured ' +
                'with allow_execmem.'
)

option(
  'execmem',
  type : 'boolean',
  deprecated : true,
  description : 'Does nothing, left here for a while to avoid build breakages.',
)

option(
  'osmesa',
  type : 'boolean',
  value : false,
  description : 'Build OSmesa.'
)

option(
  'tools',
  type : 'array',
  value : [],
  choices : ['drm-shim', 'etnaviv', 'freedreno', 'glsl', 'intel', 'intel-ui',
             'nir', 'nouveau', 'lima', 'panfrost', 'asahi', 'imagination',
             'all', 'dlclose-skip'],
  description : 'List of tools to build. (Note: `intel-ui` selects `intel`)',
)

option(
  'power8',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'Enable power8 optimizations.',
)

option(
  'xlib-lease',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': '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('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 : 10000,
  value : 25,
  description : 'Android Platform SDK version. Default: Nougat version.'
)

option(
   'allow-kcmp',
   type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
   description : 'Allow using KCMP_FILE to compare file descriptions. ' +
                 'auto = allowed everywhere except on Android'
)

option(
  'zstd',
  type : 'feature',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'Use ZSTD instead of ZLIB in some cases.'
)

option(
   'zlib',
   type : 'feature',
   deprecated: {'true': 'enabled', 'false': 'disabled'},
   value : 'enabled',
   description : 'Use ZLIB to build driver. Default: enabled'
)

option(
  'sse2',
  type : 'boolean',
  value : true,
  description : 'use msse2 flag for x86. Uses sse/sse2 instead of x87. Default: true',
)

option(
  'perfetto',
  type : 'boolean',
  value : false,
  description : 'Enable performance analysis with Perfetto. Default: false'
)

option(
  'datasources',
  type : 'array',
  value : ['auto'],
  choices : ['auto', 'panfrost', 'intel', 'freedreno'],
  description : 'List of Perfetto datasources to build. If this is set to ' +
                '`auto`, datasources that can not be build are skipped. ' +
                'Default: [`auto`]'
)

option(
  'gpuvis',
  type : 'boolean',
  value : false,
  description : 'Enable tracing markers for gpuvis. Default: false'
)

option(
  'custom-shader-replacement',
  type : 'string',
  value : '',
  description : 'Enable a custom shader replacement mechanism. Note that ' +
                'enabling this option requires adding/generating a ' +
                'shader_replacement.h file that can be included (see ' +
                'shaderapi.c).'
)

option(
  'vmware-mks-stats',
  type : 'boolean',
  value : false,
  description : 'Build gallium VMware/svga driver with mksGuestStats ' +
                'instrumentation.'
)

option(
  'vulkan-beta',
  type : 'boolean',
  value : false,
  description : 'Build vulkan drivers with BETA extensions enabled.'
)

option(
  'intel-clc',
  type : 'combo',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  value : 'disabled',
  choices : [
    'enabled', 'disabled', 'system',
  ],
  description : 'Build the intel-clc compiler (enables Vulkan Intel ' +
                'Ray Tracing on supported hardware).'
)

option(
  'video-codecs',
  type : 'array',
  value : [],
  choices: [
    'vc1dec', 'h264dec', 'h264enc', 'h265dec', 'h265enc'
  ],
  description : 'List of patent encumbered codecs to build support for. ' +
                'Distros might want to consult their legal department before ' +
                'enabling these. This is used for all video APIs (vaapi, ' +
                'vdpau, vulkan). Non-patent encumbered codecs will be ' +
                'enabled by default.'
)

option(
  'gallium-d3d12-video',
  type : 'feature',
  value : 'auto',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'build gallium d3d12 with video support.',
)

option(
  'radv-build-id',
  type : 'string',
  value : '',
  description : 'Override build id for shader cache keys (hex string). ' +
                'Can be extracted with readelf -x .note.gnu.build-id'
)

option(
  'min-windows-version',
  type : 'integer',
  min : 7,
  max : 11,
  value : 8,
  description : 'Minimum Windows version to support. Defaults to Windows 8.'
)

option(
  'xmlconfig',
  type : 'feature',
  value : 'auto',
  deprecated: {'true': 'enabled', 'false': 'disabled'},
  description : 'Build custom xmlconfig (driconf) support. If disabled, ' +
                'the default driconf file is hardcoded into Mesa. ' +
                'Requires expat.'
)

option (
  'intel-xe-kmd',
  type : 'feature',
  value : 'disabled',
  description: 'Enable Intel Xe KMD support.'
)

option(
  'nvk-legacy-uapi',
  type : 'boolean',
  value : 'false',
  description : 'Build support for legacy kernel uAPI.'
)

option(
  'vk-no-nir',
  type : 'boolean',
  value : 'true',
  description : 'Try to build Mesa Vulkan runtime without NIR'
)

option(
  'decoders',
  type : 'array',
  value : ['auto'],
  choices : [
    'gles',
    'vulkan',
    'magma',
    'composer',
    'auto',
  ],
  description : 'A list of supported decoders to build'
)
option(
  'log-level',
  type : 'combo',
  value : 'error',
  choices : [
    'none',
    'info',
    'warn',
    'error',
  ],
  description : 'The logging level of gfxstream'
)
option('qnx_target', type : 'string', value : '', description : 'QNX SDP target path')
option(
  'gfxstream-build',
  type : 'combo',
  value : 'host',
  choices : [
    'both',
    'guest',
    'host',
    'guest-test',
  ],
  description : 'Which portions of gfxstream to build'
)
